共 6 篇文章 |
|
赋值操作符只能作为非静态的成员函数来重载,并且,它不能被派生类继承;//默认构造函数 Employee():name("noname"),ID(counter){counter++;} //接受一个string类参数的构造函数 Employee(const string nm):name(nm),ID(counter){counter++;} //复制构造函数 Employee(Employee &other):name(other.name),ID(other.ID){} //赋值... 阅12572 转15 评0 公众公开 13-06-06 14:01 |
//重载解引操作符: Student &operator*(){return *ptr->sp;} //重载箭头操作符: Student *operator->(){return ptr->sp;} //与之对应的const版本 const Student &operator*()const{return *ptr->sp;} const Student *operator->()const{return ptr->sp;}private: StdPtr *ptr;}; 阅1925 转5 评0 公众公开 13-06-06 11:01 |
C++操作符重载(“关系操作符”)关系操作符重载: //相等操作:判断二人学号是否相等bool operator==(const Student& std1,const Student& std2){return std1.schoolNumber == std2.schoolNumber&& std1.name == std2.name&& std1.address == std2.address;}//重载小于操作符:判断学号大小bool operator<(const... 阅293 转2 评0 公众公开 13-06-06 10:51 |
C++操作符重载(“下标操作符”)重载下标操作符:class Student{我们对重载下标操作符,希望的是它能够返回一个team中的某一个Student成员,想清楚了这个,重载其实并不困难://重载下标操作符 Student& Team::operator[](const size_t index) { //return team[index]; return team.at(index); } 在主函数中,可以使... 阅881 转0 评0 公众公开 13-06-06 10:48 |
C++中操作符重载(++和--)//构造函数:必须绑定一个数组对象 CheckedPtr(int *b,int *e):beg(b),end(e),curr(b){} //重构前自增操作符 CheckedPtr& operator++(); //重构前自减运算符 CheckedPtr& operator--(); //重载后自增运算符:通过调用参数与前自增运算符区别开来 CheckedPtr& operator++(int); private: int *beg; ... 阅4032 转5 评0 公众公开 13-06-06 10:39 |
赋值必须返回*this 的引用class Love{ public: int str; int agi; int intel; Love(): str(0), agi(0) , intel(0){} Love(int a , int b ,int c): str(a), agi(b) , intel(c){}; Love& operator+=(const Love &test){ str += test.str; agi += test.agi; intel += test.intel; ... 阅195 转0 评0 公众公开 13-06-06 09:48 |