嘿,我有一个非常简单的问题,需要更多的解释而不是调试,但我在许多类对象的接口定义中看到了关键字“@package”、“@private”、“@public”,甚至更奇怪的“结构{...}”。我已经能够在不使用上述任何内容的情况下制作完整的程序,所以我希望有人可以向我解释这些关键字的意义。
谢谢
编辑:
等等,我现在明白每个声明的限制,但你为什么需要使用它们?你能澄清一下“struct {...}”的含义以及我如何使用它吗?再次感谢 :D
嘿,我有一个非常简单的问题,需要更多的解释而不是调试,但我在许多类对象的接口定义中看到了关键字“@package”、“@private”、“@public”,甚至更奇怪的“结构{...}”。我已经能够在不使用上述任何内容的情况下制作完整的程序,所以我希望有人可以向我解释这些关键字的意义。
谢谢
编辑:
等等,我现在明白每个声明的限制,但你为什么需要使用它们?你能澄清一下“struct {...}”的含义以及我如何使用它吗?再次感谢 :D
关于包,您的问题在这里得到了详细回答:@package 指令在 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