2012-07-06 43 views
2

鑑於a<b<c>>表格的一種類型,我可以將其展開以便我找回類型名稱ab<c>,然後c?或者至少可以有模板化的功能,使我可以匹配類型名稱的元素,例如你可以在C++ 11中展開一個類型表達式嗎?

template <typename C, typename E> 
fun(C<E>& h, C<E>& i) {...} 

在此先感謝。

+2

「*我可以放鬆,所以我回來了類型名'了'和'b ''然後* C'」沒有,因爲'了'是不是一個類型的名字。儘管你可以簡單地回到'b '然後'c'。 – ildjarn 2012-07-06 19:26:11

回答

4
template <template<typename> class C, typename E> 
fun(C<E>& h, C<E>& i) {...} 
+0

爲什麼不 - std :: vector v;有趣(v) - 工作?而模板 class D {}; D d;有趣(四)有效嗎? – 2012-07-06 19:54:55

+0

@FredFinkle因爲向量具有形式模板>類矢量 它的工作原理例如在GCC 4.7+ 模板<模板<類型名稱,類型名>類C,類型名稱E,模板 class Z> void fun(C >&h,C >&i){} – ForEveR 2012-07-06 20:00:02

+0

這也回答了我有關如何說「任何類型」的問題,現在我知道了。再次感謝。 – 2012-07-06 20:25:52

相關問題