引數傳遞與引用(C )

2021-10-02 18:26:48 字數 847 閱讀 7410

引用(&)是識別符號的別名

例如:int i,j;

int &ri= i; //定義int引用ri,並初始化為變數i的引用

j=10;

ri=j;//相當於i=j;

c+ +標準中提供了兩種主要的方法

1、如果所有的實參型別相同,可以傳遞乙個名為initializer list的標準庫型別

2、如果實參的型別不同,我們可以編寫可變引數的模板

initializer list是一種標準庫型別,用於表示某種特定型別的值的陣列型別定義在同名的標頭檔案中

initializer list用法:

< initializer list>是乙個類模板

◆使用模板時,我們需要在模板名字後面跟一對尖括號,括號內給出型別引數。

例如:initializer listis; // initializer ist的元素型別是string

initializer listli; // initializer ist的元素型別是int

initializer list比較特殊的一點是,其物件中的元素永遠是常量值

我們無法改變initializer list物件中元素的值

◆含有initializer list形參的函式也可以同時擁有其他形參

initializer list用例:

◆在編寫**輸出程式產生的錯誤資訊時最好統一-用乙個函式實現該功能,使得對所有錯誤的處理能夠整齊劃一-

然而錯誤資訊的種類不同,呼叫錯誤資訊輸出函式時傳遞的引數也會各不相同

◆使用initializer list編寫乙個錯誤資訊輸出函式,使其可以作用於可變數量的形參

C 函式引數 值傳遞與引用傳遞

以前我們在c語言中函式引數傳遞過程中,如果我們想要讓當a函式作用域中的變數經過b函式處理之後的數值仍然在a函式中生效,這個時候函式引數的傳遞時需要引用方式去傳遞,方式如下 include 函式引數為指標,通過修改指標裡面的內容達到對main中b變數的修改 void func int a int ma...

c 引數傳遞之引用引數

每乙個想要做到模組化程式設計的碼農都不可避免的乙個問題是引數傳遞 如果您在這裡覺得有疑問,誒,我不想做模組化呢,以筆者經驗這個你大可不必揪心,因為你的老師或者老闆會讓你做到的 以c語言為例,主調函式傳參給被調函式的情況中,87 的情況都是要改變引數的值。這時候有兩種方法做到這個,第一傳指標,一般情況...

值傳遞與引用傳遞 引數型別

根據儲存方式不同,我們將資料型別分為值型別和引用型別。值型別 基本資料型別 int float double boolean long 列舉 結構。儲存在棧當中的,提取資料快,但是分配空間多,耗資源,建議資料量少的情況下使用。引用型別 object型別 類 陣列 介面 值傳遞 1 直接傳遞值型別 結...