C++学习总结.docx

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

C++课程总结类和对象的特性声明类类型:声明类的方法是由声明结构体类型的方法发展而来的。Class是声明类类型的关键字。Class Student{Private:Int num;Char name[20];Char sex;Public:Void display(){Cout”num:”numendl;Cout”name:”nameendl;Cout”sex:”sexendl;}}Student stud1,stud2;如果在类的定义中既不指定private,也不指定public,则系统就默认为是私有的。Class 类名{Private:私有的数据和成员函数;Public:公有的数据和成员函数;};定义对象的方法:先声明类类型,然后再定义对象:Student stu1,stu2;// Student 是已经声明的类类型在C++中,定义对象有两种形式,class 类名 对象名;Class student stud1,stud2;类名 对象名Student stud1,stud2;类的成员函数:私有的成员函数只能被本类中的其他成员函数所调用,而不能被类外调用。在类外定义成员函数:Class student{Public:Void display();Private:Int num;String name;Char sex;};Void student ::display(){Cout”num:”numendl;Cout”name:”nameendl;Cout”sex:”sexendl;}Student stud1,stud2;“::”是作用域限定符,或称作用域运算符,用它声明函数是属于哪一个类的。Student::display()表示student 类中的作用域中的display函数,也就是student类中的display函数..9.1利用构造函数对类对象进行初始化构造函数是一种特殊的成员函数:与其他成员函数不同,不需要用户来调用它,而是建立对象时自动执行。在建立对象时系统为该对象分配存储单元,此时执行构造函数,就把指定的初值送到有关数据成员的存储单元。每建立一个对象,就调用一次构造函数。构造函数没有返回值,因此也没有类型,它的作用只是对对象进行初始化。因此也不需要在定义构造函数时声明类型。不能写成:Int Time(){...}或Void Time(){...}1.构造函数不需用户调用,也不能被用户调用。2.可以用一个类对象初始化另一个类对象。Time t1;//建立对象t1,同时调用构造函数t1.Time()Time t2=t1; //建立对象t2,并用一个t1初始化t2.在构造函数函数体中不仅可以对数据成员赋初值,而且可以包含其他语句。如果用户自己没有定义构造函数,则C++系统会自动生成一个构造函数。只是这个函数体是空的,也没有参数,不执行初始化操作。带参数的构造函数:构造函数名(类型1形参1,形参2形参2...)例:Box box1(12,25,30);在建立对象时同时指定数据成员的初值。用参数初始化表对数据成员初始化:Box::Box(int h,int w,int len):height(h),width(w),length(len){}类名::构造函数名([参数表])[:成员初始化表]{[构造函数体]}使用默认参数的构造函数:构造函数中参数的值既可以通过实参传递,也可以指定为某些默认值,即如果用户不指定实参值,编译系统就使形参取默认值。1.应该在声明构造函数时指定默认值,而不能只在定义构造函数时指定默认值。程序在声明构造函数时,形参名可以省略。Box(int=10,int=10,int=10);2.一个类只能有一个默认构造函数,可以不用参数而调用的构造函数,一个类只能有一个。为了避免调用时的有歧义性。Box();//声明一个无参的构造函数。Box(int =10,int =10,int =10);//声明一个全部参数都指定了默认值的构造函数。3.如果同时定义了以上两个构造函数,是错误的。4.在一个类中定义了全部是默认参数的构造函数后,不能再定义重载构造函数。析构函数:他的名字是类名前面加一个“~”。在c++中“~”是位取反运算符,析构函数和构造函数是作用相反的函数。如果一个函数中定义了一个对象(假设是自动局部对象),当这个函数被调用结束时,对象应该释放,在对象释放前自动执行析构函数静态(static)局部对象在函数调用结束时并不释放,因此也不调用析构函数,只在main函数结束时或调用exit函数结束程序时,才调用static局部对象的析构函数。如果定义了一个全局的对象,则在程序的流程离开其作用域时(如main函数结束或调用exit函数)时,调用该全局的对象的析构函数。如果new运算符动态地建立了

文档评论(0)

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

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

1亿VIP精品文档

相关文档