面向对象程序设计——C++发展史与基础知识
前言
好开心!又学C++了,这次一定把书啃完!!!上次学的还是太片面了!加油~
学习要求:
32学时上课(8次)
24学时上机(6次)
平时成绩:30%
期末成绩:70%(纸质、线下考试)
读书要求:
《Head First 设计模式》
补充:
《C++ Primer Plus》
最重要的还是动手实践啦~,输入输出一定要平衡!
计算机基础知识
好嘛,每次讲计算机发展史都离不开人工智能。计算机的梦想绝对没有那么狭隘~
计算机的组成:存储器、运算器、控制器、输入、输出。
运算器(Arithmetic Unit)与控制器(Controller)构成了CPU(Central Processing Unit)的核心部分。
C++发展史
C语言开发时被用于设计UNIX操作系统,还是来自大名鼎鼎的贝尔实验室!但是C语言有什么问题呢?
- 检查机制较弱,错误不能在编译阶段发现
- 没有支持代码重用的语言机制,很难为其他程序所用
- 大规模程序很难控制程序的复杂性
1980年贝尔实验室对C语言进行改进与扩充,形成了现在熟知的C++编程语言。
在C语言的基础上,增加了运算符、引用的概念,取消了函数的默认类型。
C++与C语言区别
命名空间:using namespace std;
namespace指标识符的可见范围。C++标准程序库中的所有标识符都被定义于一个名为std的namespace中。即相当于全局变量,若在同一个namespace中不同的头文件里,有相同的函数,则在调用过程中会出现冲突。
何为面向对象?
要想知道什么是面向对象,需要首先知道什么是对象,什么是类。
什么是对象?
将客观实物看作具有属性和行为的对象。
什么是类?
对同类型对象抽象出共性,形成类。
什么是封装?
把对象的属性和服务结合成一个独立的系统单元。只保留有限的对外接口使之与外部发生联系。
什么是继承?
特殊类通过继承一般类拥有其共同属性和行为。
什么是多态?
一般类在被特殊类继承后,表现出不同行为或具有不同的数据类型。
使用面向对象的语言,更直接地描述客观世界中存在的实物以及它们之间的关系。
C++对面向对象方法支持:
- 数据封装
- 集成性
- 多态性