结构体和类的区别
1、结构体只能封装属性,类却不仅可以封装属性也可以封装方法。
2、结构体变量分配在栈,而OC对象分配在堆。栈的空间相对于堆来说是比较小的,但是存储在栈中的数据访问效率相对于堆而言是比较高。
3、堆的存储空间比较大,存储在堆中的数据访问效率相对于栈而言是比较低的。
4、如果定义一个结构体,这个结构体中有很多属性,那么这个时候结构体变量在栈中会占据很多空间,这样的话就会降低效率。
5、我们使用结构体的时候最好是属性比较少的结构体对象如果属性较多的话就要使用类了。
6、结构体赋值的话是直接赋值,而OC对象赋值的是对象的地址。
自定义结构体
在外边调用的时候就可以传入一个结构体进来
[_redView setFrameWithLKSize:LKSizeMake(100, 150, 200, 200)];
网友评论