2010-08-23 37 views
1

嘿,我有一個非常簡單的問題,需要更多的解釋而不是調試,但我已經在許多類對象的接口定義中看到關鍵字「 @package「,」@private「,」@public「,然後甚至是更大的」struct {...}「。我已經能夠完成完整的程序而不使用任何前述的內容,所以我希望有人能夠向我解釋這些關鍵字的重要性。iPhone SDK @package vs. @private vs @public and struct

感謝

編輯:
等待,我現在每個聲明的restictions但爲什麼你需要使用它們明白嗎?你能澄清一下「struct {...}」是什麼意思,以及我如何使用它?再次感謝:d

回答

6

關於包裝,你的問題在這裏回答詳細:What does the @package directive do in Objective-C?

結構是一個C結構,可以讓你在一個單一的名稱訪問多種數據類型。

@private限制訪問變量的使用僅通過這個類

@protected僅通過這個類和繼承類(默認的OBJ-C類)

限制訪問變量使用@包限制訪問變量使用由框架

@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

+0

好超!謝謝:) – 2010-08-23 14:21:28

+0

沒問題,歡迎您:) – Gauloises 2010-08-23 14:23:56

+1

別忘了@保護 – JeremyP 2010-08-23 14:32:55