C++创建A a;而程序员自定义的是带参数构造函数,那么是否会调用默认构造函数。
3个回答
展开全部
自定义
构造函数
会覆盖
默认构造函数
,就是说定义了带参的构造函数后,
编译器
是不会创建默认构造函数的,这个时候你使用
A
a;这样试图创建一个A类的对象,并调用无参的构造函数初始化是不正确的,因为类中没有无参的构造函数,这个时候编译器找不到匹配的构造函数,所以会报错哦……no
appropriate
default
constructor
available
!
这个时候你有两种解决方法,
一:将你定义的构造函数设置成带默认
形参
的构造函数!
二:定义一个无参的构造函数!
构造函数
会覆盖
默认构造函数
,就是说定义了带参的构造函数后,
编译器
是不会创建默认构造函数的,这个时候你使用
A
a;这样试图创建一个A类的对象,并调用无参的构造函数初始化是不正确的,因为类中没有无参的构造函数,这个时候编译器找不到匹配的构造函数,所以会报错哦……no
appropriate
default
constructor
available
!
这个时候你有两种解决方法,
一:将你定义的构造函数设置成带默认
形参
的构造函数!
二:定义一个无参的构造函数!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不会了,只要你谢了构造函数,无论有没有参,系统都不会在使用默认的无参构造方法的
再看看别人怎么说的。
再看看别人怎么说的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询