在完美转发中,std::forward用于转换命名的右值引用t1和t2未命名的右值引用.这样做的目的是什么?inner如果我们离开t1&t2作为左值,那将如何影响被调用的函数?
template <typename T1, typename T2>
void outer(T1&& t1, T2&& t2)
{
inner(std::forward<T1>(t1), std::forward<T2>(t2));
}
Run Code Online (Sandbox Code Playgroud) 我使用C++编写代码并对省略号有一些问题:
是否可以将类或类指针传入省略号?
基本上我想要做的是传递char*和的类型中的可变数量的参数class.我目前正在使用省略号并试图弄清楚如何传入课堂.如果省略号不适用于此处,有哪些选项?
我想让用户直接调用函数,func( params 1, params2, ...)而不是在将向量或数组作为参数传递给函数之前先将params分配给向量或数组.