带参数的构造函数有什么作用?何时被调用
2个回答
展开全部
读到那行代码就调用,有参数主要是做一个限制,用来返回值。相当于一个入口,不知道这样解释能不能弄懂。
追问
跪求书面答案
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
class A
{
public:
A() { p = NULL;} //默认构造函数
A(const A& OBJ) //拷贝构造函数,用一个A对象初始化另一个A对象
{
this -> p = new char [strlen(OBJ.p) + 1];
memcpy(this -> p, OBJ.p, strlen(OBJ.p) + 1);
}
A(const char * ObjPtr) //重载构造函数,用一个char[]初始化对象A
{
this -> p = new char [strlen(ObjPtr) + 1];
memcpy(this -> p, ObjPtr, strlen(OBJ.p) + 1
}
private:
char *p;
};
int main()
{
A OBJ_A; //调用默认构造函数
A OBJ_B("helloworld") //调用重载的有参数的构造函数
A OBJ_C(OBJ_B);//调用拷贝构造函数
return 0;
}
{
public:
A() { p = NULL;} //默认构造函数
A(const A& OBJ) //拷贝构造函数,用一个A对象初始化另一个A对象
{
this -> p = new char [strlen(OBJ.p) + 1];
memcpy(this -> p, OBJ.p, strlen(OBJ.p) + 1);
}
A(const char * ObjPtr) //重载构造函数,用一个char[]初始化对象A
{
this -> p = new char [strlen(ObjPtr) + 1];
memcpy(this -> p, ObjPtr, strlen(OBJ.p) + 1
}
private:
char *p;
};
int main()
{
A OBJ_A; //调用默认构造函数
A OBJ_B("helloworld") //调用重载的有参数的构造函数
A OBJ_C(OBJ_B);//调用拷贝构造函数
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询