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

Compiler thinks new array is creating new object?

因此,我目前正在尝试使用两种不同的构造函数编写一个程序,一种是默认构造函数,另一种是带输入构造函数。这些构造函数旨在将全局数组初始化为默认长度或参数指定的长度。

目前我已经声明:

    Room *rooms;

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

    rooms = new Room[defaultRoomCapacity];

编译时,我收到一条错误消息,指出没有匹配的函数调用到 Room class 的构造函数。好像它认为我正在尝试使房间成为 Room 的实例?我知道还有其他方法可以实现这一点,但我只是好奇问题可能出在哪里。

谢谢

不,它调用默认构造函数。确保您声明并定义了它以及一个特殊的 ctor。