美文网首页
c++学习笔记 三(geekband)

c++学习笔记 三(geekband)

作者: huManYang | 来源:发表于2016-08-07 23:19 被阅读0次

    类型转换运算符conversion operator

    类型转换是操作符重载的一种形式,是类的特殊成员,上文是一个分数类,调用4+f是就将f转换为通过隐式调用类型转换运算符double类型。

    operator type() const;    

    一个类型转换操作函数必须式类的成员函数;他不能声明返回类型,形参列表也必须为空。类型转换函数通常应该式const.

    explicit是c++11新标准引入的显示类型转换运算符,上面应为没有在函数前声明,所以隐式的调用了类型转换运算符,这个例子种f换成double类型是有利的,但是这总转换并总是我们所想要的。

    这种就出现的二义性的现象,不知道调用那个函数,是调用类型转换函数把f换成double算出结果,再将d2转成Fraction。还是想把4换成Fraction再调用+的重载函数来计算。

    c++11就提供了显示的类型转换运算符便于我们解决这个问题

    再有类型转换是我们要显示的声明用才可以进行类型转换。

    指针的类

    将指针通过类组合产生新的更高功能的指针

    关于指针和引用

    引用是一种指针实现的类型,与指针相比他不是一个对象,说以不可以声明包含引用的数组,但指针可以。引用想当与变量的别名,必要要先绑定,从诞生到消亡都不可以改变对象。指针可以改变对象,指针更加的灵活。

    相关文章

      网友评论

          本文标题:c++学习笔记 三(geekband)

          本文链接:https://www.haomeiwen.com/subject/hjmlsttx.html