当我在运行时只知道类名时,如何获取类对象

发布于 2024-07-17 19:05:07 字数 181 浏览 6 评论 0原文

我需要从字符串中获取类对象,其中包含运行时类的名称。 我找到了一个名为 objc_getClass 的函数,但我不确定它是否真的是我要搜索的。

我可以这样实现吗? NSString *name = @"AnyClass"; 类 *myClass = objc_getClass([名称 UTF8String]);

I need to get the class object out of a string, containing the name of the class at runtime. I found a function called objc_getClass, but I'm not sure if it's really what I search.

Can I implement it like this?
NSString *name = @"AnyClass";
Class *myClass = objc_getClass([name UTF8String]);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

停顿的约定 2024-07-24 19:05:07

我相信您正在寻找的功能是:

NSClassFromString(@"AnyClass");

它可以让您执行以下操作:

id obj = [[NSClassFromString(@"AnyClass") alloc] init];

I believe the function you're looking for is:

NSClassFromString(@"AnyClass");

which lets you do:

id obj = [[NSClassFromString(@"AnyClass") alloc] init];
呆° 2024-07-24 19:05:07

我自己找到了答案 ^^NSClassFromString 是我的朋友:)

I found the answer myself ^^NSClassFromString is my friend :)

会傲 2024-07-24 19:05:07

您确定您的意思不是:

AnyClass *myClassInstance = [[AnyClass alloc] init];

或者这个类已经被实例化并且您需要一个指向它的指针? 您可能需要提供更多详细信息。

Are you sure you don't mean:

AnyClass *myClassInstance = [[AnyClass alloc] init];

Or has this class been instantiated and you need a pointer to it? You might need to give more details.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文