2 chen5884271 chen5884271 于 2013.12.05 16:29 提问

C++初学者 初级程序解释

大神你好~ 我是一名C++ 初学者 这是我的一个作业~ 可是我看不太懂, 您能不能给我解释一下 ?谢谢~
#include
using namespace std;
#include
class X
{public:
X(int x1,char *x2,float x3):a(x1),c(x3)
{ b=new char[sizeof(x2)+1];
strcpy(b,x2);
}
X():a(0),b("X::X()"),c(10){ }
X(int x1,char *x2="X::X(....)",int x3=10):a(x1),b(x2),c(x3){}
X(const X&other)
{ a=other.a;
b="X::X(const X &other)";
c=other.c;
}
void print()
{ cout<<"a="< private :
int a;
char *b;
float c;
};
int main(){
X *A=new X(4,"X::X(int,char,float)",32);
X B,C(10),D(B);
A->print();
B.print();

C.print();

D.print();
return 0;
}

1个回答

DHL1234567
DHL1234567   2013.12.05 22:16

构造函数后面带的a,b,c是初始化,其实这题就是调用不同的构造函数,主要看它的参数匹配哪一个构造函数!细心一点就可以了!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!