c++面向对象




引用是指针常量
如:
1  | int a=10;  | 
即:
1  | int *const b=&a;  | 

1  | 
  | 
函数重载
1 必须在同一个作用域下
2 函数名称相同
3 函数参数类型不同,或者个数不同,或者顺序不同
1  | void fun(){  | 
类和对象
1  | //圆类  | 
构造函数
1 构造函数没有返回值,不用写void
2 函数名与类名相同
3 构造函数可以有参数,可以发生重载
4 创建对象的时候,构造函数会自动调用,且只调用一次
1 析构函数 进行清理的操作
2 没有返回值,不写void
3 函数名与类名相同,在名称前加~
4 对象在销毁前会自动调用析构函数,且只会调用一次
1  | 
  | 
拷贝构造
1  | 
  | 
拷贝构造函数使用时机
1  | 
  | 
深拷贝浅拷贝
浅拷贝:简单的赋值拷贝操作
深拷贝:在堆区重新申请空间,进行拷贝操作
1  | 
  | 
初始化列表
1  | 
  | 
对象成员
1  | 
  | 
static成员
静态成员函数:所有对象共享,只能访问静态变量
静态成员变量:所有对象共有,类内声明,类外定义
1  | 
  | 
只有非静态成员变量属于对象
空对象的内存占用为1个字节
this指针: this指针指向被调用的成员函数所属的对象,this指针是指针常量其指向不可以修改
1 可以解决名称冲突
2 返回此对象 return *this;
1  | 
  | 
常函数 :不能修改指针指向和值.
常对象:只能调用常函数


友元函数
1  | 
  | 
1  | 
  | 
成员函数做友元
1  | 
  |