函数和作用域

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

东华大学计算机学院
10
函数的返回值
ຫໍສະໝຸດ Baidu
函 数 的 定 义
• 函数的返回值通常指明该函数处理的结果, 由函数体中的return语句给出。例如:
return 0;
• 无返回值的函数(void类型),不必写return 语句,或者return的后面什么也没有。
2018/11/14
东华大学计算机学院
11
函数名
面向对象程序设计(C++)与实践 函数和作用域
2018/11/14
东华大学计算机学院
1
主要内容
• • • • • • • • 函数概述 函数的定义 函数的调用 函数的参数 内联函数 函数重载 标识符存储特性与标识符作用域 函数模板
东华大学计算机学院 2
2018/11/14
函数概述
函 数 概 述
• C++语言认为函数是一个能完成某一独立 功能的子程序,也就是程序模块。 • 函数是在对复杂问题的一种自顶向下,逐 步求精思想的过程。 • 编程者可以将一个大而复杂的程序分解为 若干个相对独立而且功能单一的小块程序 (函数)进行编写,并通过在各个函数之间进 行调用,来实现总体的功能。
东华大学计算机学院
12
形式参数表
函 数 的 定 义
• 逗号分隔的参数说明表列,缺省形式参数 时不能省略圆括号。 • 一般形式为:
类型 参数1 ,类型 参数2 ,… ,类型 参数n
• 无参函数:函数定义中的<参数表>被省略, 或<参数表>用void取代。 • 带参函数:若<参数表>不为空,同时又不 是保留字void。
函 数 的 定 义
• 函数名:一个有效的C++标识符,遵循一 般的命名规则。 • 在函数名后面必须跟一对小括号( ),用来 将函数名与变量名或其它用户自定义的标 识符区分开来。 • 在小括号( )可以没有如何信息,也可以包 含形式参数表。 • 主函数的名称规定取编译器默认的名称 main( )。
2018/11/14
2018/11/14
6
函数概述
函 数 概 述
• 函数定义由两部分组成:
• 函数首部; • 函数操作描述。
• 函数的调用:通过表达式或语句激活并执行函数代码 的过程。
// 求圆柱体体积 函数定义 # include <iostream> using namespace std; double volume ( double radius, double height ) { return 3.14 * radius * radius * height ; } void main( ) { double vol, r, h ; cin >> r >> h ; vol = volume ( r, h ) ; cout << "Volume = " << vol << endl ; 7 东华大学计算机学院 }
2018/11/14
东华大学计算机学院
5
函数概述
函 数 概 述
• 函数定义由两部分组成:
• 函数首部; • 函数操作描述。
• 函数的调用:通过表达式或语句激活并执行函数代码 的过程。
// 求圆柱体体积 # include <iostream> using namespace std; double volume ( double radius, double height ) { return 3.14 * radius * radius * height ; } void main( ) { double vol, r, h ; cin >> r >> h ; vol = volume ( r, h ) ; cout << "Volume = " << vol << endl ; 东华大学计算机学院 }
类型标识符
函 数 的 定 义
• 类型标识符:指明该函数的类型,也就是 该函数的返回值的类型。 • 此类型可以是C++中除函数、数组类型之 外的如何一个合法的数据类型,包括普通 类型、指针类型和引用类型等。 • 每个函数都要类型。如果在函数定义时没 有明确指定类型,则默认类型为int。
2018/11/14
2018/11/14
函数概述
函 数 概 述
• 函数定义由两部分组成:
• 函数首部; • 函数操作描述。
• 函数的调用:通过表达式或语句激活并执行函数代码 的过程。
// 求圆柱体体积 # include <iostream> using namespace std; double volume ( double radius, double height ) { return 3.14 * radius * radius * height ; } 函数调用 void main( ) { double vol, r, h ; cin >> r >> h ; vol = volume ( r, h ) ; cout << "Volume = " << vol << endl ; 东华大学计算机学院 }
2018/11/14
东华大学计算机学院
3
函数概述
函 数 概 述
• 函数(Function)是功能抽象的模块。
参数
输入流
函数
输出流
返回值
2018/11/14 东华大学计算机学院 4
函数概述
函 数 概 述
• 在C++程序中调用函数之前,首先要对函 数进行定义。如果调用此函数在前,函数 定义在后,就会产生编译错误。 • 为了使函数的调用不受函数定义位置的影 响,可以在调用函数前进行函数的声明。 这样,不管函数是在哪里定义的,只要在 调用前进行函数的声明,就可以保证函数 调用的合法性。
2018/11/14
东华大学计算机学院
13
函数体
函 数 的 定 义
• <函数体>:一条复合语句,以 { 开始,到 } 结束,中间为一条或若干条C++语句,用 于实现函数执行的功能。 • 注意:在一个函数体内允许有一个或多个 return语句,一旦执行到其中某一个return 语句时,return后面的语句就不再执行, 直接返回调用位置继续向下执行。
2018/11/14
8
函数的定义
函 数 的 定 义
• C++中的每个函数都是从四个方面来进行定义:
• • • • 类型标识符; 函数名; 形式参数表; 函数体。
• 语法形式:
类型标识符 函数名(形式参数表) { 函数体 }
是被初始化的内部变量, 寿命和可见性仅限于函数 内部
若无返回值,写void
2018/11/14 东华大学计算机学院 9
相关文档
最新文档