[理学]_C++程序的结构.ppt

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]_C程序的结构

不被包含在任何形式的括号中,如 {},() * * 注意: 匿名命名空间中的标志符可以被同文件的函数引用,但无法被文件外的函数引用. 源文件中定义变量,头文件中声明变量extern int x或函数 静态变量具有专门的存储区域,静态存储区 两个函数中都有a,b,c在other函数中到底应该使用哪个呢? 逐条语句执行分析给出结果。 静态数据成员与非静态数据成员的分开存储 void get_c( ) 是内联函数,提醒学生回忆 静态数据成员在构造函数内初始化会怎么样? * 编译错误:X私有成员访问违法。 问题:定义一个引用时可以不进行初始化吗? Int I; Int j; J=I; 建议避免出现void fun( ) ;void fun( ) const ; 重载 常数据成员通过初始化列表获得初值 * * * 程序的debug版和release版 * * #include是个什么样的操作?为什么会导致重定义呢? * //EX5_4.cpp : 演示常引用做形参 #includeiostream.h void display( const double r ) ; //常引用做形参 { cout“r=”++rendl ;} //错误:更改常引用的对象r void main( ) { double d( 6.5 ) ; display( d ) ; } 这段程序编译时有一个错误: error C2166: 1-value specifies const object。 如果将display函数的定义语句改为: coutr=rendl; 则得程序运行结果为: r=6.5 常引用 非const的引用只能绑定到普通的对象,而不能绑定到常对象,但常引用可以绑定到常对象和普通的对象。 一个常引用,不管它绑定到的是普通对象还是常对象,通过该引用访问该对象时,都只能把该对象当作常对象。 int i,j; const int k; const int l; const int ir=i; //定义常引用 int jr=j; //普通引用 int kr=k; //普通引用 const int lr=l; //定义常引用 使用const关键字声明的对象称为常对象。常对象的声明形式为 const 类名 对象名 或 类名 const 对象名 声明常对象的同时,要进行初始化,而且该对象以后不能再被更新。 3. 常成员函数 使用const 关键字声明的函数称为常成员函数,常成员函数声明的形式为 类型标识符 函数名(参数表) const; 2. 常对象 说明: (1) const是加在函数声明后面的类型修饰符,它是函数类型的一个组成部分,因此在实现部分也要带const关键字。 (2) const关键字可以被用于对重载函数的区分,例如,可以在类中这样声明: void fun( ) ; void fun( ) const ; 通过非const对象A调用A.func()时,两个重载函数都可匹配,编译器将优先匹配不带const的成员函数。 (3) 常成员函数不能更新对象的数据成员,也不能调用该类中没有用const修饰的成员函数。 (4) 常对象只用于调用它的常成员函数,而不能调用其他成员函数。 (5)普通函数(非类的成员函数)不能使用const关键字。 //EX5_5.cpp : 演示常成员函数 #includeiostream.h class A { private: int x , y ; public: A ( int i=0, int j=0 ) { x=i ; y=j ;} void fun( ) //定义普通成员函数 { cout成员函数:x=x, y=yendl ; } void fun( ) const //定义常成员函数 { cout常成员函数:x=x, y=yendl ; } }; void main( ) { A obj1( 1, 2 ) ; //声明普通对象obj1 obj1.fun( ) ; //调用普通成员函数 const A obj2( 3, 4 ) ; //声明常对象obj2 obj2.fun( ) ;

文档评论(0)

skvdnd51 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档