C++ 浅拷贝 const static 关键字

来源:互联网 发布:淘宝网抢拍软件 编辑:程序博客网 时间:2024/04/27 17:58

浅拷贝:可以把一个对象赋值给另外一个对象,对象的每个成员的值,将一一对应拷贝到新的对象。


const 定义常量,值不能被修改,声明时必须对其初始化

常量指针:地址可以改变,不能改变指向变量的值

指针常量:可以改变指向,可以改变变量的值


const 修饰函数(修饰哪,哪不能变)

const int func(const Point &p) const;

1⃣️int func()const ;  //  表示此函数是const成员函数,在func函数内不能修改成员变量的值。健壮性 const只能修饰成员函数

2⃣️int func(const Point &p)  // 表示在此函数中不能修改p的值

3⃣️const int func()  //   表示函数的返回值不能被修改 

注意:const 成员函数 只能调用const成员函数,不能调用非const成员函数

const成员函数则均可调用


const 对象只能调用const成员函数,普通对象则均可调用


const 引用                    

const 对象只能赋值给const类型的引用(或指针),不能赋值给非const类型的引用(或指针),普通对象则均可赋值

const Base b1;

const Base &b2=b1;// right 

指针与引用赋值效果一样

   

静态成员函数不能访问非静态成员变量与非静态成员函数,而普通成员函数技能访问静态成员变量,又能访问到静态成员函数


this 指针:每一个对象都有一个指向对象本身的指针(this

1⃣️形参名称与成员变量名称相同

2⃣️函数连续调用

0 0