网站大量收购闲置独家精品文档,联系QQ:2885784924

绪论面向对象程序设计:通过增加软件可扩充性和可重用性来改善并提高程序员的生产能力,并控制维护软件的复杂性和软件维护的开销.ppt

绪论面向对象程序设计:通过增加软件可扩充性和可重用性来改善并提高程序员的生产能力,并控制维护软件的复杂性和软件维护的开销.ppt

  1. 1、本文档共172页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
绪论面向对象程序设计:通过增加软件可扩充性和可重用性来改善并提高程序员的生产能力,并控制维护软件的复杂性和软件维护的开销

定义或说明一个常数组可采用如下格式:   类型说明符 const 数组名[大小]…   或者   const 类型说明符 数组名[大小]… int const a[5]={1, 2, 3, 4, 5}; 常对象是指对象常量,定义格式如下:   类名 const 对象名   或者   const 类名 对象名   定义常对象时,同样要进行初始化,并且该对象不能再被更新 下面定义的一个指向字符串的常量指针:   char * const prt1 = stringprt1;   其中,ptr1是一个常量指针。因此,下面赋值是非法的。   ptr1 = stringprt2;   而下面的赋值是合法的:   *ptr1 = m; 因为指针ptr1所指向的变量是可以更新的,不可更新的是常量指针ptr1所指的方向(别的字符 下面定义了一个指向字符串常量的指针:   const char * ptr2 = stringprt1;   其中,ptr2是一个指向字符串常量的指针。ptr2所指向的字符串不能更新的,而ptr2是可以更新的。因此,   *ptr2 = x;   是非法的,而:   ptr2 = stringptr2;   是合法的。  2. 常引用   使用const修饰符也可以说明引用,被说明的引用为常引用,该引用所引用的对象不能被更新。其定义格式如下:   const 类型说明符 引用名   例如:   const double v;   在实际应用中,常指针和常引用往往用来作函数的形参,这样的参数称为常参数。   在C++面向对象的程序设计中,指针和引用使用得较多,其中使用const修饰的常指针和常引用用得更多。使用常参数则表明该函数不会更新某个参数所指向或所引用的对象,这样,在参数传递过程中就不需要执行拷贝初始化构造函数,这将会改善程序的运行效率。 #include const int N = 6; void print(const int *p, int n); void main() { int array[N]; for (int i=0; i cinarray[i]; print(array, N); } void print(const int *p, int n) { cout{*p; for (int i=1; i cout,*(p+i); cout} } 常成员函数   使用const关键字进行说明的成员函数,称为常成员函数。只有常成员函数才有资格操作常量或常对象,没有使用const关键字说明的成员函数不能用来操作常对象。常成员函数说明格式如下:   类型说明符 函数名 (参数表) const; 其中,const是加在函数说明后面的类型修饰符,它是函数类型的一个组成部分,因此,在函数实现部分也要带const关键字。下面举一例子说明常成员函数的特征。 #include class R { public: R(int r1, int r2) { R1=r1; R2=r2; } void print(); void print() const; private: int R1, R2; }; 基类与派生类的关系 任何一个类都可以派生出一个新类,派生类也可以再派生出新类,因此,基类和派生类是相对而言的。一个基类可以是另一个基类的派生类,这样便形成了复杂的继承结构,出现了类的层次。一个基类派生出一个派生类,它又做另一个派生类的基类,则原来的基类为该派生类的间接基类。 1. 派生类是基类的具体化。 2. 派生类是基类定义的延续。 3. 派生类是基类的组合。 派生类将其本身与基类区别开来的方法是添加数据成员和成员函数。因此,继承的机制将使得在创建新类时,只需说明新类与已有类的区别,从而大量原有的程序代码都可以复用。 如:class A { ??? public: ??? void f(); }; class B { ??? public: ??? void f(); ??? void g(); }; class C: public A,public B { ??? public: ??????? void g(); ??????? void h(); }; C obj; 赋值兼容规则 赋值兼容规则是指:在公有派生的情况下,一个派生类的对象可用于基类对象适用的地方。赋值兼容规则有三种情况(假定类derived由类base派生) : (1)派生类的对象可以赋值给基类的对象。

文档评论(0)

138****7331 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档