C++在函数声明时,后面跟个const是什么意思?
2022-12-14 · 百度认证:北京惠企网络技术有限公司官方账号
C++在函数声明时,后面跟个const是限定函数类型为常成员函数, 常成员函数是指不能改变成员变量值的函数。
例如“double d() const;”,其中的其中的“const”限定了d()函数中不能有任何改变其所属对象成员变量值的功能,如果有则会在编译阶段就报错。
它的主要作用就是能使成员函数的意义更加清楚,我们可在不改变对象的成员函数的函数原型中加上const说明。在需要增加可读性和减少逻辑出错的情况下,就可以用这种形式。
扩展资料:
简单介绍
一、const与define。两者都可以用来定义常量,但是const定义时,定义了常量的类型,所以更精确一些。#define只是简单的文本替换,除了可以定义常量外,还可以用来定义一些简单的函数,有点类似内联函数(Inline)。const和define定义的常量可以放在头文件里面。(小注:可以多次声明,但只能定义一次)
二、》》const与指针和引用。
1、const与指针。
先来看看下面的几种定义:
int me;
const int* p1 = &me;//p1可变,*p1不可变,此时不能用*p1来修改,但是p1可以转向
int* const p2 = &me;//p2不可变,*p2可变,此时允许*p2来修改其值,但是p2不能转向。
const int* const p3 = &me;//p3不可变,*p3也不可变,此时不能用*p3来修改其值。
2、指针和引用的区别很简单,就是引用更简洁,更安全。因为引用声明时必须初始化。 引用更接近const指针,一旦与某个变量关联,就将一直效忠于他。
3、const指针可以接受const和非const地址,但是非const指针只能接受非const地址。所以const指针的能力更强一些,所以尽量多用const指针,这是一种习惯。
参考资料来源:百度百科-CONST (C++中CONST)