坚持学习100天:特殊运算符的重载

坚持学习100天:特殊运算符的重载,第1张

前言

Hello,我是修齊。
学习C++的第一百零一十三天,五一放假,忙起来没休息好,断了两天,继续吧。
在这里记录一些学习的东西和学习的心情,内容主要是一些自己学习整理的小笔记。

一、++ 和 –

1.不分前置和后置:operator++()、operator–()
2.重载前置运算符:operator++()、operator–()
3.重载后置运算符:operator++(int)、operator–(int),调用时,参数int被传递给值0。

二、=
若没有自定义的赋值运算符函数,系统自动生成默认的赋值运算符函数
X & X::operator=(const X &source)
{
   //类对象成员之间的赋值语句
}
类中有指针类的形式,使用默认的赋值运算符函数会产生指针悬挂的错误。
类X的对象ob1和ob2创建后,可以赋值ob1=ob2。
三、[ ](下标运算符)

operator[ ]:通常用来访问数组中的某个元素(可看作是一个双目算符,第一个运算符是数组名,第二个运算符是数组下标)

一般定义形式:T1 T::operator[ ](T2)
T:定义下标运算符的类,不必是常量
T2:表示下标,可以是任意类型(整型\字符型\某个类)
T1:数组运算的结果,可以是任意类型(为了对数组赋值,一般将声明为引用形式)
四、类类型转换

类类型:指某个对象的数据类型为类,而不是标准的数据类型
数据类型与类类型之间的转换:构造函数转换、类类型转换函数转换、运算符重载实现类型转换

<类名>::operator type()
{
   //
   return type类型的数据  //返回type类型的对象
}

五、小脑袋,大疑问

学习是一个重复的过程,还得再翻翻书。当阳光败给阴霾,没想到你会拼命为我拨开

上述内容如有侵权,联系即删。
感谢阅读-感谢支持

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/798063.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-06
下一篇 2022-05-06

发表评论

登录后才能评论

评论列表(0条)

保存