【发布时间】:2016-08-17 20:35:03
【问题描述】:
所以我有一个名为Account 的NSObject,其中包含一些变量。我在类中添加了 getter 和 setter 方法,但是当我尝试设置值并调用 get 它们时,我得到了 nil。
import UIKit
class Account: NSObject {
var firstName: String = ""
var lastName: String = ""
//setters
func setNameFirst(newName: String){
firstName = newName
}
func setNameLast(newName: String){
lastName = newName
}
//getters
func getFirstName() -> String{
return firstName
}
func getLastName() -> String{
return lastName
}
}
在另一个视图控制器中,我尝试设置并打印其中一个变量。
import UIKit
var test: Account?
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
test?.setNameFirst("John")
print(test?.getFirstName())
}
}
但我在打印时得到nil。
【问题讨论】:
-
您从未创建过
Account对象。你需要在某个时候做test = Account()。 -
您不应该手动添加 setter 和 getter。您可以通过
test?.firstName = "John"和print(test.firstName)获取/设置属性。