嘿我有一个非常简单的问题需要更多的解释而不是调试,但我在许多类对象的接口定义中看到了关键字“@package”,“@ private”,“@ public”,然后甚至更奇怪“struct {...}”。我已经能够在不使用上述任何内容的情况下制作完整的程序,所以我希望有人可以向我解释这些关键词的重要性。
由于
修改
等等,我现在明白每个声明的重复,但为什么你需要使用它们?你能澄清一下“struct {...}”的含义以及我如何使用它吗?再次感谢:D
答案 0 :(得分:6)
关于套餐,您的问题在此详细解答:What does the @package directive do in Objective-C?
struct是一种C构造,允许您以单一名称访问多种数据类型。
@private仅限于对此类使用的变量的访问
@protected将对变量的访问权限仅限于此类并继承类(Obj-C类中的默认值)
@package限制对框架使用的变量的访问
@public允许每个人访问此变量
编辑:
struct person { /* declares struct person */
int age;
float weight;
char name[25];
} adam;
struct person joe;
joe.age = 23; /* add values */
joe.weight = 147.8;
关于限制,其良好的OO做法限制对变量的访问,称为封装http://en.wikipedia.org/wiki/Encapsulation_%28object-oriented_programming%29