NSMutableString作为var名称?

时间:2013-06-22 10:09:07

标签: iphone ios objective-c string

说我有这段代码

NSMutableString *object;
[object setString:@"myVar"];

稍后如何将对象用作var名称?

...即

[object.string someMethod];

其中someMethod在myVar对象上调用(对象的字符串文本)

这可能吗?

2 个答案:

答案 0 :(得分:5)

Cocoa允许您使用Key-Value Coding访问属性和字段。如果NSString(可变或不可变)具有属性的名称,则可以使用该字符串从对象中检索相应属性的值:

MyObject *myObj = ...
NSMutableString *varName;
[varName setString:@"myVar"];
[myObj valueForKey:varName];

答案 1 :(得分:1)

你的问题不明确。可能你正在寻找NSClassFromString方法。

如果someMethod是类方法,那么您可以使用:

[NSClassFromString(object) performSelector:@selector(someMethod)];