A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wlh0803 中级黑马   /  2015-9-21 18:25  /  665 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

作用

NSValue可以对结构体进行封装,NSValue是NSNumber的父类
NSRange rang = {10,20};
//封包
NSValue *rangValue = [NSValue valueWithRange:rang];
NSRange rang2 = [rangValue rangeValue];
NSLog(@"(%ld,%ld)",rang2.location,rang2.length);

对自定义的结构体封包
struct WXPoint
{
float x;
float y;
};

struct WXPoint p = {50,100};

NSValue *pointValue = [NSValue value:&p withObjcType:@encode(struct WXPoint)];
对自定义的结构体解包
struct WXPoint p2;
[pointValue getValue:&p2];
NSLog(@"p2.x=%f,p2.y=%f",p2.x,p2.y);

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马