我正在使用 iPhone SDK,并且对 Objective-c 很陌生。现在我正在使用 NSUserDefaults 来保存和恢复我的 iPhone 应用程序上的设置。为了保存已经创建的类,我将它们编码成字典形式,然后保存 NSdictionary。
我的问题是我找不到一种合理的方法来以合理的方式在字典中存储非值(即为 nil 的类变量)。更具体地说,假设我有一个“狗”类,它有 NSString *tail-color。假设我正在尝试保存没有尾巴的狗的类实例,因此该实例的尾巴颜色为零。将狗保存为字典的合理方法是什么?它不会让我将 nil 保存到 NSdictionary 中。@"" 不好,因为如果我这样做 if(@""),@"" 是真的。我希望它像零一样是错误的。
我希望我的问题是有道理的,并感谢您的帮助!