来自String的NSObject ......有什么办法吗?

时间:2010-01-22 02:01:08

标签: objective-c string object runtime

所以Objective-C有这些很好的函数NSClassFromString()NSProtocolFromString(),它们从传递的字符串名称返回一个类或协议。有没有办法用对象做到这一点?

3 个答案:

答案 0 :(得分:5)

不,因为对象没有规范名称或字符串表示。对于一个类,有一个叫做“NSWindow”的类,或者没有。对于对象,这种对应并不真正适用。如果您要序列化某个对象,请查看NSCoding protocol并随附documentation

答案 1 :(得分:0)

我能想到的最接近的是-description,但我怀疑你对所有成员的反省要比基本描述更多。如果你是,那么你将使用Chuck's answer,因为你需要序列化/反序列化。

答案 2 :(得分:0)

如果要实例化对象,也可以执行此操作

Class class = NSClassFromString(className);
id object = [class new];