Objective-C 成员变量的访问修饰即成员变量可见性解析
2024-09-21 12:54:32
总体来说Objective-C的访问成员变量可见性和C++基本一样,只是多了个@package. 以下是详细说明:
例子:
@interface CTPerson : NSObject
{
@private
int _age;
@protected
NSString *_name;
@public
double _height;
@package
double _weight;
}
@private:私有的,只有在本类的对象方法中可以直接访问它
@protected:受保护的:只能在本类和子类中可以直接访问,不能在外部访问
@public:公共的,在本类,子类,外部都可以访问
@package: 主要用在框架内部,在框架内部相当于@protected,在框架外部相当于@private
补充说明: 在实现文件里面也可以定义成员变量,但是这个成员变量是私有的,无论使用什么样的可见性修饰符,修饰它,它都是私有的
例子:
@implementation CTPerson
{
@public
int _sex; //该成员变量也会被当成私有的
}
最新文章
- redis 的理解
- 旋转V字俄罗斯方块
- 百度地图刷新显示不完整?(应该是和div顺序有关系)
- 函数改变全局变量-JS
- 《zw版·Halcon-delphi系列原创教程》 2d照片-3d逆向建模脚本
- MVC学习系列——记一次失败面试后,感想。
- 数据结构(树链剖分,堆):HNOI 2016 network
- Service、Alarm与BroadcastReceiver的使用方法
- FFmpeg源码结构图 - 解码
- Codeforces 451E Devu and Flowers(容斥原理)
- leetcode算法题(JavaScript实现)
- 使用yeoman构建angular应用
- Defraggler磁盘碎片整理工具,让你的电脑读写速度更快
- IE浏览器支持响应式网站设计
- MYSQL添加远程用户或允许远程访问
- docker+elasticsearch的安装
- Spark项目之电商用户行为分析大数据平台之(九)表的设计
- BZOJ 3625: [Codeforces Round #250]小朋友和二叉树
- 《构建之法》阅读笔记06-项目经理PM
- 转载:pyqt线程间通过 信号/槽 通信