エラーは非常に明確です。配列を割り当てようとする頃には:
Record *room = new Record[5];
デフォルトのコンストラクター、つまり Record::Record()
, 、5つのインスタンスを実装する必要があります Record
作成できます:
struct Record
{
...
Record() : average(0.0) { }
Record(int s[], double a) { ... }
};
また、動的割り当ては、C ++で可能な限り避けたいものであることに注意してください(本当に正当な理由がある場合を除く)。この場合、使用する方がより合理的です std::vector
代わりは:
std::vector<Record> records(5);