我很新到std :: enable_if,不知道如何使用它。 我有一個模板類:C++的std :: enable_if
template<int a, int b>
class foo {
}
現在我只希望它實例化時,A + B等於10 我能把這可能使用的std :: enable_if?
第二個問題: 如果我有類Foo的成員
template<int a, int b>
class foo {
int c;
}
我只希望有c當
a = 5.
我該怎麼做,使用的std :: enable_if? 這是一個正確的情況下使用std :: enable_if?
這不是什麼'enable_if'是。它僅用於*函數*模板中的推導*類型。 –
@KerrekSB:或者禁用類模板的特化。兩者都是'boost :: enable_if'的核心用法很長一段時間,兩者仍然是有效的用例。請注意,這通常是在基礎模板的多個專業化背景下完成的,以便選擇其中一個,而不僅僅是完全禁用模板。 –
@DavidRodríguez-dribeas:這是一個很好的點。到目前爲止,我還沒有用它來進行類模板專業化... –