#include
"stdafx.h"
#include
"iostream.h"
class circle
{
private:
int x,y,r;
const int z;
public:
void print();
void circle::print()
const;
circle(int a,int b,int c);
circle(int a,int b,int c,int d);//函数声明中初始化列表不用带
};
void circle::print()
{
cout<<
"圆心:("<<x<<
","<<y<<
")"<<endl;
cout<<
"半径:"<<r<<endl;
}
void circle::print()
const//重载了一个常量print函数
{
cout<<
"圆心:("<<x<<
","<<y<<
")"<<endl;
cout<<
"半径:"<<r<<endl;
cout<<
"常量数据成员为:"<<z<<endl;
}
// circle::circle(int a,int b,int c)//错,会提示常量成员z没有初始化
// {
// x=a;
// y=b;
// r=c;
// }
circle::circle(int a,int b,int c,int d):z(d)
{
x=a;
y=b;
r=c;
}
int main(int argc, char* argv[])
{
circle p1(0,0,1,3);
p1.print();
const circle p2(0,0,2,3); p2.print();//由于这里重载了一个常函数print return 0; }