-2

说我有这个代码

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

以后如何使用 object 作为 var 名称?

IE...

[object.string someMethod];

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

这可能吗?

4

2 回答 2

5

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

MyObject *myObj = ...
NSMutableString *varName;
[varName setString:@"myVar"];
[myObj valueForKey:varName];
于 2013-06-22T10:20:49.543 回答
1

你的问题不清楚。可能您正在寻找NSClassFromString方法。

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

[NSClassFromString(object) performSelector:@selector(someMethod)];
于 2013-06-22T10:14:44.883 回答