@encode
有相反的运算符吗?
例如,当您这样做时:@encode(int)
,您会得到"i"
。我希望能够这样做:@decode("i") myInt = 5;
这可能吗?是否存在处理此问题的运算符(operator)?
最佳答案
没有。 @encode
采用一个类型,而在 C 中,不可能返回一个类型。 (typeof()
运算符是 GNU 扩展,但它不采用 C 字符串,因此您想要的是不可能的。
您有两个选择。一:重新设计你的代码。如果您需要这个,您可能遇到了设计问题。
第二,使用动态内存分配并编写您自己的函数,该函数采用字符串类型并相应地分配内存。
关于objective-c - 与@encode相反,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13903391/