当前位置: 首页 > article >正文

C++面向对象高级开发B

一、概述

  • operator type() const;
  • explicit complex(…):initialization list{}
  • pointer-like object
  • function-like object
  • template specialization
  • Rvalue reference(since C++11)
  • range-base for loop(since C++11)
  • Object Modal

二、转换函数(conversion function) vs. non-explicit-one-argument ctor

1.认识转换函数

形式:operator type() const

//将Fraction转double(分数转小数)
class Fraction
{//
public:
	Fraction(int num, int den = 1)
	:	m_mumerator(num), m_denominator(den) { }
	
	/**
	* 这个形式就是转换函数(无返回值)分数转小数(double类型)
	*	注意:这里一定要加const:因为转换函数不会修改数据,只是转换类型
	*/
	operator double() const	
	{				
		return (double) (m_numerator / m_denominator);
	}
pri

http://www.kler.cn/a/382606.html

相关文章:

  • 掌握歌词用词技巧:写歌词的方法与艺术表达,妙笔生词AI智能写歌词软件
  • pandas——对齐运算+函数应用
  • jenkins 构建报错 Cannot run program “sh”
  • 提交linux kernel patch流程
  • QChart中柱形图的简单使用并实现【Qt】
  • 【Linux】从零开始使用多路转接IO --- epoll
  • ansible进阶功能
  • 鸿蒙应用App测试-通用测试
  • 什么是 ASP.NET Core?与 ASP.NET MVC 有什么区别?
  • 怎麼解決IP地址衝突的問題?
  • 结对编程 --- 软件工程
  • Java学习路线:Maven(二)scope、optional和exclusions
  • Late Chunking×Milvus:如何提高RAG准确率
  • C++ 新手指南:如何使用 set 和 unordered_set
  • 2024年10月个人工作生活总结
  • 【网络】传输层协议TCP(下)
  • Android笔记(三十五):用责任链模式封装一个App首页Dialog管理工具
  • javaweb基于springboot社区养老服务管理系统
  • 【Linux】——操作系统-进程详解
  • 使用 Flutter 绘制一个棋盘
  • 通讯录(C 语言)
  • Java基础概览和常用知识(二十)
  • rclone 挂载是否会占用服务器的存储
  • 【c++语言程序设计】字符串与浅层复制(深拷贝与浅拷贝)
  • 《高等学校化学学报》
  • python 语法