4.6自增/自减运算符的重载
自加/自减运算符的重载 :
自加 ++/自减 -- 运算符有 前置/后置 之分 前置运算符作为一元运算符重载
重载为成员函数: T & operator++(); T & operator--();
重载为全局函数: T & operator++(T &); T & operator—(T &); ++obj, obj.operator++(), operator++(obj) 都调用上述函数。
后置运算符作为二元运算符重载
多写一个参数, 具体无意义
重载为成员函数: T operator++(int); T operator--(int);
重载为全局函数: T operator++(T &, int); T operator--(T &, int); obj++, obj.operator++(0), operator++(obj,0) 都调用上函数。
运算符重载的注意事项 C++不允许定义新的运算符 重载后运算符的含义应该符合日常习惯
complex_a + complex_b word_a > word_b
date_b = date_a + n 运算符重载不改变运算符的优先级 以下运算符不能被重载: “.”, “.*”, “::”, “?:”, sizeof 重载运算符(), [ ], ->或者赋值运算符=时, 重载函数必须声明 为类的成员函数。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.