c++中const写在函数名称后面是什么意思?

2025-01-08 04:31:16
推荐回答(4个)
回答1:

代表在此函数中,不能改变成员变量的值。由于改动某些重要的变量(尤其是指针)容易导致系统或程序崩溃。出于安全考虑,有的函数应该被设置为const,如LZ的例子

回答2:

简单的说
代表这个成员函数是只读的,不能对这个函数的成员变量进行修改否则编译不通过...

回答3:

const 是 静态函数成员

回答4:

在该函数内,不能改变类的成员变量。

网上的一个例子:
以下程序中,类stack的成员函数GetCount仅用于计数,从逻辑上讲GetCount应当为const函数。编译器将指出GetCount函数中的错误。

class Stack

{

public:

void Push(int elem);

int Pop(void);

int GetCount(void) const; // const成员函数

private:

int m_num;

int m_data[100];

};

int Stack::GetCount(void) const

{
++ m_num; // 编译错误,企图修改数据成员m_num

Pop(); // 编译错误,企图调用非const函数

return m_num;

}