5
根据Apple文档initialize()
方法在接收到第一条消息之前初始化该类。NSObject的initialize()在Release版本配置中未调用
有人可以解释为什么initialize()在Release build配置中不起作用吗?
例如:
class Test: NSObject {
override class func initialize() {
print("initialize")
}
class func test() {
print("test")
}
}
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
Test.test()
}
}
输出的调试配置:在发布配置
initialize
test
输出:
test
感谢您的回答。创建bug报告https://openradar.appspot.com/29389821 –
具体的设置似乎是Swift编译器 - 代码生成/优化级别。 '无[-Onone]与'快速单文件优化[-O]' – DDP