c+的+期末考试重点.docx

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

类1.类的定义:Class 类名{ 数据成员;Public: 成员函数声明;}; 成员函数定义(一定要加作用域“void 类名::函数参数”)例如:class Tdate{ //类的定义Int year,mouth,day;Public:Void set(int y, int m, int d);Bool isLeapYear();Void print();}; //类结束一定要加分号Void Date::set(int y, int m, int d){ //成员函数的实现Yeat=y; mouth=m; day=d;}Int main(){Date d; //定义对象d.set ( 2000,12,6) //成员函数的调用(点的方式调用,因为成员函数从属于类)}@类函数必须先在类体中作原型声明,然后在类外定义,也就是说类体的位置应在函数定义之前,否则编译时会出错。虽然函数在类的外部定义,但在调用成员函数时会根据在类中声明的函数原型找到函数的定义(函数代码),从而执行该函数。@注意:在类体中不允许对所定义的数据成员进行初始化。2,对象(是类的变量)Data d; // 定义对象时后面什么都不带时 就调用默认构造函数d.pritn(); //类对象调用方式d为对象,拥有操作的数据实体3.对象指针例如:date *p;p-print(); //对象指针间接调用方式(*p).print(); //一定要加括号否则会出错@对象数组定义:类名 对象数组名[20];Date points[20];对象数组的每一个元素都是一个对象,有多少个对象就调用多少个析构函数4、构造函数构造函数的作用:定义函数时初始化对象注意:默认构造函数和函数重载不能同时使用析构函数特点:无返回值,无形参,函数名为类名调用:自动调用必需使用构造函数的情况:当对象有多种初始化时,就需要重载当类的成员是指针同时涉及分配空间(此情况一定要写析构函数)当类中有子对象,常数据成员当该类是派生类三种构造函数:1、默认构造函数形式:类名() //data()没有返回值,函数名是类名,没有形参*系统自带默认构造函数,当定义了一个默认构造函数之后,系统定义的构造函数将被覆盖。如果手工定义了无参构造函数,或者其他的任何构造函数,则系统不再提供默认的无参构造函数。 P3022、带形参的构造函数形式: 类名(形参) //data(int n)没有返回值类型,函数名是类名,有形参,可重载运用:Eg:student(string n=”no name”,intssID=0):id(ssID), name(n) { }// id(ssID)对其他类进行初始化P306Eg:Class A{};Class B{};Class C{A a;Bb;Public C(int x,int y):b(X),a(y) { }};Int main(){ C c (15,9);}A 先定义,B先构造。调用时定义顺序说了算,构造对象说了不算3、带拷贝构造函数形式: 类名(类名 对象) //person (person $s) 调用:person p1(“jone”);@浅拷贝:就比如像引用类型,是指源对象与拷贝对象共用一份实体,仅仅是引用的变量不同(即名称不同),对其中任何一个对像的改变,都会影响另一个对象。@深拷贝:就比如值类型,源对象与拷贝对象相互独立,其中任何一个对象的改变都不会对另一个对象造成影响。所以,深拷贝还需要做动态内存分配。9、析构函数 形式: ~类名(); //~A() //函数名:“~A”功能:释放对象空间顺序: 先定义的后析构有一个析构函数必需写析构函数的情况: 当类的成员是指针变量时,需要动态申请空间时注意:析构函数和拷贝构造函数成对出现。析构函数的形式是唯一的,没有重载的析构函数,一个类中只有一个析构函数Eg: class A{ Public: A(){ cout”A-”;} ~A(){ cout”-~A”;}}4.常成员函数(const)运用:只对对象进行读操作形式:void data::print()const; //定义成员函数,只能调用,不能修改const int a=10; //定义常量,a的值不能修改调用:void print() const;void print();data t1;const data t2;t1.print(); // 先调用无const函数t2.print() //

文档评论(0)

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

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

1亿VIP精品文档

相关文档