如何使用" ..."作为类函数的变量

时间:2015-07-28 14:44:34

标签: c++ function class

让我说我有这个:

class Math  
{  
public:  
  int Add (int v1 , ... );  
}

我如何制作功能"添加"添加所有数字?

2 个答案:

答案 0 :(得分:4)

您可以使用可变参数模板函数

template<typename T, typename... Args>
T Add(T v1, Args... rest)
{
    for (const T value : { rest... })
    {
        v1 += value;
    }
    return v1;
}

Working example

答案 1 :(得分:1)

您可以使用可变参数模板,即:

int add(int a) {
    return a;
}

template<typename... Args>
int add(int a, Args... args) {
    return a + add(args...);
}