文档详情

面向对象程序设计及C++ 第2版 教学课件 作者 朱立华 俞琼 第2章_C++对C的改进及扩展new.ppt

发布:2017-08-18约1.93万字共69页下载文档
文本预览下载声明
Basic of Basic 主讲: 第2章 C++对C的改进及扩展 本章作业 作业本:本章习题:一、二、三、四、五(1 、 2、3) 本章内容提要 2.1 函数中一些基本控制的区别 2.2 有关函数的区别 2.3 新增引用的灵活应用 2.4 动态内存空间管理 2.5 C++中的异常处理 本章小结 2.1.1 C++语言用I/O流实现输入/输出 通过例2.1理解C++更为方便的输入输出控制方式 【例2.1】C++语言风格与C语言风格的源程序举例。 /*C语言风格的源程序example2_01.c ,读入几个变量,运算后输出*/ #include stdio.h int main( ) { char c; int a; /*定义变量c、a、f */ float f; scanf(%c%d%f,c,a,f); a=a+c; f=f+2*a; printf(c=%c a=%d f=%.1f\n,c,a,f); return 0; } 2.1.1 C++语言用I/O流实现输入/输出 以上两个不同风格的程序,编译链接后, 若输入:A 25 109.356回车 输出均为:c=A a=90 f=289.4 2.1.1 C++语言用I/O流实现输入/输出 在C++中,将数据从一个对象到另一个对象的流动抽象为“流” 在C++中,数据的输入和输出是通过I/O流来实现的 cin和cout是系统预定义的流类对象 .cin是C++中的标准输入流,代表标准输入设备,即键盘; cout是C++中的标准输出流,在程序中用于代表标准输出设备,通常指显示器。 必须用#include iostream及using namespace std;或用#include iostream.h作文件包含,才能使用cin和cout cin还要配合使用系统预定义的提取符“”。格式为:cin变量1变量2…;提取符“” 后面只能跟变量,表示把从输入流cin读取的数据传送给运算符“”右边指定的变量。 cout还要配合使用系统预定义的插入符“”。格式为:cout表达式1表达式2…;从表达式1开始的各表达式值依次送显示器输出。 2.1.1 C++语言用I/O流实现输入/输出 例程中用cin和cout输入/输出数据时,全部使用了系统默认的格式,实际上可以利用操纵符进行格式控制,具体见第8章。 C++中新增加了一种换行控制符endl,与C语言中常用的’\n’等效,实现输出时的换行。 例如下面两条语句的执行效果完全一样: couta=aendl; 和 couta=a\n; 2.1.2 新增的单行注释 example2_01.cpp中出现了一种以“//”开始的注释方式 C++语言新增加单行注释方式“//” ,其注释内容是从“//”开始到本行结尾,只对单行有效,这种注释方式特别适合于注释内容不超过一行的情况。 C++语言仍支持C语言的提供的/*…*/的注释方式,通常用于进行注释内容为多行的情况。 某些情况下两种注释方式可以嵌套,但不建议这样使用 2.1.3 使用const定义常量 在C语言中,定义一个符号常量需要用宏定义#define来实现,例如: #define PI 3.14159 但是宏定义存在一个缺陷,对常量只作简单的替换而不作类型检查,容易出错。 C++中常用const进行常量定义, 几点说明: 用const定义符号常量的基本形式为: const [常量类型] 符号常量名=常量值; 缺省的“常量类型”为int型,const定义的符号常量有自己的数据类型,因此C++编译程序可进行更加严格的类型检查 符号常量定义的最后一定要有分号 2.1.3 使用const定义常量 例2.2:两种符号常量定义的区别示例 #include iostream using namespace std; int main( ) { int x=5; #define T1 x+x //用宏定义定义常量T1 #define T2 T1-T1 //用宏定义定义常量T2 cout“T1=”T1“ T2=”T2; return 0; } 2.1.3 使用const定义常量 const与指针的结合 在后续章节中,还将涉及const与引用结合、用const定义类的常成员、常对象等用法。 2.1.4 新增的强制类型转换方式 C++语言中仍支持C语言中的类型转换形式,即: (目标类型名)待转换源数据。 例如:将一个float型的值转换为int型结果,可以使用如下格式进行转换: float f=100.23;
显示全部
相似文档