- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章的 成员函数
第五章 成员函数 北京信息工程学院 计算机系 牟永敏 第五章 成员函数 上一章中,我们介绍了描述对象属性的数据成员,如:圆的圆心坐标、圆的半径;弧的起始角和终止角等。然而,现实世界中的对象不仅具备了属性,而且还具备了行为。如:圆的显示(以属性中描述的圆心和半径画圆)、圆的隐藏、圆的移动,以及弧的显示、隐藏、移动等;一个对象可以有若干个行为,具备的行为越多,对象的功能就越强大。在计算机语言中,通常把对象的行为称为成员函数或方法,下面以C++ 语言为例,全面系统地讲述成员函数的分类、说明和调用。 5.1 成员函数的概念 为了实现对象的行为,我们把一些相关的语句组织在一起,并给它们注明相应的名称,形成一些相对独立而且便于管理和阅读的小块程序,每个小程序块描述了一个完整的行为,这种形式的组合就构成了成员函数。 5.2 成员函数的定义与调用5.2.1 成员函数的定义 说明一个函数原型的一般形式有两种: 函数返回值类型 函数名(参数类型1 参数名1,参数类型2 参数名2,…); 函数返回值类型 函数名(参数类型1 ,参数类型2 ,…); 5.2.2 成员函数的调用 一般形式有两种: 对象名 . 函数名(实参1,实参2,…); 对象指针→函数名(实参1,实参2,…); 5.2.3内联函数 内联函数的引入较好地解决了时间开销的问题。这是因为在程序编译时,编译器将程序中调用内联函数的表达式,用内联函数的函数体来代替。但是,由于编译时用函数体替代了调用表达式,因而增加了目标程序的代码量,带来了空间开销的增加。 定义内联函数的一般格式如下: inline int f_add( int x, int y) { return x + y; } 其中,inline是关键字,用来说明函数f_add ( ) 是一个内联函数。 请看下例: int main() { f_add( 2, 3) ; return 0; } 注意: (1)内联函数体内不允许使用循环语句和开关语句(这两种语句的介绍见5.4节); (2)内联函数的定义必须出现在内联函数第一次调用之前; (3)所有在类定义体内部定义的函数都是内联函数; 5.3 运算符和表达式 5.3.1 运算符及运算符优先级(1) 像代数中一样,C++中的运算符是连接参加运算的数据的符号,不同的运算符规定了不同的运算方法和不同的运算规则(如先乘除后加减) C++语言的运算符,基本上可以分为以下几种类型。见表5.1所示。 5.3.1 运算符及运算符优先级(2) 5.3.1 运算符及运算符优先级(3) 5.3.1 运算符及运算符优先级(4) 5.3.2 表达式 所谓表达式是指:用运算符将运算对象(也称操作数)连接起来的、符合语法规则的式子。 根据连接运算对象的连接符(运算符)的不同,大体上可以将表达式分为以下四种: 1.算术运算表达式(算术运算表达式的运算结果是数值 ) 2.逻辑运算表达式(逻辑运算表达式的运算结果是逻辑值 ) 3.赋值运算表达式(赋值运算符的结合性是从右向左的 ) 4.逗号运算表达式(逗号运算表达式的值是最后一个表达式的值 ) 5.3.3 数据类型的转换 类型转换就是将一种类型的值转换为另一种类型的值。 1.隐式类型转换 其转换过程是由系统按照一定的转换规则自动完成的 。 2.显式类型转换 显式类型转换的方法有两种。 (1) 强制转换法 强制转换法的格式为: (类型名)(表达式); 如: (int)x; (2) 函数法 函数法的转换格式为: 类型名(表达式); 如: int( x ); 为了提高程序的设计质量,1966年,Bohm和 Jacopini提出了在程序设计过程中,使用以下三种控制结构作为算法的基本单元。事实上,任何一个成员函数的定义都离不开这三种基本结构: 5.4.1 顺序结构 顺序结构是指程序语句按顺序,自上而下依次执行 5.4.2 选择结构(又称分支结构) 选择结构是指能根据选择条件,改变程序走向的一种语句 5.4.3 循环结构 循环结构是指能根据循环条
您可能关注的文档
最近下载
- 北部湾开发和深圳开发十大对比整理.pdf
- 水闸工程安全运行监督检查规范化指导手册(2022年版).doc
- 2024年疾控大学习国内外传染病监测预警案例分析答案.docx VIP
- 2024年人教版二年级上册数学期末培优及答案.doc VIP
- 丽声北极星分级绘本第四级上 Lorna Is Upset课件.pptx
- 宏基因组测序病原微生物检测生物信息学分析规范化管理专家共识.pdf VIP
- 《弹性力学》试题参考答案与弹性力学复习题集.doc
- 治疗作业活动篮球作业.pptx VIP
- 省第三批基础教育小学道德与法治学科教学研究基地学校实施方案——正德厚生 铺就人生底色.doc VIP
- AIDC基础设施建设白皮书 2024.docx
文档评论(0)