我注意到在给定的点上,当我想在其他类中使用类 User 时找不到它。没什么可怀疑的。在给定的点上,我开始尝试将代码放在什么位置。
如果我将所有这些类放在我的一个旧文件中,所有这些都可以编译。如果我将它们全部放在一个较新的文件中,则使用这些类的代码的其他部分不会编译。如果我重命名一个文件(例如从 User.swift 到 AUser.Swift)没有任何变化,这意味着编译的内容会继续编译,而未编译的内容仍然不会根据名称进行编译。它似乎真的是文件的年龄或类似的东西。
似乎我稍后添加的与该特定类集群相关的所有内容都不会在较新的文件中编译。这些文件在构建时包含在内,我检查过。我认为代码没有什么奇怪的:
import UIKit
public class User: AddressBookContact {
var home: Home?
var friends = [Friend]()
}
public class Friend: AddressBookContact {
}
class Session: NSObject {
private static let instance = Session()
override private init() {
super.init()
}
class func sharedInstance() -> Session {
return instance
}
static var loggedInUser: User?
}