enum class enabler{};
template<typename T>
class X {
template<typename std::enable_if<std::is_class<T>::value,enabler>::type = enabler()>
void func();
void func(int a);
void fun
更改成員的數目我需要一個模板類,它具有不同的成員,具體取決於調用哪個ctor。 我設法得到一個類,它有不同的成員使用sfinae與一個基類(我幾乎像這樣做了SFINAE on member variable)。 現在我的問題是,我可以實現一個單獨的模板類,它具有不同的成員,具體取決於該類的哪個類被調用? 也許有人可以有一個想法如何實現這一點。 編輯︰我目前使用boost::variant,但問題是
我不知道使用SFINAE方法重載時必須考慮哪些規則。我多次遇到問題,因爲我知道接縫涉及更多規則。所以我希望有一套可以簡單解釋的規則來幫助解決一般問題,而不是一次又一次地提出問題。 我的起點在這裏: Specializing class with SFINAE if a parameter pack is needed 代碼1 class AA { public: using TRAIT = i