C++类中构造函数的使用出错
如图中所示,定义了一个类用来创建队列,但是在运行主函数时,系统报错error:invaliduseof'Queue::Queue'。麻烦各位解答一下。谢谢。...
如图中所示,定义了一个类用来创建队列,但是在运行主函数时,系统报错error: invalid use of 'Queue::Queue'。麻烦各位解答一下。谢谢。
展开
展开全部
第一种,是调用带参数的构造函数,显而易见,你定义的是一个带三个参数的构造函数,没问题,OK。
第二种,是调用的是不带参数的构造函数,不定义的话,编译器会默认一个,没问题,OK。
第三种,调用的是复制构造函数,没定义的话,编译系统也会自动提供一个默认的复制构造函数,但只是简单地复制类中每个数据成员,定义的话,就会调用是你自己的。
第四种,这种定义类对象,是错误的语法,只有在调用带参数的构造函数创建对象时,才会用括号()把参数传进去,如果想调用无参数的构造函数创建对象,是不能带括号的,所以编译器会报错。
第二种,是调用的是不带参数的构造函数,不定义的话,编译器会默认一个,没问题,OK。
第三种,调用的是复制构造函数,没定义的话,编译系统也会自动提供一个默认的复制构造函数,但只是简单地复制类中每个数据成员,定义的话,就会调用是你自己的。
第四种,这种定义类对象,是错误的语法,只有在调用带参数的构造函数创建对象时,才会用括号()把参数传进去,如果想调用无参数的构造函数创建对象,是不能带括号的,所以编译器会报错。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询