ios – Swift类“MyClass”没有名为“My_Var”的成员[复制]
2019年12月18日
作者:佚名
参见英文答案 >
How to initialize properties that depend on each other4个
我在Swift中创建了一个类,如下所示,但它给出了错误:
我在Swift中创建了一个类,如下所示,但它给出了错误:
‘ApiUrls.Type’ does not have a member named ‘webUrl’
这是我的代码:
import UIKit class ApiUrls { let webUrl:NSString = "192.168.0.106:8888" var getKey:NSString = webUrl + NSString("dev/sys/getkey") // here comes the error ApiUrls.Type' does not have a member named 'webUrl }
这有什么不对?
解决方法
您无法使用另一个属性的值初始化实例属性,因为在初始化所有实例属性之前,self不可用.
即使在初始化程序中移动属性初始化也不起作用,因为getKey依赖于webUrl,因此在初始化之前无法初始化getKey.
我看到webUrl是一个常量,所以也许让它成为一个静态属性是个好主意 – 类到目前为止还不支持静态,所以最好的方法是使用私有结构:
class ApiUrls { private struct Static { static let webUrl: String = "192.168.0.106:8888" } var getKey: String = Static.webUrl + "dev/sys/getkey" }
另外,除非你有充分的理由,否则最好使用swift字符串而不是NSString.
以上是来客网为你收集整理的ios – Swift类“MyClass”没有名为“My_Var”的成员[复制]全部内容,希望文章能够帮你解决ios – Swift类“MyClass”没有名为“My_Var”的成员[复制]所遇到的程序开发问题。
如果觉得来客网网站内容还不错,欢迎将来客网网站推荐给程序员好友。