假設我有一個模板函數模板功能專業化。做這個的最好方式是什麼?C++ 11:</p> <pre><code>template<typename T> void f(T t) { ... } </code></pre> <p>,我想寫對於所有基本的整數類型專業化:對於整數類型
我的意思是:
template<typename I where is_integral<I>::value is true>
void f(I i)
{
...
}
和編譯器會選擇整數類型的第二個版本,以及其他一切的第一個版本?
C++ 11中是否有模板專門化功能?我認爲在C++ 03中它只是超載。 –
我一直在尋找類似的東西,但失敗了。我所能做的只是定義一個正常的模板,並在裏面檢查給定的參數是否爲整型 –
@AlexanderChertov有C++ 03,但[它很複雜](http://www.gotw.ca /publications/mill17.htm)。這同樣適用於C++ 11。 – juanchopanza