在C++中,我们时常看到有时候在写函数时需要标明是const函数还是非const函数,尤其是在运算符重载中,用到const这个关键字很多次,所以,小编在此就讲解一下。由于小编是看英文版的教材的,所以在这里就总结一下。小编也是用英文来总结,但是会跟代码一起来解释。
Constant Member Functions
1. Any member function that does NOT modify any data members should be specified as a constant member function!
2. The only member functions you can call through CONSTANT OBJECTS are constant member function.
有可能大家看起来有点费事,但是可以查字典解决,小编不在这里解释每一个单词的意思了。敲代码必须得懂一点英文单词的,所以这有助于大家的英文水平提高。
下面,小编只解释第二个情况。
举个例子:
void function(const list & object)
{
//object is the constant object
//function must be a constant member function!
object.function();
}
下面是代码的展示:
#include<iostream>
using namespace std;
class list
{
public:
void display() const
{
cout<<"List class"<<endl;
}
void Display(const list & object)
{
object.display();
}
};
int main()
{
list List;
List.Display(List);
return 0;
}
这个就是代码的展示,运行的结果就是输出”List class” 。结果截图所示:
这个就是有关constant的一些总结,如果在后面的学习中,小编看到有关constant的知识点时,会及时post出来。