黑马程序员技术交流社区
标题:
NSValue可以包装结构体 char *type = @encode(Date);是什么意思?
[打印本页]
作者:
小白一号
时间:
2015-3-29 09:44
标题:
NSValue可以包装结构体 char *type = @encode(Date);是什么意思?
typedef struct {
int year;
int month;
int day;
} Date;
void value2() {
Date date = {2013, 4, 7};
// void *代表任何指针
// 这里要传结构体的地址&date
// 根据结构体类型生成 对应的 类型描述字符串
char *type = @encode(Date);
NSValue *value = [NSValue value:&date withObjCType:type];
// 定义一个结构体变量
Date date1;
// 取出包装好的结构体
[value getValue:&date1];
// [value objCType]; 取出类型描述字符串
NSLog(@"year=%i, month=%i, day=%i", date1.year, date1.month, date1.day);
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2