C++简明教程第一章.ppt

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C简明教程第一章

* * * * * * 交换函数以引用为参数,达到了交换目的。 * * * * 1.13 缺省参数 (续) 如果函数调用时没有给出实参,则缺省的参数值将传给形参. 通常缺省的参数值都出现在函数原型中. * 1.14 引用作函数参数 引用是另一个变量的别名(例子姓名、学号). 使用引用作参数可以使得函数访问、修改该引用对应的变量值. * 函数的参数传递 ——用引用做形参 引用()是标识符的别名,例如: int i,j; int ri=i; //建立一个int型的引用ri,并将其 //初始化为变量i的一个别名 j=10; ri=j;//相当于 i=j; 与取地址做区分 i ri * 函数的参数传递 ——用引用做形参 声明一个引用时,必须同时对它进行初始化,使它指向一个已存在的对象。 * 函数的参数传递 ——用引用做形参 不对引用进行第二次修改 4 20 4 20 20 20 * 例 输入两个整数交换后输出 #includeiostream.h void Swap(int a, int b); int main() { int x(5), y(10); coutx=x y=yendl; Swap(x,y); coutx=x y=yendl; return 0; } 引用可以作为形 void swap(int a, int b) {...} * void Swap(int a, int b) { int t; t=a; a=b; b=t; } 运行结果: x=5 y=10 x=10 y=5 * 输出结果? * 4 4 8 4 * 1.14引用作函数参数 (续) 多个引用作参数: void add (int ,int ,int , int ); void add (int sum, int n1, int n2, int n3) { … } 警告! 不要过多地将引用作函数参数,否则会产生潜在的隐患 引用大多数情况下是作为函数参数使用,而非在一个函数中 * 1.15 函数重载 就是定义多个函数,名字相同,但参数类型或参数个数不全相同. 常见的情况是给不同的函数以不同的名字。但是,当某些函数在不同类型的对象上指向概念上相同的工作时,去相同的名字就更方便了 * 1.15 函数重载 问题:实现加法运算(int, float, double,string) * 1.15 函数重载 问题:实现加法运算(int, float, double,string) * 重载函数的声明 C++允许功能相近的函数在相同的作用域内以相同函数名声明,从而形成重载。方便使用,便于记忆。 例: 形参类型不同 int add(int x, int y); float add(float x, float y); 形参个数不同 int add(int x, int y); int add(int x, int y, int z); * 注意事项 不要将不同功能的函数声明为重载函数,以免出现调用结果的误解、混淆。这样不好: int add(int x,int y); int add(int a,int b); 编译器不以形参名来区分 int add(int x,int y); void add(int x,int y); 编译器不以返回值来区分 int add(int x,int y) { return x+y; } float add(float x,float y) { return x-y; } 重载函数的形参必须不同: 个数不同或类型不同。 编译程序将根据实参和形参的类型及个数的最佳匹配来选择调用哪一个函数。 * int square(int); // 原型 float square(float); // 原型 void main(void) { int i_a; float f_b; cin i_a f_b; cout square(i_a ) and square(f_b); } int square(int number) { return number * number; } float square(float number) { return number *

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档