可变参数函数设计一般用在参数个数不是固定时,比如要设计一个相乘函数,但参数个数在定义时不知道要多少个,在函数调用时才能确定。定义可变参数要用到几个宏
va_start、va_arg、va_end都定义在cstdarg头文件中,记得要#include <cstdarg>。
下面是可变参数demo代码
可变参数函数输出结果:
1 2 3 4 5 6 7 8 9 |
*1 *2 *3 *4 *5 *6 *7 5040 请按任意键继续. . . |
可变参数可以解决参数个数不固定问题,但处理还是比较麻烦。一般像这种参数个数不固定我在定义函数时,参数设计成:vector或都传指针和个数。