函数(二).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
函数(二)

函数(二) 函数调用时的参数传递 实际参数可以是常量、变量或表达式 实参类型必须与形参相符,或者兼容(可以自动转换) 参数传递过程:将参数复制一份,放到栈中,函数用栈里的参数,所以函数得到的只是实际参数的复制品,不是原始的实际参数,因此,函数无法改变实际参数的值。 回传参数 为了改变原参数的值,必须将原参数的地址传递给函数。 指针变量,存储的是一个地址。 引用变量,变量的别名,声明的时候初始化,不可更改。实际上也是一个地址。 引用(reference, 引用,指示,地址)传递 void swap(int a, int b){ int t; t=a; a=b; b=t; } inline functions 由于函数调用的时候要完成一些额外的操作,(保存调用现场,参数传递,代码跳转等),C++允许讲一些简单的函数直接编译到函数调用处,这就是inline functions。 定义:不同函数定义前加上inline关键字: inline type function_name (type var1, type var2, …) { body; } 平方函数: inline double square (double a) { return a*a; } inline 函数的使用 inline 只用来指示编译,没有语法上的意义。一般把需要大量调用的函数定义为inline 一般来说,inline的函数非常简单,是简单的赋值,取值,或者简单计算,一般不能有循环或者switch,也不能有异常处理接口。如果声明为inline的函数结构不适合inline,编译器会把函数处理为普通函数,有些优化编译选项将自动把所有适合inline的函数编译成inline,即使没有声明。 有默认参数值的函数 函数声明的时候可以给出默认参数值,调用的时候可以采用默认值,也可以采用输入值。 int sum(int a=0, int b=100, int step=1){ int i, s=0; for(i=a; i b; i += step) s += i; return s; } #include iostream using namespace std; main() { cout sum() sum(10); cout sum(10, 20) sum(5, 55, 5); } 带默认值函数的使用 默认值的声明从右向左,有默认值参数的右面不能出现没有默认值的参数。默认参数的匹配从左到右。 在不同的作用域内可以有不同的默认参数值。 不要与函数重载冲突 函数重载 函数调用的时候要求参数类型匹配(兼容),C++允许用同一个函数名定义不同的函数,只要参数的数目和类型不一样。一般用来定义功能相同,参数不同的函数。 重载与默认参数函数形式,不要混淆,如果编译器区别不了,会报编译错误。 运算符也可以重载,运算符相当于函数。 加函数的范例 用十六进制输出整型,单精度型,双精度型 C++运行库函数 常用库函数以及相应头文件 Visual Studio 6.0 Documentation - Visual C++ Documentation - Using Visual C++ - Visual C++ Programmer’s Guide - Run-Time Library Reference 搜索”The GNU C Library” /~lei/c/libc.pdf 这些常用库函数应该大致浏览一遍,知道都有一些什么函数,能完成什么功能。 需要包含的头文件 上机练习 写一个绝对值函数,返回不同类型参数(整数,浮点数,复数)的绝对值,没有参数则返回0。在程序中测试。 用二进制(0,1)输出任意一个字符型,整型,单精度型,双精度型数据 教材例题及习题

文档评论(0)

dlmus + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档