说我有以下内容:
template <typename... A>
class MyClass
{
public:
void func(A... args)
{
// do stuff
}
};
我真正想要的是func()接受l值引用,所以像这样:
template <typename... A>
class MyClass
{
public:
void func(std::remove_reference<A>::type&... args)
{
// do stuff
}
};
这不会编译;这种事情有可能吗?谢谢。
答案 0 :(得分:1)
代码应阅读
template <typename... A>
class MyClass
{
public:
void func(typename std::remove_reference<A>::type&... args)
{
// do stuff
}
};