1
使用類似vector
,list
等的容器類時,可以通過編寫vector<type>::value_type
來使用元素的類型。使用在模板參數中定義的類型
但是,下面的代碼
template<class container>
void foo(container& c)
{
typedef container::value_type elementtype;
elementtype b;
}
失敗,出現錯誤 「expected initializer before ‘elementtype’
」。 當容器類型作爲模板參數給出時,是否可以推斷出元素類型,還是必須將元素類型作爲額外的模板參數?