42 lines
832 B
C++
42 lines
832 B
C++
#include<iostream>
|
||
using namespace std;
|
||
class R
|
||
{ public:
|
||
R(int r1, int r2){R1=r1;R2=r2;}
|
||
//const区分成员重载函数
|
||
void print();
|
||
void print() const;
|
||
private:
|
||
int R1,R2;
|
||
};
|
||
/*
|
||
常成员函数说明格式:类型说明符 函数名(参数表)const;
|
||
这里,const是函数类型的一个组成部分,因此在实现部分也要带const关键字。
|
||
const关键字可以被用于参与对重载函数的区分
|
||
通过常对象只能调用它的常成员函数
|
||
*/
|
||
|
||
void R::print()
|
||
{
|
||
cout<<"普通调用"<<endl;
|
||
cout<<R1<<":"<<R2<<endl;
|
||
}
|
||
//实例化也需要带上
|
||
void R::print() const
|
||
{
|
||
cout<<"常对象调用"<<endl;
|
||
cout<<R1<<";"<<R2<<endl;
|
||
}
|
||
int main()
|
||
{
|
||
R a(5,4);
|
||
a.print(); //调用void print()
|
||
//通过常对象只能调用它的常成员函数
|
||
const R b(20,52);
|
||
b.print(); //调用void print() const
|
||
system("pause");
|
||
return 0;
|
||
}
|
||
|
||
|