1

是否可以找到以特定字符串命名的对象。

例如我可以在 php 中使用它

$objectname="foo";
$foo="bar";
echo $$objectname="bar";

这可能吗?objectbyname 将为此提供适当的功能。

4

3 回答 3

4

如果您将命名对象存储为属性或某种字典,这可能是可能的。然后你可以做这样的事情:

// Put object into dictionary
[dictionaryWithObjects setValue:someNamedObject forKey:@"someNamedObject"];

// and then retrieve it
id object = [dictionaryWithObjects valueForKey:@"someNamedObject"];

而且我不确定ObjectiveC 是否支持这种级别的元编程。

于 2010-06-04T09:07:48.293 回答
2

它看起来不像在 PHP 中那样,但是,是的,可以从字符串中获取一个类。您使用该NSClassFromString功能。

例如以下两行是等价的:

id a = [[NSClassFromString(@"NSString") alloc] init];
id a = [[NSString alloc] init];
于 2010-06-04T09:11:19.153 回答
0

您可以使用NSClassFromString()来获取类,但对于对象的特定实例,我认为这是不可能的。

于 2010-06-04T09:07:41.480 回答