能夠接受任意多個(gè)參數(shù)的函數(shù),可以利用重載來實(shí)現(xiàn)。這種函數(shù)的執(zhí)行過程類似于遞歸調(diào)用,所以必須要有遞歸終止條件。
#include <iostream>#include <bitset>void print() {} // 遞歸終止條件。這是必需的。template<typename Type, typename... Types>void print(const Type& arg, const Types&... args){ std::cout << arg << std::endl; print(args...);}int main(){ print(1, 3.1415, "Hello, world!", 1.618, true, std::bitset<16>(377), 40); return 0;}執(zhí)行后的結(jié)果如下:
1 3.1415 Hello, world! 1.618 1 0000000101111001 40
以上就是小編為大家?guī)淼腃++中可以接受任意多個(gè)參數(shù)的函數(shù)定義方法(詳解)全部內(nèi)容了,希望大家多多支持武林網(wǎng)~
新聞熱點(diǎn)
疑難解答