c 函式特性

2021-06-28 04:37:28 字數 1468 閱讀 9778

1.內斂函式在函式的宣告和定義前面都要加上關鍵字「inline」

2.內聯函式是c++為提高程式執行速度所做的一項改進,與常規函式區別在於c++編譯器如何將它組合到程式中,

所謂的的「內聯」是編譯器將使用相應的函式**來替換函式呼叫,程式無需跳轉到另乙個位置執行**,再跳回來。所以速度比常規函式稍快,但是代價是需要占用更多的記憶體。如果程式在x個不同的地方呼叫同乙個內聯函式,則程式將包含該函式**的x個副本。下圖是常規函式與內聯函式呼叫區別。

3.應該有選擇的使用內斂函式,如果函式的執行時間比處理函式呼叫機制的時間長很多,那麼使用內斂函式節約的時間將很小。

4.內斂與巨集,c中使用的巨集(#define)是內聯**的原始實現,但是不是通過傳遞引數來實現的,而是通過文字替換

//定義內聯函式

inline double square(double x)

//定義巨集

#define square(x) ((x)*(x))

int main(void)

1.宣告引用的時候,使用「&」,&不是位址運算子,而是型別識別符號

int a=10;

int & b=a;

b++;  // b=11,a=11

2.引用看上去很像偽裝表示的指標,但是還是有區別

1)引用必須在宣告的時候將其初始化,而不能像指標那樣先宣告,後賦值

2)引用一旦和乙個變數關聯起來,就將一直效忠於他(類似 const指標)

int a=10;

int & b=10;

int c=20;

b=c;  //is similar as  a=c   , value is  a=20,c=20, 

3)引用常作為函式的引數使用(特別是引數為乙個類的時候),使得被呼叫函式可以訪問呼叫函式中的引數,並且效率比按值傳遞高。

#include using namespace std;

int version1(const int & x,const int & y)

int & version2(int & x,const int & y)

const int & version3(const int & x,const int & y)

int main()

int main()

{ int a=10;

square(a)=10;

cout<1.當函式呼叫中省略了實參時自動使用的乙個值

2.當要為某個引數設定預設值的時候,必須為他右邊所有的引數提供預設引數

1.可以允許多個同名的函式,條件是特徵標不一樣,(特徵標是指引數的數目,型別和順序)

2.c++會自動進行匹配,如果匹配不上,嘗試強制轉換型別進行匹配。

C 函式特性

1.函式引數預設值 比較兩個函式預設值的正確性 void fun int i,int j 5,int k 10 正確 void fun int i,int j 5,int k 錯誤 有函式引數值的引數必須在引數列表的最右端!2.使用時的一些注意事項 為了避免某些編譯器不通過,建議在宣告時給函式加預設...

C 函式特性

1 函式引數預設值 void fun int i,int j 2,int k 3 void fun int i,int j 2,int k 有預設引數值的引數必須在參數列的最右端 fun 10 實際傳入10 fun 10,20 實際傳入10,20,不是10,2 fun 10,20,30 實際傳入10...

C函式引數特性

編寫日期 2012.5.22 前言 c語言,是函式構成的語言,c離不開函式,函式對於c的存在有著決定性的作用。那麼,函式引數對於c的重要性也就可想而知了。下面我就談談c函式引數的一些性質。引數特性簡介 特點一 函式引數的傳遞順序。例項一 void func int id1 int id2 void ...