首页 > 代码库 > 【Cpp】考点·C++数据抽象
【Cpp】考点·C++数据抽象
构造函数
自动初始化对象的特殊的成员函数
与所属的类名同名
可以在类中声明并定义构造函数,或在类中声明而在外部定义
可以同时有几个含有不同参数的构造函数,实例化时通过不同参数定义不同的对象
1 #include <iostream> 2 3 using namespace std; 4 5 class date 6 { 7 int month, day, year; 8 public: 9 date() 10 { 11 day = 1; 12 month = 1; 13 year = 1999; 14 } 15 date(int x) 16 { 17 day = x; 18 month = 1; 19 year = 1999; 20 } 21 date(int x, int y, int z) 22 { 23 day = x; 24 month = y; 25 year = z; 26 } 27 void PrintDate() 28 { 29 cout << "DAY: " << day << endl; 30 cout << "MONTH: " << month << endl; 31 cout << "YEAR: " << year << endl; 32 } 33 }; 34 int main() 35 { 36 date now; 37 date today(4); 38 date all(23,3,1999); 39 now.PrintDate(); 40 today.PrintDate(); 41 all.PrintDate(); 42 return 0; 43 }
析构函数
在对象销毁时自动调用的成员函数
编译器会自动生成对析构函数的调用
与类同名,但是在函数名前有个波浪号(~)
析构函数没有返回类型,也不带参数
作用域
使用作用域解析操作符(::)在类外定义成员函数
return_type class_name :: member_functions(arg1, arg2, ..., argn){}
参数的类型必须与声明的类型完全匹配
静态变量
同一个类的所有对象共享数据项
只会为整个类创建一个静态数据项
只在类的内部可见
生命周期贯穿整个程序
static date_type variable
new
用于为类的对象创建内存空间
如果成功,返回所分配内存空间的指针
delete
用于显式销毁由new创建的对象
私货:08:38:53 好久没有在这里写字了。今天一天没有课,在图书馆泡一整天搞定CPP
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。