C++中,类的const成员函数有什么用

如题,const对象是防止修改对象的成员值,那么const成员函数的作用是什么?

类的非static(静态)成员函数有一个默认实参this,代表当前类对象,const就是修饰这个实参的,意思是函数不能修改这个类对象的值
如下列代码
class cls
{ ...//省略
return_type func()const;
}
//在主函数中
cls a;
a.func();
上面函数中const的意思就是不能修改a

也可以等价的这么看
return_type func()const等价于
static return_type func(const *this);
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-05-11
表面该函数不可改变成员的值
例如
class A
{
public:
int func() const;
private:
int a;
};

则func()里面如果对a进行了修改,则会报错。 用来提示别人这是个只读函数
第2个回答  2009-05-11
const成员函数表示该函数只能读不能改成员变量
比如类A有个成员变量m_count
只能用这个值,但不能修改这个值,
第3个回答  2009-05-11
跟define差不多。
“做什么用”这个问题其实没必要问。等你觉得需要自然就知道了, 你要是不觉得需要的话,无论举什么例子你都觉得这例子是瞎编的

C++中const关键字的作用有哪些?
在C++中,const关键字有以下作用:1.声明常量:const关键字可以用来声明常量,这意味着一旦赋值后就不能再改变它的值。2.修饰函数参数:const关键字可以用来修饰函数参数,表示该参数是只读的,不能被修改。3.修饰指针:const关键字可以用来修饰指针,表示该指针所指向的内容是只读的,不能被修改。4.修饰...

为什么类里要有const函数,const函数在类里有什么作用?
const是一个C语言的关键字,它限定一个变量不允许被改变,产生静态作用。使用const在一定程度上可以提高程序的安全性和可靠性。另外,在观看别 人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一些帮助。另外CONST在其他编程语言中也有出现,如C++、PHP5、C#.net、HC08 C。主要作用 (1)...

const是什么意思
const是C++中的CONST函数,作用为把一个对象转换成一个常量。const的用法:1、常变量 变量用const修饰,其值不得被改变。任何改变此变量的代码都会产生编译错误。Const加在数据类型前后均可。2、常指针 const跟指针一起使用的时候有两种方法。const可用来限制指针不可变。也就是说指针指向的内存地址不可...

C++中const什么意思?
在标准C++中,这样定义的是一个常量,用来修饰内置类型变量,自定义对象,成员函数,返回值,函数参数。const使用(类型):1、用于指针的两种情况:const是一个左结合的类型修饰符.int const*A;\/\/A可变,*A不可变 int*const A;\/\/A不可变,*A可变 2、限定函数的传递值参数:void function(const int V...

C++在函数声明时,后面跟个const是什么意思?
C++在函数声明时,后面跟个const是限定函数类型为常成员函数, 常成员函数是指不能改变成员变量值的函数。例如“double d() const;”,其中的其中的“const”限定了d()函数中不能有任何改变其所属对象成员变量值的功能,如果有则会在编译阶段就报错。它的主要作用就是能使成员函数的意义更加清楚,我们...

C++ static, const, volatile 总结
在C++中,const关键字用于标识成员函数不改变类的数据成员,增加代码的可读性和可靠性,防止函数内部无意改变数据成员。const修饰的成员函数只能调用其他const修饰的成员函数。若类的数据成员加上mutable后,尽管成员变量仍被标识为const,但仍可被修改。面试时应注意const的作用不仅限于表示常量,它还传达了...

int getx() const {return x;}; C++ 这句中的 const是什么作用!
int getx() const 这个const保证该函数不修改调用该函数的类对象的任何成员,并且该类的const对象也只能调用该类的const方法 const成员函数的作用是防止程序员在本来不想修改类对象的数据成员的情况下,因疏忽等意外原因写出修改类对象的代码。调试程序时也有好处,对于类类对象成员的改变,不必跟踪const方法...

C++中const的强大用法:修饰函数参数\/返回值\/函数体
在C++中,const主要用于保护数据不被意外修改。除修饰常量外,还用于修饰函数参数、返回值和函数体,以提升程序健壮性。const修饰函数参数,可保护参数不被函数内部意外修改。例如,对变量a和b添加const修饰后,函数内尝试修改a或b会导致编译错误。const修饰函数返回值,确保返回值不可被修改。如使用const...

c++中const的作用是什么?
const关键字至少有下列n个作用:(1)欲阻止一个变量被改变,可以使用const关键字。在定义该const变量时,通常需要对它进行初始化,因为以后就没有机会再去改变它了;(2)对指针来说,可以指定指针本身为const,也可以指定指针所指的数据为const,或二者同时指定为const;(3)在一个函数声明中,const...

C++中的const怎么使用?
如果const用于定义一个指针变量,不同的写法有不同的意思。例如const char *p和char* const p 前者表示p指向的内容是不能够改变的,后者是指p本身的值是不能够改变的。如果用于修饰函数返回值,效果和修饰变量一样。const修饰类的成员函数,则该成员函数不能修改类中任何非const成员函数。一般写在函数的...

相似回答