第9章 从结构程序设计到面向对象.pptVIP

  • 3
  • 0
  • 约9.15千字
  • 约 44页
  • 2018-11-19 发布于江苏
  • 举报
第9章 从结构程序设计到面向对象

第9章 从结构化程序设计到面向对象的程序设计 教学目标 了解C++对C的扩充和改进 掌握面向对象程序设计的基本思想和方法 掌握面向对象的概念 理解面向对象程序设计的特性 9.1 C++对C的改进和扩充 9.2 面向对象程序设计方法 9.1 C++对C的改进和扩充 输入输出流 函数的重载 带默认参数的函数 内联函数 一元作用域运算符 引用与函数 输入输出流 scanf和printf输入输出的缺陷 输入输出流的概念: 输入输出是以字节流的形式实现的,流实际上是一个字节序列。 在输入操作中,字节从输入设备流向内存;输出操作中,字节从内存流向输出设备。 流是一个抽象的概念,实际进行输入输出时,流通常都是和某种具体的物理设备联系起来。键盘和显示器是计算机的标准输入输出设备,数据从键盘或磁盘文件流入内存的操作称为提取操作,数据从内存流向屏幕或磁盘文件称为插入操作。 用cout进行输出 用cout进行输出时必须与预定义的插入符一起使用,输出时不用指定数据类型,系统自动按数据类型进行输出。 #include iostream.h void main() { int i = 10; float j = 8.5; char *str = Windows!; cout i= i endl; cout j= j endl; cout str= str endl; } 用cin进行输入 用cin进行输入时必须与预定义的提取符一起使用,输入时不用指定数据类型,也可以使用多个提取符,将键盘输入的数据送到输入流cin中,然后存到内存。 #include iostream.h void main() /*主函数*/ { int i1 , i2 , sum; /*变量定义*/ cout Enter two integer numbers:\n; /*输出提示信息*/ cin i1 i2; /*输入数据*/ sum = i1 + i2; /*计算i1,i2的和*/ cout sum= sum endl;/*输出sum的值*/ } 函数的重载 1、重载的需要性 在C中,每个函数需要唯一的名字,例如,求两个数中较大的数,对于不同类型需要不同的名字: int imax(int ,int ); float fmax(float,float); double dmax(double,double); 函数的重载:即建立多个同名函数,但每个函数的参数个数或类型不同,系统根据参数个数和类型决定调用哪个函数。例如,将上面三个函数的声明改为: int max(int ,int ); float max(float,float); double max(double,double); 2、使用说明 仅返回类型不同,但函数名和形参都相同,则是非法的,如: int fun(int a,int b); long fun(int a,int b); 同名函数应该具有相同的功能,仅数据类型不同而已,否则可读性受破坏 当重载函数有默认参数时,应避免二义性 int fun(int a,int b=0); int fun(int a); //error 【例9-1】参数类型上不同的重载函数 #includeiostream.h int add(int , int); double add(double , double); void main() { cout add( 5 , 10 ) endl; cout add( 5.6 , 10.2 ) endl; } int add(int x , int y) { return x + y; } double add(double x , double y) { return x + y; } 【例9-2】参数个数上不同的重载函数 #includeiostream.h int min( int a , int b ); int min( int a , int b , int c ); void main() { cout min( -2 , 8 ) endl; cout min( 3 , 5 , 4 ) endl; } int min( int a , int b ) { return a b ? a : b; } int min( int a , int b , int c ) { int t = min( a , b );

文档评论(0)

1亿VIP精品文档

相关文档