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进行加运算;

  

时间: 2024-08-07 00:15:07

GeekBand第二三周学习笔记的相关文章

第二三周学习总结

20182313 2019-2020-1 <数据结构与面向对象程序设计>第二周和第三周学习总结 教材学习内容总结 第二章: 加法及字符串的连接均用运算符"+"实现 不能将一个类型的值赋给与之不匹配的另一个类型的变量. Java中没有printf,只有print和println,二者的区别在于前者不会换行. 使用Scanner类时next后应该与数据类型int或是double对应起来. java中遵循严格定义的一组优先级规则,从而控制表达式中运算符的计算次序 第三章 一旦创建

Linux内核分析——第三周学习笔记20135308

第三周 构造一个简单的Linux系统MenuOS 计算机三个法宝: 1.存储程序计算机 2.函数调用堆栈 3.中断 操作系统两把宝剑: 1.中断上下文的切换:保存现场和恢复现场 2.进程上下文的切换 一.阅读Linux内核代码 本周我们要学习如何阅读Linux内核源代码,首先打开Lstest Stable Kernel:linux-3.18.6 arch/目录在Linux内核中占有相当庞大的代码量,因为Linux支持很多CPU,这个arch/x86目录下的代码是我们重要关注的代码 根目录中比较关

机电传动控制第三周学习笔记

特斯拉传记阅读 第三章高等移民中特斯拉在收入微薄,生活艰苦的条件下仍然努力地做着交流电动机的创造发明工作,在生活穷困潦倒,自己的发明创造不为人所知的情况下特斯拉仍能坚持下去,在自己的创造发明中得到巨大的精神快乐,这所要求的不仅仅是一个科研工作者丰富的想象力,大胆的创新能力,坚实的知识储备,更要求有对自己所做事业的无限的兴趣和激情,在面对挫折和困境时毫不退缩的勇气.在自己的创造发明遭受同时代发明大师爱迪生的抵制和反感时特斯拉仍然没有放弃自己将交流电系统应用于生产生活,推广向全世界的伟大梦想,在一贫

第三周学习笔记

import java.util.Scanner; public class TestScanner { public static void main(String[] args) { int nextValue; int sum = 0; Scanner kbInput = new Scanner(System.in);// 创建Scanner对象 kbInput.useDelimiter("\\s");// 设置分隔符指定为空格 两斜杠分别为转义字符 while (kbInput

Python第三周 学习笔记(1)

字典 key-value键值对的数据的集合 可变的.无序的.key不重复 初始化: d = dict() d = {} d = dict(**kwargs) 如:d = dict(a=1,b=2) dict(iterable, **kwarg) 使用可迭代对象和name=value对构造字典,不过可迭代对象的元素必须是一个二元结构 dict(mapping, **kwarg) dict.fromkeys(iterable, value) 字典元素的访问 d[key] 返回key对应的值value

20182327 2019-2020-1 《数据结构与面向对象程序设计》第二第三周学习总结

20182327 2019-2020-1 <数据结构与面向对象程序设计>第二第三周学习总结 教材学习内容总结 在第二章的学习中,首先学习了Java编程的基本格式,然后学会了定义.赋值.使用各种数据类型的变量,可以独立打印数据到屏幕上,最后掌握了如何使用Scanner类的一般使用方法. 从第三章中,我学到了由String.Math.Random等类创建对象(即实例化对象),如果要使用Java.long包以外的类,要使用import声明,最后枚举类型,包装类没有看懂. 教材学习中的问题和解决过程

《数据结构与面向对象程序设计》第二、三周学习总结

目录 20182319 2019-2020-1 <数据结构与面向对象程序设计>第二.三周学习总结 教材学习内容总结 教材学习中的问题和解决过程 代码调试中的问题和解决过程 代码托管 上周考试错题总结 结对及互评 评分: 点评过的同学博客和代码 其他(感悟.思考等,可选) 学习进度条 20182319 2019-2020-1 <数据结构与面向对象程序设计>第二.三周学习总结 @ 教材学习内容总结 ??这两周主要学习的是对于数据的类型以及输入输出的学习和对于几个常用的类的学习. ??首

机电传动控制课程第一周学习笔记

机电传动课程第一周学习笔记 本周的学习内容主要是第一章绪论和第二章机电传动系统的动力学基础,结合课程学习和预习复习回顾内容如下: 1.绪论:学习了机电传动控制目的与任务.发展历程和我们该如何学习这门课程. 2.机电传动系统的动力学基础: a.运动方程式:对于单一拖动系统或者多拖动系统,在分析时一般都折算到一根轴(电动机轴)上,折算的基本原则是,折算前的多轴系统同折算后的单轴系统在能量关系上或功率关系上保持不变.而对于单 走拖动系统的运动方程式如下. b.判断TM/TL的符号:主要概括为三条:规定

20145301第三周学习总结

20145301第三周学习总结 教材学习内容总结 第四章 4.1 类与对象 对象(Object):存在的具体实体,具有明确的状态和行为 类(Class):具有相同属性和行为的一组对象的集合,用于组合各个对象所共有操作和属性的一种机制 从类看对象:类定义可以视为一个具有类似特性与共同行为的对象的模板,可用来产生对象 从对象看类:类的产生,是从少数实例,推广到大量相似实例的抽象化过程(abstraction) 类是对象的设计图,对象是类的实例,生成对象要先定义类 4.2 基本类型包装 Long.In