C++类与继承知识点.doc

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

总结 类与继承知识点 第三章 类和对象 1.类 ① 类定义的关键字是 class ; ② 类的访问限定符包括 public、 private 和 protected ; ③ 类成员默认的访问方式是private; ④ 访问限定符在类中无先后次序,各限定符允许多次出现; ⑤ 类的数据成员通常指定为私有成员;函数成员通常指定为公有成员; ⑥ 指定为公有的类成员可以在类对象所在域中的任何位置以“对象名.成员变量”形式访问; ⑦ 类的私有和保护只能被该类的成员函数或友元函数访问。 2.函数原型三要素:函数返回类型;函数名;形参列表(至少要有形参类型) eg;int f(int,int,int) 3.拷贝构造函数(复制构造函数)的三种调用情况: (当类的一个对象去初始化该类的另一个对象时; (如果函数的形参是类的对象,调用函数进行形参和实参结合时,形参建立; (如果函数的返回类型是类类型,函数调用完成返回时,return 语句返回的对象值会初始化访问该函数的匿名对象; 4.析构函数的调用情况 当类对象过期时,程序将自动调用析构函数,不用再代码中显示调用 5.对象不能调用构造函数,因为构造函数是用来创建对象的,之前不存在对象 6.默认构造函数的两种形式:参数都有默认值;无参数 7.当默认构造函数无参数时,私有成员将会是随机值; 8.构造函数的参数名不能与类成员相同,参数表示的不是类成员,而是赋给类成员的值 9.构造函数无返回类型、可带参数、可重载;析构函数无返回类型、不可带参数、不可重载。 10.当一个对象定义时,C++编译系统自动调用构造函数建立该对象并进行初始化;当一个对象的生命周期结束时,C++编译系统自动调用析构函数注销该对象并进行善后工作; 11.如果一个类中没有定义拷贝构造函数时,系统将自动生成一个默认的;拷贝构造函数只有一个参数,并且是该类对象的引用;拷贝构造函数的名字与类同名,并且不被指定返回类型;拷贝构造函数是一种成员函数。 12.构造函数的任务是建立对象,类中可以有多个构造函数,它们由参数区分。如果类说明中没有给出构造函数,则C++编译器会提供构造函数,该函数不完成对象初始化工作。 13.复制构造函数的参数是对象的复制,当程序没有给出复制构造函数时,编译系统会提供 默认复制构造函数 ,完成类对象的复制。复制构造函数被调用情况有3种。 14.析构函数在对象释放时被自动调用。类中没有定义析构函数时,编译系统会提供一个默认的析构函数。该函数不完成具体对象的清理工作。 15.对象初始化发生的三个地方: (定义对象时; (函数调用时的值传送,即形参被建立,存在初始化 (函数的返回类型为类类型时,return语句返回的对象值将被用于初始化调用该函数的匿名对象 16.对象成员一定要通过初始化表来初始化;初始化的顺序是按在类中声明的顺序进行,与初始化表中出现的顺序无关 17.析构函数的调用顺序与构造函数的调用顺序相反 18.静态成员:static int i;static int f(int i) ( 静态数据成员为所在类的所有对象共享,可以修改; ( 静态数据成员一定是在类中声明,类外初始化; ( 静态成员函数只能访问该类的静态数据成员或静态成员函数; ④ 静态成员函数没有this指针; ⑤ 以类名+作用域运算符的形式访问静态成员函数; 19.常量成员:const int m;(常引用) const int j;(常变量) const CPoint p;(常对象) void buy()const;(常量成员函数) ( 常量数据成员的初始化必须在初始化表中完成,不可修改 ( 常量成员函数中,不能有修改类中数据成员的语句(可以访问),也不能访问类中的非常量成员函数 20.友元三种形式: ( 外部函数可以访问A类数据成员 ( A类中的一个成员函数可以访问B类数据成员 ( A类中所有的成员函数都可以访问B类数据成员 21.友元函数是非成员函数,在类体内说明了,在类体外定义,定义和调用等同于一般的普通函数;有和成员函数相同的访问权限;由于它可以直接访问类的私有成员,因此破坏了类的封装性和隐藏性,尽量少用; 22.this指针是一个隐含在成员函数中的特殊指针,用于指向正在被成员函数操作的对象 ( 非静态成员函数指针在主程序中的定义形式: double(CPoint::*pFun)()=CPoint::getx; 修改函数指针的指向: pFu

文档评论(0)

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

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

1亿VIP精品文档

相关文档