是否可以从另一个类访问结构?
ex:
class A{
struct structOfClassA {
func returnLetterA () -> String{
return "a"
}
}
}
class B{
let classA = A()
init(){
classA.structOfClassA.returnLetterA // this is what I want to achieve
}
}
如何从 Class B() 中的 Class A() 访问结构体?
有解决方法吗?
谢谢你!
班级结构A
定义了一个type(可以在类范围内使用A
),但你需要一个instance它能够调用结构体的成员函数。例如。:
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
,这使您可以访问type StructOfClassA
来自超类,在这种情况下您可以创建一个instance of 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"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)