C++ 将可变参数从一个函数传递到另一个函数

C++ 将可变参数从一个函数传递到另一个函数,c++,parameters,parameter-passing,variadic-functions,C++,Parameters,Parameter Passing,Variadic Functions,我正在调用一个函数firstFunction并将变量参数传递给它(const char*fmt,…):我想在这里执行一些计算,然后将参数传递给另一个函数secondFunction,该函数具有(const char*fmt,…)作为输入参数 void firstFunction(const char* fmt, ...) { //does some pre-condition stuff //calls secondFunction (how?) } void secondFunction

我正在调用一个函数
firstFunction
并将变量参数传递给它
(const char*fmt,…)
:我想在这里执行一些计算,然后将参数传递给另一个函数
secondFunction
,该函数具有
(const char*fmt,…)
作为输入参数

void firstFunction(const char* fmt, ...)
{
 //does some pre-condition stuff

//calls secondFunction (how?)
}

void secondFunction(const char* fmt, ...)
{
//prints the input parameters in a va_list using vsnprtinf
}     

什么是把函数的变量传递给另一个函数的C++语法?< /P>


编辑1:我不能使用模板,因为我希望这些函数是纯虚函数声明的定义。

这是可变参数,不是参数包。在C++中你会写:

    template <class... Args>
    void firstFunction(const char* fmt, Args&&... a) {
        secondFunction(fmt, std::forward<Args>(a)...);
    }
模板
void firstFunction(常量字符*fmt,参数&&…a){
第二功能(fmt,std::forward(a)…);
}

这是一个可变参数,而不是一个参数包。在C++中你会写:

    template <class... Args>
    void firstFunction(const char* fmt, Args&&... a) {
        secondFunction(fmt, std::forward<Args>(a)...);
    }
模板
void firstFunction(常量字符*fmt,参数&&…a){
第二功能(fmt,std::forward(a)…);
}

注意:参数包仅出现在可变模板中,这是C型变量。注意:参数包仅出现在可变模板中,这是C型变量。您是对的,问题已更正您是对的,问题已更正