OC中方法與函式的區別

2021-07-05 20:42:08 字數 843 閱讀 9616

方法:方法是objective-c獨有的一種結構,只能在objective-c中宣告、定義和使用,c語言不能宣告、定義和使用。

1、類方法以+號開頭,物件方法以-號開頭

+ (void) init;        // 類方法

- (void) show;                // 物件方法

2、在@inte***ce和@end之間宣告,在@implementation和@end之間定義

@inte***ce test : nsobject

// 方法宣告

+ (void) init;

- (void) show;

@end

@implementation test

// 方法實現

+ (void) init

- (void) show

@end

3、類方法只能由類來呼叫,物件方法只能由方法來呼叫

// 呼叫類方法

[test init];

// 呼叫物件方法

test *t = [test new];

[t show];

4、方法歸類、物件所有。

5、方法宣告和實現中用到的資料型別必須用()括住。

函式:函式即c語言中的函式,在c和objective-c中都宣告、定義和使用。

1、函式能寫在檔案中的任意位置(@inte***ce和@end之間除外),函式歸檔案所有。

int add(int num1, int num2)

2、函式呼叫不依賴於物件。

int sum = add(1, 2);

3、函式內部不能直接通過成員變數名訪問某個物件的成員變數。

OC中的方法與函式的區別

方法 方法是objective c獨有的一種結構,只能在objective c中宣告 定義和使用,c語言不能宣告 定義和使用。1 類方法以 號開頭,物件方法以 號開頭 void init 類方法 void show 物件方法 2 在 inte ce和 end之間宣告,在 implementation...

Go語言中方法與函式的區別

go語 同時有函式和 法,法的本質是函式,但是 法和函式 具有不同點。案例如下 mymethoddes project main.go package main import fmt type employee struct 接收者型別為employee func e employee displa...

C 中方法過載與方法重寫區別

方法過載 在乙個類中存在方法名相同 引數列表不同 引數個數或者引數型別不同 返回值型別可以不相同,呼叫的時候根據引數列表的不同來正確呼叫。class program 3 5 7三個整數之和為,3.1 5.2兩個浮點型數之和為 test.add 3,5 test.add 3,5,7 test.add ...