[英]How do I save a custom c++ class object to NSUserDefaults?
I want to add a C++ Class object into NSUserDefaults
. 我想将C ++类对象添加到NSUserDefaults
。 If I add it directly, it crashes. 如果我直接添加它,它会崩溃。 How do I add c++ Class object to NSUserDefaults? 如何将c ++类对象添加到NSUserDefaults?
NSUserDefaults
supports some NSObject
-based classes to be encoded out of the box. NSUserDefaults
支持一些基于NSObject
的类,可以直接进行编码。 Proper way to save custom NSObject
classes into NSUserDefaults
instance is to encode them into NSData
and save it. 将自定义NSObject
类保存到NSUserDefaults
实例的正确方法是将它们编码为NSData
并保存。
In your case, since you have a C++ class, you could either wrap it's data to an NSObject
( NSDictionary
maybe) or implement a class <-> string serialisation and deserialisation, saving a string object into the NSUserDefaults
instance. 在您的情况下,由于您具有C ++类,因此可以将其数据包装到NSObject
(可能是NSDictionary
),也可以实现类<->字符串序列化和反序列化,将字符串对象保存到NSUserDefaults
实例中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.