我想在C++应用程序(运行在Linux机器上)和iPhone应用程序之间发送序列化对象。这可能吗?在C++中编码/解码NSCoder数据
有没有办法在C++端使用NSCoding协议来编码/解码数据?有人反向设计这个协议?
我想在C++应用程序(运行在Linux机器上)和iPhone应用程序之间发送序列化对象。这可能吗?在C++中编码/解码NSCoder数据
有没有办法在C++端使用NSCoding协议来编码/解码数据?有人反向设计这个协议?
我不是专家,但它似乎最好的选择是使用属性列表,它允许您将对象序列化为独立于设备的格式。但是,您仍然需要在C++端编写一些自定义的反序列化代码。但是这似乎比试图解码归档对象更容易。
我找不到任何方法来解码在C++中已被使用NSCoder协议序列化对象。
我最终构建了一个双方的JSON接口,并简单地将我的对象作为序列化文本来回发送。
感谢您的回应和想法!
NSCoding只是一个Objective-C协议。你的意思是NSKeyedArchiver和NSKeyedUnarchiver?不确定,但我认为这些包含在GNUstep中,您可以使用Objective-C++(类似于Objective-C的C++超集)。 – 2011-09-06 21:34:57
另外,使用NSKeyedArchiver存档的文件只是二进制属性列表。您可以使用Property List Editor或Xcode检查它们。 – 2011-09-06 21:36:31
是的,我想要的是NSKeyedArchiver/NSKeyedUnarchiver的C++等价物。这是否存在? – jonas