类定义
template <class T>
class Element //数据表的元素
{
public:
T key;
//在此处添加除关键码之外的其他数据成员
Element<T>& operator = (Element<T>& x)
{
key = x.key;
return *this;
}
Element<T>& operator = (T& x)
{
key = x.key;
return *this;
}
bool operator == (Element<T>& x){ return key == x.key; }
bool operator <= (Element<T>& x){ return key <= x.key; }
bool operator > (Element<T>& x){ return key > x.key; }
bool operator < (Element<T>& x){ return key < x.key; }
template <class T>
friend ostream& operator << (ostream& out, Element<T>& x)
{
out << x.key;
return out;
}
};
调用,错误信息如注释所示
Element<int> e;
e = 3; // 2 IntelliSense: 没有与这些操作数匹配的 "=" 运算符
cout << e;