OC語言3 方法和檔案編譯

2021-07-12 05:37:38 字數 2094 閱讀 1610

物件方法以-開頭如 -(void)xx;

物件方法只能又物件來呼叫

物件方法中可以訪問當前物件的成員變數

呼叫格式 [物件名 物件方法名];

設計乙個學生類和狗類,練習物件方法的使用。

學生類的宣告:

學生類的實現:

狗類的宣告:

狗類的實現:

主程式:

類方法以+開頭 如+(void)put;

類方法只能由類來呼叫

類方法中不能訪問例項(成員)變數,因為類方法又類來呼叫,並沒有建立儲存空間來儲存類中的成員變數。

呼叫格式:[類名 類方法名];

類方法的好處和適用場合:

設計乙個計算器類,練習使用類方法。

計算器類的宣告:

計算器類的實現:

主程式:直接使用類名呼叫類方法

注意1:可以允許類方法和物件方法同名。

注意2:在物件方法中可以呼叫類方法。

(1)不帶引數的方法

宣告:

呼叫:

(2)帶引數的方法

宣告:

呼叫:

注意:冒號也是方法名的一部分。

在工作中,通常把不同的類放到不同的檔案中,每個類的宣告和實現分開,宣告寫在.h標頭檔案中,實現寫在相應的.m檔案中去,類名是什麼,檔名的字首就是什麼。

假設有兩個類,分別是person類和dog類,則通常有下面五個檔案:

person.h person類的宣告檔案

person.m person類的實現檔案

dog.h dog類的宣告檔案

dog.m dog類的實現檔案

main.m 主函式(程式入口)

在主函式以及類的實現檔案中要使用#import包含相應的標頭檔案。

補充:import有兩個作用:

一是和include一樣,完完全全的拷貝檔案的內容;

二是可以自動防止檔案內容的重複拷貝(即使檔案被多次包含,也只拷貝乙份)。

在使用命令列進行編譯鏈結檔案的時候,通常是把.m檔案單檔案編譯,然後再把所有的目標檔案鏈結,但是在xcode中,是把所有的.m檔案都進行編譯鏈結的,如果出現重複定義的錯誤,那大部分問題根源應該就是檔案內容被重複包含或者是包含.m檔案所引起的。

原始檔中不論是使用include還是import,都不能包含.m或者是.c檔案,只能放宣告。因此,在oc中通常把類拆分開來,拆分成宣告和實現兩個部分。

xcode是寫一行編譯一行,有簡單的修復功能,紅色是錯誤提示,黃色警告。如果在程式中宣告了乙個變數,但是這個變數沒有被使用也會產生警告資訊。

在除錯程式的時候,如果發現整個頁面都沒有報錯,但是一執行就錯誤,那麼一定是鏈結報錯。

OC方法和檔案編譯

一 oc方法 一 物件方法 1 物件方法以 開頭如 void xx 2 物件方法只能又物件來呼叫 3 物件方法中可以訪問當前物件的成員變數 4 呼叫格式 物件名 物件方法名 5 設計乙個學生類和狗類,練習物件方法的使用。學生類的宣告 二 類方法 1 類方法以 開頭 如 void put 2 類方法只...

OC方法和檔案編譯

一 oc方法 一 物件方法 1 物件方法以 開頭如 void xx 2 物件方法只能又物件來呼叫 3 物件方法中可以訪問當前物件的成員變數 4 呼叫格式 物件名 物件方法名 5 設計乙個學生類和狗類,練習物件方法的使用。學生類的宣告 學生類的實現 狗類的宣告 狗類的實現 主程式 二 類方法 1 類方...

OC方法和檔案編譯

oc方法和檔案編譯 一 oc方法 一 物件方法 1 物件方法以 開頭如 void xx 2 物件方法只能又物件來呼叫 3 物件方法中可以訪問當前物件的成員變數 4 呼叫格式 物件名 物件方法名 5 設計乙個學生類和狗類,練習物件方法的使用。學生類的宣告 學生類的實現 狗類的宣告 狗類的實現 主程式 ...