函式與方法

2021-07-09 03:14:12 字數 1661 閱讀 4034

一.c中的函式

在c中我們是怎麼定義函式的?函式是實現一種具體功能的**塊。函式需要被呼叫才能執行。那麼函式由哪幾部分組成的呢?函式的宣告,以及函式的具體實現。我們來看一段最簡單的**吧。

#import
//函式的宣告

int add(int num1,int num2);

int main()

由**我們不難看出函式的宣告是必須寫在函式的呼叫之前的。為什麼呢?因為函式執行的時候是從上往下,從左向右執行的,當執行到函式的部分,如果執行的時候沒有發現函式的宣告,那麼就不能識別被呼叫的函式內部的功能,也就沒法執行函式的呼叫,就會報錯。然後我們來看看函式的幾種形式吧。

//有參無返回值

void add(int num1,int num2);

//有引數有返回值

double chu(int num1,int num2);

//無參有返回值

int hello();

//無參無返回值

void hello();

這裡我們簡單的說一下有關c語言中的函式,其它的我就不細說了,那麼接下來我們來看看重點,oc中的方法。

二.oc中的方法

oc中也有自己的方法,其實和c中的函式還是有些相同的,但是還是有獨特的區別,那麼我們來簡單的看看oc中的方法吧。

#import@inte***ce xx:nsobject

//物件方法

-(void)run;

//類方法

+(void)run;

@end

上面所寫的方法就是oc中的方法,但是我們來看看,具體方法有哪些規定呢?

1)方法的前面有乙個「+」或者「-」。

2)方法中和資料型別有關的都用()擴住。

方法也分為無引數無返回值,無引數有返回值,有引數無返回值,有引數有返回值。這寫和函式差不多,但是具體的寫法卻是有差別的,那麼我們來看看吧。

//無參無返回值

-(void)speed;

+(void)speed;

//無參有返回值

-(int)cell;

+(int)cell;

//有參無返回值

-(void)add:(int)a and:(int)b;

+(void)add:(float)a with:(float)b;

//有參有返回值

-(nsstring)hello:(nsstring *)name;

+(int)hello:(int)a and:(int)b with:(float)c;

上面寫的這些都是在oc中的有關方法的宣告,包括有參,無參,有返回值和無返回值。那麼接下來我將為大家總結他們兩者的區別,方便大家學習。

三.函式與方法的區別

1)函式的宣告可以寫在@inte***ce......@end之間,呼叫也是不存在問題的。

2)函式的實現不要寫在@inte***ce......@end之間。

3)「—」或者「+」開頭的方法只能由對應的物件或者類來呼叫,不能混合呼叫。函式則是可以處處呼叫。

4)「—」開頭的方法可以通過數學名直接訪問屬性(但是類「+」方法不行)。

scala 方法與函式

定義方法的基本格式是 def 方法名稱 引數列表 返回值型別 方法體 def add x int,y int int x y println add 1,2 也可以定義成 def add x int,y int x y 或者 def add x int,y int 沒有返回值一定要用大括號那方法體括...

建構函式與方法過載

建構函式 在定義類時,可以使用建構函式定義物件建立的初始流程。建構函式是與類名稱同名,無須宣告返回型別的方法。例如 package hello public class loaddemo 如果這樣建立loaddemo物件,成員a與txt會初始兩次 loaddemo ld new loaddemo 8...

JS常用函式與方法

當頁面關閉時觸發 window.onbeforeunload function 關閉視窗 彈出式視窗 parent.window.close 關閉視窗 window.close 拷貝內容 window.clipboarddata.setdata text clipboardcontent 是否是數字...