- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
思考题 1、在类F2中声明了下列函数原型:错误的是 ;构造函数原型是 ;成员函数原型是 ;析构函数原型是 ; int fl(int,char buffer); B、~F2(); C、F2(int x,int y); D、f3(Myclass *ptr); 2、在下列函数原型中正确的是 、 、 ;错误的是 ; int add(int X=3,int y=4,int Z=5); B、int add(int X,int y=4,int Z); C、int add(int X, int y=4,int Z=5); D、int add(int X,int y,int Z=5); 3、在下列重载函数的调用时可能发生错误的是 、 ;不发生错误的是 、 ; int print(int X); B、int disp(Myclass A); void print(float ); char *disp(Myclass A); C、int show(int X); D、int view(int X,int y); int show(char *s); int view(int X); 第五章 完 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * 第五章 成员函数 北京信息工程学院 计算机系 牟永敏 第五章 成员函数 上一章中,我们介绍了描述对象属性的数据成员,如:圆的圆心坐标、圆的半径;弧的起始角和终止角等。然而,现实世界中的对象不仅具备了属性,而且还具备了行为。如:圆的显示(以属性中描述的圆心和半径画圆)、圆的隐藏、圆的移动,以及弧的显示、隐藏、移动等;一个对象可以有若干个行为,具备的行为越多,对象的功能就越强大。在计算机语言中,通常把对象的行为称为成员函数或方法,下面以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 运算符及运算符
文档评论(0)