【发布时间】:2011-02-27 19:03:50
【问题描述】:
您好。
我不太清楚如何解释自己,但我相信一段代码会让你明白我的意图:
template<class A, class B>
void myFunction(A<B>& list)
{
typename A<B>::iterator current = list.begin();
typename A<B>::iterator end = list.end();
while (current != end)
{
current++;
}
}
其中 A 是一个 STL 容器(向量、列表...)。这就像 inception,但是有模板:一个模板,一个模板内,等等......
问题是:当您的模板的参数之一本身就是模板时,您会怎么做......并且仍然希望支持此模板支持的所有类型。
这当然不能编译(它说“A 不是模板”)。
有人知道如何创建这样的模板吗?
【问题讨论】:
标签: c++ templates containers std