[计算机科学经

3 template arguments 107 constant expression t member

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: float,int> mfi; MyClass<int*,float*> mp; // // // // 使用 MyClass<T1,T2> 使用 MyClass<T,T> 使用 MyClass<T,int> 使用 MyClass<T1*,T2*> 如果某個宣告式與兩個(或更多)偏特化版本產生同等的匹配程度,這個宣告式便被視為模稜 兩可(歧義): MyClass<int,int> m; MyClass<int*,int*> m; // 錯誤:同時匹配 MyClass<T,T> 和 MyClass<T,int> // 錯誤:同時匹配 MyClass<T,T> 和 MyClass<T1*,T2*> 為解除㆖述第㆓宣告的歧義性,你可以針對「指向相同型別」的指標,提供另㆒個偏特化版本: template <typename T> class MyClass<T*,T*> { ... }; 偏特化的更詳細討論請見 12.4 節, p.200。 3.5 預設模板引數 ( Default Template Arguments ) 你可以針對 class templates 定義其 template parameters 的預設值 這稱為 default template arguments , (預設模板引數)。預設引數值甚至可以引用前㆒步宣告的 template parameters...
View Full Document

Ask a homework question - tutors are online