Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何按顺序获取对象中的成员类型?_Objective C_Xcode_Reflection - Fatal编程技术网

Objective c 如何按顺序获取对象中的成员类型?

Objective c 如何按顺序获取对象中的成员类型?,objective-c,xcode,reflection,Objective C,Xcode,Reflection,可能重复: 我正在寻找一种方法,以获取对象头中声明的顺序中的对象成员类型名称 比如,如果我得到一个像这样的物体 @interface Person : NSObject { int age; NSString *name; PersonDetail *detail; } 当我在数组中得到像{28、@“Jack”、{“basketball”、@“Male”、@“Master Degree”}这样的数据时。 我需要填写数据的成员类型 就像在java中,有一个像getField()这样

可能重复:

我正在寻找一种方法,以获取对象头中声明的顺序中的对象成员类型名称

比如,如果我得到一个像这样的物体

@interface Person : NSObject {
  int age;
  NSString *name;
  PersonDetail *detail;
}
当我在数组中得到像
{28、@“Jack”、{“basketball”、@“Male”、@“Master Degree”}
这样的数据时。 我需要填写数据的成员类型

就像在java中,有一个像getField()这样的函数来按顺序获取成员

有什么方法可以用吗


谢谢。

请看一下。它包括用于获取类的ivar列表(
class\u copyIvarList()
)或获取对象实际ivar(
object\u getIndexedIvars()
)等操作的函数。它应该能够执行您想要的操作。

您可以按如下方式检查上述对象的类型:

   if( [person isKindOfClass:[Person class]])
    {
       //add your logic here
    }

你所说的成员类型是什么意思?他们像“int”、“NSString”和“PersonDetail”这样的东西。非常感谢!这正是我需要的。