1

嘿,我有一个非常简单的问题,需要更多的解释而不是调试,但我在许多类对象的接口定义中看到了关键字“@package”、“@private”、“@public”,甚至更奇怪的“结构{...}”。我已经能够在不使用上述任何内容的情况下制作完整的程序,所以我希望有人可以向我解释这些关键字的意义。

谢谢

编辑:
等等,我现在明白每个声明的限制,但你为什么需要使用它们?你能澄清一下“struct {...}”的含义以及我如何使用它吗?再次感谢 :D

4

1 回答 1

6

关于包,您的问题在这里得到了详细回答:@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

于 2010-08-23T13:23:15.043 回答