C++学习笔记_20200826
From:学堂在线 慕课课程《C++语言程序设计》 郑莉 清华大学
文章目录
1.4 面向对象的基本概念
对象
- 面对对象方法中的对象: 系统中用来描述客观事物的一个实体
抽象与分类
- 分类所依据的原则:抽象
- 类:同一类对象抽象出共同属性与行为而形成类
- 类与对象关系:类型(模具)与实例(铸件)的关系
封装
- 隐蔽对象的内部细节
- 对外形成一个边界
- 只保留有限的对外接口
- 使用方便(不必管原理)、安全性好
继承
- 意义在于软件复用
- 改造、扩展已有类形成新的类
多态
同样的消息作用在不同的对象上有可能引起不同的行为
1.5 程序的开发过程
计算机能理解的只有二进制语言代码,故需要由高级程序语言翻译(翻译程序)成机器程序语言
源程序
高级语言程序,源语言写的,有待翻译的程序
目标程序
源程序通过翻译程序加工以后生成的机器语言程序(二进制代码)
程序库程序
已写的程序模块,以备直接调用
可执行程序
连接目标程序以及库中的某些文件生成一个可执行文件(例如exe文件)
翻译工具
- 汇编程序
- 将汇编语言中的助记符翻译成机器语言中的二进制代码
- 编译程序(也叫编译系统或编译环境)
- 将高级语言源程序翻译成目标程序(二进制代码),一次翻译,终生可用,无需再次翻译
- 解释程序
- 也是处理高级语言,做翻译,与编译程序差别在于什么时候翻译,翻译多少次:边翻译边执行,每次都需如此
- 将高级语言源程序翻译成机器指令
- Java(半编译,半解释)
C++程序的开发过程
- 算法与数据结构的设计
- 源程序编辑
- 编译
- 连接
- 测试:用各种数据试
- 调试:找到错误的原因并修改好
1.6.1 计算机中的信息与存储单位
计算机的基本功能
- 算数运算
- 逻辑运算
计算机中信息
- 控制信息(指挥计算机操作)
- 数据信息(计算机程序加工的对象)
- 数值信息
- 定点数
- 浮点数
- 非数值信息
- 字符数据
- 逻辑数据
- 数值信息
信息的存储单位
- 位(bit,b)
- 数据的最小单位,表示一位二进制信息
- 字节(byte,B)
- 八位二进制数字组成(1 byte = 8 bit)
- 千字节 1 KB = 1024 B
- 兆字节 1 MB = 1024 K
- 吉字节 1 GB = 1024 M
1.6.2 计算机的数字系统
计算机的数字系统
- 二进制系统
- 基本符号:0,1
程序中的常用数制
数制的转换
- R 进制 → \rightarrow → 十进制:各位数字与它的权相乘,其积相加
- 十进制整数 → \rightarrow → R 进制整数: 除以R取余法,开始产生的余数是最低位的,最后产生的余数是最高位的
- 十进制小数
→
\rightarrow
→ R 进制小数:乘以R取整法
- 例子:
要把 0.3125 转换乘二进制小数,不断乘以 2. 第一次乘以 2,整数位为 0,则把 0 放在高位;再只取其小数部分 0.625 乘以 2,一直持续这个过程,直到小数部分为0. 把乘以 2 的整数部分的内容依次列出,最开始形成的整数作为最高位,最后形成的整数作为最低位。完成。
- 例子:
- 二进制与八进制、十六进制之间的相互转换:三个二进制位对应一个八进制位,四个二进制位对应一个十六进制位。