C++学习-类域、友元、运算符重载、对象的生存期,可见域,作用域(1)

一、类的作用域(类作用域、类名作用域、对象作用域)

1、在类中定义的成员变量和成员函数的作用域是整个类,可以在不同的类中使用相同的成员名

2、不能从外部直接访问类的任何成员,public-对象名来调用,static成员函数-指定类名调用

3、发生屏蔽现象,类成员可见域可能小于作用域,可用this指针或者类名::形式访问。

二、类的作用域和可见域

 

1、全局作用域:在函数和其他类的外部定义的类称为全局类,全局类具有全局作用域

2、类作用域:嵌套类,public(AB的作用域可认为一样)和private (AB作用域认为不一样)

3、块作用域:局部块,作用域块内

4、类名也存在覆盖:覆盖原则,::访问外部类,外部类::嵌套类

三、对象的生存期,可见域,作用域

1、类名无生存期,只有可见域和作用域

2、对象的生存期随着对象的创建而产生,随着对象的撤销而消失

3、对象的生存期,可见域,作用域取决于对象的位置

四、先定义后实例化

1、类的定义要在对象的声明之前,因为编译器要知道需要为类分配多大的内存空间,仅仅对类声明是不够的。

class B;

B objectB;//错误

class B

{

.......//B的定义

};

2、如果不创建B类的对象,而仅仅声明一个指向类型B的指针(或引用),是可行的。

class B;//声明

B* pb=NULL;//创建B类的对象,对

B* pb=new B;//错

class B

{};

五、对象内存释放与堆内存

1、养成new/delete,malloc/free配对编程的习惯,集是释放已经无用的内存。

 

posted @ 2019-10-24 11:05  19l92y11p26  阅读(161)  评论(0编辑  收藏  举报
/*鼠标跟随效果*/ /* 点击爆炸效果*/
/*鼠标跟随效果*/
Live2D