首页 > 代码库 > C++学习笔记15:操作符重载的函数原型列表(推荐)
C++学习笔记15:操作符重载的函数原型列表(推荐)
//普通四则运算 friend A operator +(const A & lhs, const A & rhs); friend A operator -(const A & lhs, const A & rhs); friend A operator *(const A & lhs, const A & rhs); friend A operator /(const A & lhs, const A & rhs); friend A operator %(const A & lhs, const A & rhs); friend A operator *(const A & lhs, const int & rhs);//标量运算,如果存在 friend A operator *(const int & lhs, const A & rhs);//标量运算,如果存在 //关系操作符 friend bool operator == (const A & lhs, const A & rhs); friend bool operator != (const A & lhs, const A & rhs); friend bool operator < (const A & lhs, const A & rhs); friend bool operator <= (const A & lhs, const A & rhs); friend bool operator > (const A & lhs, const A & rhs); friend bool operator >= (const A & lhs, const A & rhs); //逻辑操作符 friend bool operator || (const A & lhs, const A & rhs); friend bool operator && (const A & lhs, const A & rhs); bool A::operator!(); //正负操作符 A A::operator +();//取正 A A::operator -();//取负 //递增递减操作符 A & A::operator++();//前缀递增 A A::operator++(int);//后缀递增 A & A::operator--();//前缀递减 A A::operator--(int);//后缀递减 //动态存储管理操作符:全局或者成员函数均可 void * operator new(std::size_t size) throw(bad_alloc); void * operator new(std::size_t size, const std::nothrow_t &) throw(); void * operator new(std::size_t size, void *base) throw(); void * operator new[](std::size_t size) throw(bad_alloc); void operator delete(void *p); void operator delete[](void *p); //赋值操作符 A & operator = (A &rhs); A & operator = (const A & rhs); A & operator = (A && rhs); A & operator += (const A & rhs); A & operator -= (const A & rhs); A & operator *= (const A & rhs); A & operator %= (const A & rhs); A & operator &= (const A & rhs); A & operator /= (const A & rhs); A & operator |= (const A & rhs); A & operator ^= (const A & rhs); A & operator <<= (int n); A & operator >>= (int n); //下标操作符 T & A::operator[] (int i); const T & A::operator[](int i)const; //函数调用操作符 T A::operator()(...);//参数可选 //类型转换操作符 A::operator char *() const; A::operator int() const; A::operator double() const; //逗号操作符 T2 operator,(T1 t1, T2 t2);//不建议重载 //指针与选员操作符 A * A::operator & ();//取址操作符 A & A::operator *();//引领操作符 const A & A::operator *() const;//引领操作符 C * A::operator->();//选员操作符 const C * A::operator->() const;//选员操作符 C & A::operator->*(...);//选员操作符,指向类成员的指针 //流操作符 friend ostream & operator << (ostream &os, const A &a); friend istream & operator >> (istream &is, A &a);
C++学习笔记15:操作符重载的函数原型列表(推荐)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。