Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;返回模板类中受保护的结构指针_C++ - Fatal编程技术网

C++ C++;返回模板类中受保护的结构指针

C++ C++;返回模板类中受保护的结构指针,c++,C++,请帮帮我,我不知道会发生什么。它表明 错误C2955:“MyClass”:使用类模板需要模板参数列表 template <class T> class MyClass { protected: struct MyStruct { }; MyStruct* GetElement(...) const; } //error C2955: 'MyClass' : use of class template requires template argume

请帮帮我,我不知道会发生什么。它表明 错误C2955:“MyClass”:使用类模板需要模板参数列表

template <class T> class MyClass
{
protected:
    struct MyStruct
    {
    };

    MyStruct* GetElement(...) const;
}

//error C2955: 'MyClass' : use of class template requires template argument list
//I tried: 
// MyClass<T>::MyStruct* MyClass<T>::GetElement(...) const
// MyStruct* MyClass<T>::GetElement(...) const
// but none works. This method doesn't use T.
template<class T>
MyClass::MyStruct* MyClass<T>::GetElement(...) const
{

}
模板类MyClass
{
受保护的:
结构MyStruct
{
};
MyStruct*GetElement(…)常量;
}
//错误C2955:“MyClass”:使用类模板需要模板参数列表
//我试过:
//MyClass::MyStruct*MyClass::GetElement(…)常量
//MyStruct*MyClass::GetElement(…)常量
//但这一切都不管用。此方法不使用t。
模板
MyClass::MyStruct*MyClass::GetElement(…)常量
{
}

模板类MyClass{
受保护的:
结构MyStruct
{
};
MyStruct*GetElement(…)常量;

}; //
GetElement
的返回类型应写为
typename MyClass::MyStruct*

template<class T>
typename MyClass<T>::MyStruct* MyClass<T>::GetElement(...) const
{

}
模板
typename MyClass::MyStruct*MyClass::GetElement(…)常量
{
}
是必需的,因为
MyClass
是一个<需要code>typename
,因为
MyClass::MyStruct
是一个

template<class T>
typename MyClass<T>::MyStruct* MyClass<T>::GetElement(...) const
{

}