基本上我有一个很好的可变参数类,除了“启用从这个共享”部分。
template <typename S>
class Test;
template <typename... Args>
class Test < void( Args...)>:
public std::enable_shared_from_this
< Test< void(Args...)> >
{
public:
std::shared_ptr< Test< void( Args...)>> getptr();
};
template <typename... Args>
std::shared_ptr< Test< void( Args...)>> Test < void( Args...)>::getptr(){
return shared_from_this(); // error here!
}
我收到此错误:
there are no arguments to 'shared_from_this' that depend on a template parameter,
so a declaration of 'shared_from_this' must be available [-fpermissive]