C++ C+中的new employee*[num]语句是什么意思+;

C++ C+中的new employee*[num]语句是什么意思+;,c++,arrays,pointers,new-operator,C++,Arrays,Pointers,New Operator,我在一本书中看到了这句话 new employee *[num]; 其中employee已声明为struct employee num是一个int 这位于语句中=运算符的右侧 那么,这是什么意思? 这本书没有对上述声明进行任何解释。这将分配一个内存,用于在免费存储中保存指向员工的num指针数量 e、 g: 堆: 旁注:您可以在数组上使用delete[],这样您就可以使用delete[]a删除上面的内容,但是如果您已经为所有条目分配了内存,则必须先循环所有条目,因此必须在松开指针之前释放这些条目

我在一本书中看到了这句话

new employee *[num];
其中employee已声明为struct employee num是一个int

这位于语句中=运算符的右侧

那么,这是什么意思?
这本书没有对上述声明进行任何解释。

这将分配一个内存,用于在免费存储中保存指向
员工
num
指针数量

e、 g:

堆:

旁注:您可以在数组上使用
delete[]
,这样您就可以使用
delete[]a
删除上面的内容,但是如果您已经为所有条目分配了内存,则必须先循环所有条目,因此必须在松开指针之前释放这些条目

我想是这样的

typedef employee* TEmployee;
TEmployee * ap = new TEmployee[10];
因此,它为大小为10的TEmployee类型的动态数组(不是employee)分配内存。就这么简单,

int * aip = new int[10];

Temploye本身是指向employee的指针类型

它分配了一个大小为num的新employee*数组。返回值永远不会被捕获。在我看来,这就是为什么*应该与该类型的其余部分一起使用的一个示例。我不想就此开始聊天,但我认为通过google或其他地方可以找到什么取决于您对某个主题的熟悉程度。我认为这对so来说是一个完美的法律问题,从我的观点来看,这根本不是一个“糟糕的问题”+我投了一票……问题@有点不同,但答案解决了你的问题。我偶然发现了这一点,并且很容易理解,但这里的*给我带来了问题。现在我了解到我们正在运行时创建指针数组。在这个问题中,创建了int数组。在看到这里的答案后,我现在能够找到两者之间的相似之处。但我以前都很困惑。好吧,我被*弄糊涂了。所以这里我们使用new在运行时初始化指针。谢谢
typedef employee* TEmployee;
TEmployee * ap = new TEmployee[10];
int * aip = new int[10];