首页 > 代码库 > GeekBand第二三周学习笔记
GeekBand第二三周学习笔记
conversion function(转换函数)
1 class Fraction 2 { 3 public: 4 Fraction(int num, int den=1) 5 : m_numerator(num), m_denominator(den){ } 6 operator double() const { 7 return (double)(m_numerator / m_denominator); 8 } //转换函数 9 private: 10 int m_numerator; 11 int m_denominator; 12 };
operator type()转换函数不需要声明返回类型,返回值类型为type,一个类的转换函数可以有任意多个,转换函数会被编译器作为进行默认类型转换的调用对象,还有转换函数最好加上const,否则const修饰的类型则无法使用此转换函数.
double d=Fraction(2,3)+3.5; //合法的表达式,Fraction会被转换为double进行加运算;
GeekBand第二三周学习笔记
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。