函数后面加 const表示函数不可以修改class的成员。 一、作用 1、可提高程序的可读性:标识不改变数据成员的函数; 2、提高程序的可靠性:已定义成const的成员函数,一旦企图修改数据成员的值,则编译器按错误处理; 二、注意 1、只有非静态的成员函数后才可以加const,否则会产生编译错误。 三、原理 表示成员函数隐含传入...
非静态成员函数后面加const(加到非成员函数或静态成员后面会产生编译错误),表示成员函数隐含传入的this指针为 const指针,决定了在该成员函数中,任意修改它所在的类的成员的操作都是不允许的(因为隐含了对this指针的const引用);唯一的例外是对于 mutable修饰的成员。加了const的成员函数可以被非const对象和const对象调用,...
而是在C++中可以用来修饰函数参数,函数返回值,函数体 被const修饰的东西都会受到强制保护,可以防止意外改动,提供了程序的健壮性. 所以通常都建议: use const whenever you need.
const加到非静态成员函数后面加const,表示这个函数隐含传入的this为const指针,也就是const指针指向的数据无法改动了。 当然如果还有补充,你可以讲一下如果加到成员函数或者静态成员后面会产生编译错误,用这个的场景就是不需要修改的成员函数。还有个mutable例外,但是我觉得这个不要讲。 如果你还能有补充,我会建议你谈谈J...
const关键字用在函数上,说明这个函数不能修改类的成员变量。这个用法一般如:class BaseGraph { public:virtual int GetArea() const =0;} class DerivedGraph :BaseGraph { ...} 在这里,GetArea()只有在各个派生类才有效(基类其实就是定义一个接口函数),而这个函数后面加const限定限定这个函数是...
C++中类成员函数后面加const的作用,这个问题频繁出现在面试中,从我参加过的几次面试中都被涉及到,比如字节,2345浏览器等,这个问题会非常基础,而且很考验C++的基础。const的字面意思为常数,不变的,只读。 class Rabbit{ private int m_nTo; public: A() : m_nTo(0){} int getToValue()const { return m_...
Qt自定义函数后面加上const的作用 在我们看一些案例程序时,我们通常会看见const,位于函数的后面,下面,我们来看一些程序示例,来依靠这些程序示例,来讲解一下。 voidsetObjID(intnObjID);//设置ObjID值,这个值不知道有啥用intobjID()const;//返回ObjID值