编译器认为新数组正在创建新对象?

时间:2015-04-15 03:33:50

标签: c++

所以,我现在正在尝试编写一个带有两个不同构造函数的程序,一个是默认的,一个是带输入的。这些构造函数旨在将全局数组初始化为默认长度或参数指定的长度。

目前我已声明:

    Room *rooms;

在头文件中作为私有变量。 然后我在构造函数中:

    rooms = new Room[defaultRoomCapacity];

在编译时,我收到一条错误,指出没有匹配函数调用Room类的构造函数。好像它认为我试图让房间成为房间的一个实例?我知道有其他方法可以实现这一点,但我只是好奇这个问题是什么。

由于

1 个答案:

答案 0 :(得分:2)

不,它调用默认的ctor。确保您声明并将其与特殊的ctor一起定义。