假设我们有一个名为 outer 的模板类,在这个模板类中我们声明了一个名为 inner 的模板类。
template <typename T>
class outer{
template <typename U> class inner;
};
我的问题;
根据重复的答案,
#include <iostream>
#include "forward_list.h"
template <typename T>
class outer{
template <typename U> class inner;
private:
inner<T> innerItem;
public:
void doSomething(){
innerItem.print();
}
};
template <typename T>
template <typename U>
class outer<T>::inner{
public:
void print(){std::cout << "inner print\n";}
};
int main(int argc, char ** argv){
outer<int> a;
a.doSomething();
return 0;
}