函数与作用域教案详解.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文档。上传文档
查看更多
高级语言(C++)程序设计 第4讲 函数与作用域 主要内容(4学时) 学习目标 掌握函数的概念、定义和调用方法。 理解C++函数参数传递的方法:值传递和引用传递。掌握函数参数值传递的过程,并能够灵活运用。后面的章节中,将进一步学习引用传递。 理解内联函数的概念、作用,会定义内联函数。 理解函数重载的概念、作用,能够熟练地定义和运用重载的函数。 理解递归的概念,并能运用递归的方法解决一些实际问题。 理解变量的作用域与生存期的概念,能够理解全局变量、局部变量、静态变量的概念和用法。 重点难点 要掌握函数的定义、声明、调用的方法,函数参数传递方式、值传递的过程和运用,局部变量、全局变量和静态变量的概念与运用。函数的调用过程,带缺省参数的函数的定义和调用,递归的概念是本章的难点。 知 识 点 函数定义;函数声明;实参;形参;值传递;引用传递;内联函数;递归调用; 局部变量;全局变量;静态变量;函数重载 函数的定义 模块化的程序设计方法 函数的定义 函数定义的一般形式如下:   返回类型 函数名(参数表列)   {    语句系列    return 合适类型数值   } 函数的定义包括以下几个部分: 函数名:函数名应尽可能反映函数的功能,它常常由几个单词组成 参数表列:0个或多个变量,用于向函数传送数值或从函数带回数值,每一个参数都有自己的类型 返回类型:指定函数用return返回的函数值的类型,如果函数没有返回值,返回类型应为void。 函数体 :花括号中的语句称为函数体,一个函数的功能,通过函数体中的语句来完成。 函数的定义 范例 函数的定义 范例 函数说明 如果一个函数定义在后,调用在前,则调用该函数前必须进行说明,函数说明类似于函数定义,不过没有实现代码,函数说明的一般形式如下: 返回类型 函数名(参数表列); 函数说明是一个语句,所以要以分号结束。C++中,函数说明也称为函数原型. ▲作函数说明时,需要给出全部形参的类型信息。 #include iostream.h int Power (int base, unsigned int exponent); // int Power (int, unsigned int); void main (void) { … } int Power (int base, unsigned int exponent) { … } 函数调用 函数调用由函数名和函数调用运算符()组成,()内有0个或多个逗号分隔的参数(称为实参)。每一个参数是一个表达式,且参数的个数与参数的类型要与被调函数定义的参数(称为形参)个数和类型匹配。 当被调函数执行时,首先计算实参表达式,并将结果值传送给形参,然后执行函数体,返回的返回值被传送到调用函数。 函数调用 函数调用 参数传递 函数调用时,要将调用函数中实参传送给被调函数中的形参。在C++中,有两种参数传递方式,即值传递和地址传递(或称引用传递) 函数在被调用以前,形参变量并不占内存单元,当函数被调用时,形参变量分配有存储单元,并将相应的实参变量存储单元的值复制到形参变量单元。所以,被调函数在执行过程中,如果形参变量的值发生了变化,并不影响实参变量的值。 函数调用 传值调用 值传递也可以称之为赋值调用,这种方式是将实在参数表达式的值赋给充当形式参数的变量,实现的是一个传值的过程,即值拷贝的过程。函数中的形式参数的任何变化都不会影响到实参变量的值。 传址调用 形式参数用指针变量来充当,形实结合是将实在参数的指针传递给充当形式参数的指针变量。因此实现的是一个传地址的过程。在函数中对形式参数所指向的内存空间内容的变化也就是对实在参数内容的变化。 函数调用 传址调用 函数调用 引用调用 C++的一种函数调用方法,不适合C语言。 实现机制与特点: 引用是定义变量别名的方法,因此在引用调用中需要用引用变量来做函数的形式参数,在形实结合时将实在参数变量与充当引用变量的形式参数结合,从而实现变量与其引用的结合。因此,在函数中对形式参数的修改实际上是对其所引用的实在参数的修改。 函数调用 引用调用 设置函数参数缺省值 在C++中说明函数时,可以定义缺省参数,例如: void ShowMessage(char*Text, int Length = -1, int Color = 0); 调用该函数时,可以不必传送参数Length和Color的值,此时,编译器将Length的缺省值-1和Color的缺省值0传递到函数。 例:函数原型: void fun (int x, int y=0, int z=0); 调用: fun (1, 0, 1); fun (0); fun (0, 1); ▲当函数调用执行时,编译器从左到右顺序将实参与形参结合,若未指定足够的实参,则编译器

文档评论(0)

我是兰花草 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档