C/C++类和对象类中常用的关键字总结
Posted trevo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C/C++类和对象类中常用的关键字总结相关的知识,希望对你有一定的参考价值。
类中实现成员函数(inline)
类内的成员函数实现其实也叫类内的成员函数定义,这种直接在类的定义中实现的成员函数,会被当做inline内联函数来处理。
成员函数末尾的const
-
含义:
? const: 常量,在成员函数的后面增加一个const,不但要在成员函数声明中增加const,也要在成员函数定义中增加const。
-
作用:
? 告诉系统,这个成员函数,不会修改对象里任何成员变量的值。函数后边加一个const后缀的成员函数 “常量成员函数”。
-
注意:
- const成员函数,不管是不是const对象都可以调用const成员函数,而非const成员函数,不能够被const对象调用,只能被非成员函数调用
- const不能放在普通函数末尾
mutable
const的反义词,mutable的引入正好是为了突破const的限制。用mutable修饰成员变量,一个成员变量一旦被mutable修饰了,那么什么成员函数都可以修改这个成员变量;
this
this返回自身对象的引用。如何理解this,调用成员函数时候,编译器负责把对象的地址传递给成员函数中隐藏的this形参。在系统角度看来,任何对类成员的直接访问被看作this访问;
- this指针只能在成员函数中使用,全局函数,静态函数都不能使用this指针
- 在普通成员函数中,this是指向一个非const对象的const指针
- 在const成员函数中,this指针是指向const对象的const指针
- 直接使用成员变量相当于隐式使用this 当形参名跟成员变量名一样时,用this来做区分
静态成员static
属于整个类的成员变量(static成员变量);
-
特点: 不属于某个对象,属于整个类,我们一旦在某个对象中修改了这个成员变量的值,在其他对象中直接能够看到修改的结果。 这种成员变量只有一种副本,对于这种成员变量的引用,我们用的是实名::成员变量名
-
成员函数前面也可以添加static构成静态成员函数,属于整个类的成员函数,调用时: 类名::成员函数名(...)
-
如何定义静态成员变量(分配内存),我们一般会在某一个.cpp源文件的开头来定义这个静态成员变量,这样我们就能保证在调用任何函数之前这个静态成员变量已经被成功初始化
以上是关于C/C++类和对象类中常用的关键字总结的主要内容,如果未能解决你的问题,请参考以下文章