C ++培训之 数据抽象

C ++培训之 数据抽象

ID:43185876

大小:311.50 KB

页数:37页

时间:2019-10-01

C ++培训之 数据抽象_第1页
C ++培训之 数据抽象_第2页
C ++培训之 数据抽象_第3页
C ++培训之 数据抽象_第4页
C ++培训之 数据抽象_第5页
资源描述:

《C ++培训之 数据抽象》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、数据抽象第三章回顾引用默认参数内联函数函数重载2目标类成员变量成员函数this指针对象数组3类定义数据的类型以及操作这些数据的函数类的实例称为对象类中的变量和函数称为成员4私有和公有2-1类成员可以在类的公有或者私有部分声明数据成员通常在私有部分中声明在公有部分中声明的成员可以被该类外部的函数访问公有部分构成类的接口privatepublic5私有和公有2-2无法从类的外部访问私有数据其他类的私有数据对于当前类也是隐藏的类数据或函数数据或函数私有公有不可从类的外部访问可以从类的外部访问6const成员变量常量的值在程序的执行期间不会改变常量必须初始化con

2、stintnum=100;num=200;//错误num++;//错误7成员函数2-1类的函数称为成员函数成员函数通常放在类的公有部分必须定义返回值及参数列表例如voidsetdate(int,int,int);8成员函数2-2成员函数可以有局部变量、参数等成员函数不应与数据成员同名9调用成员函数2-1通过调用成员函数与对象通信object1.member_function1(200); object1.member_function2();调用成员函数是操作特定的对象,而不是类使圆点操作符与特定对象关联10调用成员函数2-2访问类的成员函数的一般语法:c

3、lass_object.function_member();成员操作符11构造函数4-1自动初始化对象的特殊的成员函数与所属的类同名可以在类中声明并定义构造函数,或在类中声明而在外部定义12构造函数4-2构造函数没有返回类型默认构造函数是不带任何参数的构造函数classusername{public:username();//构造函数};username::username(){}13构造函数4-3classdate{intmonth,day,year;public:date()//默认构造函数{day=1;month=1;year=1999;}date(

4、intx)//仅指定日{day=x;month=1;year=1999;}date(intx,inty,intz)//指定年月日{day=x;month=y;year=z;}};14构造函数4-4编译器根据参数调用不同的构造函数datenow;datetoday(4);dateall(23,3,1998);15析构函数在对象销毁时自动调用的成员函数编译器会生成对析构函数的调用与类同名,但是在函数名前有个波浪号(~)析构函数没有返回类型,也不带参数classusername{public:~username();//析构函数};16使用类2-1classex

5、ampleclass{private:intdata;public:member_function1(parameter){assignvaluetodata}member_function2(){displaydata}};17使用类2-2voidmain(){//定义类exampleclass的对象exampleclassobject1,object2;//调用成员函数,将值200赋给dataobject1.member_function1(200);//调用显示数据的成员函数object1.member_function2();object2.mem

6、ber_function1(350);object2.member_function2();}18作用域2-1使用作用域解析操作符(::)在类外定义成员函数return_typeclass_name::member_functions(arg1,arg2,..,argn){}参数的类型必须与声明的类型完全匹配19作用域2-2作用域操作符左侧是类名将函数标识为特定类的成员在全局与局部变量同名的情况下引用全局变量::global_variable如果两个变量有不同的用途,它们的名称应该反映出这个区别20作用域表位置动作{定义时,调用构造函数}超出作用域,调用析

7、构函数21静态成员2-1同一个类的所有对象共享数据项只会为整个类创建一个静态数据项只在类的内部可见生命周期贯穿整个程序staticdata_typevariable;22静态成员2-2应该在main()程序开始之前创建并初始化classrace_cars{private:staticintCount;intcar_number;charname[30];public:race_cars(){count++;}//构造函数,用于增加count~race_cars(){count--;}//析构函数,用于减小count};intrace_cars::count

8、;23关于静态数据成员的更多内容如果将一个静态成员声明为类的私有成

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。