class の構造体は( class のスコープ内で使用できる)タイプA
を定義しますが、構造体のメンバー関数を呼び出すにはそのインスタンスが必要です。例えば:A
class A {
struct StructOfClassA {
func returnLetterA() -> String{
return "a"
}
}
var structOfClassA = StructOfClassA()
/* Instance of 'StructOfClassA' structure type */
}
class B {
let classA = A()
init() {
let myLetter = classA.structOfClassA.returnLetterA()
print(myLetter)
}
}
var myB = B() // prints "a"
または、B
のサブクラスにすることもできます。これにより、スーパークラスから型A
にアクセスできます。この場合、 のインスタンスを作成してそのメソッドにアクセスできます。 StructOfClassA
StructOfClassA
returnLetterA()
class A {
class StructOfClassA {
func returnLetterA() -> String{
return "a"
}
}
}
class B : A {
let classA = A()
override init() {
let myLetter = StructOfClassA().returnLetterA()
print(myLetter)
}
}
var myB = B() // prints "a"