如这段代码:
bool operator <(const student &a ) const{
if(score!=a.score) return score<a.score;
else if(name.compare(a.name)!=0) return name<a.name;
else if(age!=a.age)return age<a.age;
else
return false;
}
};
加const是因为:
- 我们不希望在这个函数中对用来进行赋值的“原版”做任何修改。函数加上const后缀的作用是表明函数本身不会修改类成员变量。
- 加上const,对于const的和非const的实参,函数就能接受;如果不加,就只能接受非const的实参。
另外补充,用引用是因为:
这样可以避免在函数调用时对实参的一次拷贝,提高了效率。