如何以非內聯方式爲專業模板提供額外的成員函數? 即C++模板專門化提供額外的成員函數?
template<typename T>
class sets
{
void insert(const int& key, const T& val);
};
template<>
class sets<bool>
{
void insert(const int& key, const bool& val);
void insert(const int& key){ insert(key, true); };
};
但是,當我寫sets<bool>::insert(const int& key)
作爲
template<>
class sets<bool>
{
void insert(const int& key, const bool& val);
void insert(const int& key);
};
template<>
void sets<bool>::insert(const int& key)
{
insert(key, true);
}
GCC抱怨:
模板id爲「無效 ip_set '插入<>' ::插入(const int的&)' 不匹配任何模板聲明