【发布时间】:2009-04-12 10:56:09
【问题描述】:
当使用vector、list等容器类时,我可以通过写vector<type>::value_type来使用元素的类型。
但是,下面的代码
template<class container>
void foo(container& c)
{
typedef container::value_type elementtype;
elementtype b;
}
失败并出现错误“expected initializer before ‘elementtype’”。
当容器类型作为模板参数给出时是否可以推断元素类型,还是我必须将元素类型作为额外的模板参数给出?
【问题讨论】: