構造体型を受け入れ、その関数内に作成したStructのインスタンスを返す関数を作成します。例えば構造体を関数に渡し、関数内にその構造体のインスタンスを作成します。
:
struct Person {
var name: String
func greet() {
print("Hi person \(self.name)")
}
}
struct Animal {
var name: String
func greet() {
print("Hi animal \(self.name)")
}
}
// T is the stuct type, so I can pass either Person or Animal.
// name is the name string.
func greet<T>(_ a: T, name: String) {
let thingToGreet: a = a(name: name)
thingToGreet.greet()
}
// Pass the struct type and a string.
greet(Person, name: "Johny")
これはさえ可能ですか? アプリケーションでは、URL、構造型を受け入れ、完了したらデータタスク要求に基づいて作成された構造体を返す関数を作成したいと考えています。
を呼び出すこと... 'A'とどのような彼の 'T'何ですか? –