关于C++类的类型常量的问题 5
在对Clock类的对象进行初始化的时候书上有这样一个例子Clocks1(Clock(8,9,12))它的构造函数是这样的classClock{inth,m,s;publi...
在对Clock类的对象进行初始化的时候书上有这样一个例子
Clock s1(Clock(8,9,12))
它的构造函数是这样的
class Clock{
int h,m,s;
public:
Clock(int h=0,int m=0,int s=0){
this->h=h;
this->m=m;
this->s=s;
}
···
}
书上说那个Clock(8,9,12)是Clock类型的常量,这个是相当于常对象吗?另外这个过程中为什么不需要调用拷贝构造函数而只需要调用构造函数? 展开
Clock s1(Clock(8,9,12))
它的构造函数是这样的
class Clock{
int h,m,s;
public:
Clock(int h=0,int m=0,int s=0){
this->h=h;
this->m=m;
this->s=s;
}
···
}
书上说那个Clock(8,9,12)是Clock类型的常量,这个是相当于常对象吗?另外这个过程中为什么不需要调用拷贝构造函数而只需要调用构造函数? 展开
1个回答
展开全部
没有【常对象】这个概念,
Clock a(1,2,3) 调用构造函数
Clock b=a 调用拷贝构造函数,这里在构造时赋值
建议你去读李普曼的【深入c++对象模型】
Clock a(1,2,3) 调用构造函数
Clock b=a 调用拷贝构造函数,这里在构造时赋值
建议你去读李普曼的【深入c++对象模型】
追答
这个语句会定义一个临时对象,例如 Clock a=Clock(8.9.12).
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
大雅新科技有限公司
2024-11-19 广告
2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,...
点击进入详情页
本回答由大雅新科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询