C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计
目录 “ 基本知识 编程技能 刨根问底 程序设计语言 程序设计 程序开发过程 最简单的C++程序 内存模型 C++语言程序设计
基本知识 a C++语言程序设计
1.1 程序设计语言 机器语言 汇编语言 高级语言 简单的“0”和“1”的组合,硬件相关。 将机器语言映射为一些可以被人们读懂的助记符,如“ADD”、“SUB”等,与硬件相关。 高级语言 接近自然语言。 C++语言程序设计
1.1 程序设计语言 高级语言 例如:要向屏幕打印一个“A”字符 面向过程的语言 面向对象的语言 BASIC语言: PRINT “A” BASIC、PASCAL、C 面向对象的语言 C++、JAVA、Python 例如:要向屏幕打印一个“A”字符 BASIC语言: PRINT “A” PASCAL语言: writeln(‘A’); C语言: printf(“A”); C++语言: cout << “A”; JAVA语言: System.out.print("A "); Python语言: print(‘A’); C++语言程序设计
1.1 程序设计语言 C语言的历史 1、贝尔实验室的Dennis Ritchie开发 2、在B语言的基础 3、作为Unix操作系统的开发语言 1988年,第二版《The C Programming Language》,是最经典的标准C的书籍 C语言之父Dennis Ritchie C++语言程序设计
1.1 程序设计语言 C语言是一门面向过程的程序语言 优点: 缺点: C++语言程序设计 可直接访问内存 程序运行效率高 可移植性好 类型检查机制较弱 C++语言程序设计
C++语言在此基础上增加了面向对象的支持。 1.1 程序设计语言 C++语言是从C语言发展演变而来。 C++包含了整个C,C是建立C++的基础。 C++包含C的所有特征、属性、优缺点。 C++语言在此基础上增加了面向对象的支持。 C++语言 C语言 面向对象 C++语言程序设计
1.1 程序设计语言 C++语言的特点 使用面向对象方法,易于代码重用 适用于大型软件工程项目,易于管理 代码可维护性好 Bjarne出版了的经典C++著作《The C ++ Programming Language 》,1991年第2版,1997年第3版,2000年特别版,他被誉为C++之父。 C++之父 Bjarne stroustrup C++语言程序设计
1.2 程序设计 面向过程的程序基本结构 1、顺序 2、分支 3、循环 C++语言程序设计 是 否 是 否 开始 执行1 执行2 条件 结束 1、顺序 2、分支 3、循环 开始 执行1 执行2 条件 结束 是 否 开始 执行1 执行2 执行3 结束 开始 条件 执行2 执行1 结束 是 否 C++语言程序设计
1.2 程序设计 面向过程的程序设计主要思想 自顶向下、逐步求精 C++语言程序设计 计算每门课的平均成绩 多少门课 学生人数 每门课总分 /学生人数 选课学生档案 每个学生该 门课的成绩 累加 选择一门课 选课的学生 读数据 C++语言程序设计
1.2 程序设计 面向过程的程序设计主要思想 模块化 C++语言程序设计 将一个大的系统按照子结构之间的疏密程度分解为较小的部分,每部分称为模块。 分解的原则是:模块之间相对独立,联系较少。 提供给模块外部可见的只是抽象数据及其上的抽象操作,隐藏了实现细节。 整个程序由多模块组成,模块一般以函数为单位。 C++语言程序设计
面向对象的程序设计将数据和处理数据的函数当成一个整体:类(类的实例称为对象) 1.2 程序设计 面向对象的程序设计将数据和处理数据的函数当成一个整体:类(类的实例称为对象) 封装 由对象的概念支持。只需知道外部接口,不需知道内部实现,就可以使用的特性。 继承 由类的概念支持。利用已有的成果进行扩展,充分体现了代码重用。 多态 运行时特性。 C++语言程序设计
1.2 程序设计 面向对象的程序设计的步骤: 1) 找出问题中的对象和类。 2) 确定每个对象和类的功能,如具体的属性和方法等。 3) 找出这些对象和类之间的关系,确定对象之间的消息通信方式、类之间的继承和组合等关系。 4) 编写程序实现这些对象和类。 C++语言程序设计
1.2 程序设计 面向对象程序设计的特点: 适合大型软件工程项目,易于开发管理,易于后续维护; 封装了数据和函数,其中的函数仍然要用结构化程序设计。 C++语言程序设计