【发布时间】:2013-12-25 16:31:04
【问题描述】:
我对函数参数有疑问。我有一个调用函数 B 的函数 A。我必须写什么而不是 ???归档该函数A将所有参数传递给函数B?
#include <iostream>
#include <stdarg.h>
void functionA(int a, ...);
void functionB(int a, ...);
int main()
{
functionA(2, 5, 13);
return 0;
}
void functionA(int a, ...)
{
functionB(a, ??? );
}
void functionB(int a, ...)
{
va_list params;
va_start(params, a);
for(int i = 0; i<a; i++)
{
std::cout << va_arg(params, int) << std::endl;
}
va_end(params);
}
【问题讨论】:
-
不要使用可变数量的参数。这是一个愚蠢的想法,不安全
-
为什么要做意大利面?
-
您可能需要查找可变参数模板。他们至少会让你做的更干净一点(例如,不破坏类型安全)。