函式傳遞引數過程中,當實參數量不確定、型別不確定時,c++主要有兩種方法:
initializer_list
形參
針對實參數量不定但型別相同的情況。
initializer_list
是一種標準庫型別,用於表示某種特定型別的值得陣列。
標頭檔案同名;
同vector
一樣的是一種模板型別,定義時需說明物件元素的型別,如:initializer_listls;
而不同於vector
的是initializer_list
物件中元素為常量值
包含操作:
#include
#include
#include
#include
using
namespace std;
using std::end;
using std::begin;
using std::cin;
using std::cout;
using std::endl;
using std::string;
intmain()
error_mag()
;else
error_mag()
;return0;
}void
error_mag
(initializer_list il)
2.引數型別也不同
可變引數模板
可變形參函式
在c 程式設計中,有時我們需要編寫一些在源 編寫階段無法確定引數個數,有時甚至無法確定引數型別的函式。因此我們需要一類函式 它們可以在執行時取任意的實參個數並根據實參的個數自動處理不同實參的情形,或者至少可以在執行時指定任意的實參個數。在c 中實現乙個變參函式的方法有三種 重點介紹第一種方法和第三種...
含有可變形參的函式
有時候我們想給函式傳遞實參,但是實參的數目又無法預知,這時候該怎麼辦?initializer list形參 如果函式的實參數目未知但是全部實參的型別都相同,可以使用initializer list型別的形參。initializer list是一種標準庫型別,用於表示某種特定型別的值的陣列。initi...
雙向鍊錶和可變形參
雙向鍊錶 資料域 data 指向域 後指向next 資料域 data 指向域 前指標front 後指標next 可變形參 固定形參 在定義函式時,形參列表的型別與個數是確定的 void fun int a,int b 可變形參 在函式傳遞值的個數或都型別不確定時,返回值 函式名 形參列表,eg vo...