void show()const;后面的const是干什么的?求大佬幫幫忙~
2 回答

UYOU
TA貢獻1878條經驗 獲得超4個贊
void show()const;這種是c++中的函數聲明。
它說明show()是一個常量成員函數。
注意show()必須是一個類的成員函數,后面才可以加上個const;
表示它是常量成員函數。
它表示const成員函數不能修改調用該函數的對象。
例如:
#include <iostream>
using namespace std;
class A
{
public:
void show()const
{
a=1;
cout<<a<<endl;
}
private:
int a;
};
中show()函數就是錯誤的,因為它改變了類對象中的a的值了,所以編譯的話就會報錯。
去掉修改a的值的語句a=1;
程序就不會報錯了。
添加回答
舉報
0/150
提交
取消