为什么 'new' 只创建一个对象而不是一组对象?

Why does is 'new' creating only one object and not an array of objects?

我目前正在尝试为我的国际象棋引擎进行换位 Table,并且正在使用 class 和结构对象的动态分配数组成员。

class TranspositionTable {
private:
    TranspositionEntry* data_;
public:
    TranspositionTable() {
        data_ = new TranspositionEntry[5]; //5 is an example but i'm actually using a number over 16 million --
                                           // that's why I need it dynamically allocated
    }
    ~TranspositionTable() {
        delete[] data_;
    }
}

然而,当构造对象时,我检查了 Visual Studio 调试器,它只显示 data_ 成员包含单个结构对象,而不是它的数组。我正在使用 'new' 关键字并尝试更改它是否是指针等,但它仍然不起作用。谁能解释一下这是怎么回事?

我刚刚意识到这个问题。该数组实际上正在分配。但由于我在 visual studio 调试器中,并且该值是一个指针,所以我实际上只看到了第一个值。其他人的 HTH!我的错!