C++ 類函式宣告中,'const' 放置在末尾的含義是什麼?
有時,我們會在函式宣告的末尾發現關鍵字“const”。那麼它是什麼意思呢?
使用這種語法可以讓一個函式成為常量函式。常量函式的意義在於,無法從呼叫函式的物件修改函式。建議在我們的程式中使用常量函式。
讓我們看一個常量函式的例子。
示例
#include<iostream>
using namespace std;
class MyClass {
int value;
public:
MyClass(int val = 0) {
value = val;
}
int getVal() const {
//value = 10; [This line will generate compile time error as the function is constant]
return value;
}
};輸出
The value is: 80
現在,我們將看到與常量函式相關的另一個重要內容。正如你從上面的例子中看到的,可以從任何型別的物件呼叫常量函式。但是,某些非常量函式無法從常量物件呼叫。
示例
#include<iostream>
using namespace std;
class MyClass {
int value;
public:
MyClass(int val = 0) {
value = val;
}
int getVal(){
return value;
}
};
main() {
const MyClass ob(80);
cout<< "The value is: " << ob.getVal();
}輸出
[Error] passing 'const MyClass' as 'this' argument of 'int MyClass::getVal()' discards qualifiers [-fpermissive]
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP