我有一个看起来像这样的课程:
template <typename P>
class Pack {
Public:
template <typename X>
Private:
Other T <other>
};
我想在类之外编写函数但是我在定义标题时遇到了困难..我试过这样的事情:
template <typename X>
int Pack<X>::pop(X led) const{
// Do something in here with Other from the private above
}
但这不起作用它一直说“流行的定义,与P的任何定义都不匹配。
感谢任何帮助!
澄清:尝试实现函数存根,以便我可以在类之外编写代码。
答案 0 :(得分:5)
您的代码看起来不完整,并且您不时会发布一小段代码,但我相信这种语法是您想要的:
#include <iostream>
using namespace std;
template <typename P>
class Stack {
public:
template <typename X> int pop(X pred) const;
};
template <typename P>
template<typename X>
int Stack<P>::pop(X pred) const{
return 0;
}
int main() {
Stack<bool> obj;
char a;
obj.pop(a);
return 0;
}