【发布时间】:2013-06-09 07:58:47
【问题描述】:
_Groups = (group **) new char[sizeof (group **) * NOMGRPS];
以上是我阅读的实际代码。我只是想知道如果我这样做会有什么差异
_Groups = new group*[sizeof (group **) * NOMGRPS];
【问题讨论】:
-
我不明白为什么投反对票。这个问题是具体而有效的,但有些人认为批评比开导更容易。
-
第一个看起来很可疑,第二个几乎可以保证你做错了什么。除此之外,如果不知道您要达到的目标,就无法回答您的问题。
-
和第一个一样,我从来没有说过任何一行都是无效的。它只是您在现实生活中通常看不到的代码。如果您正在寻找语法解释,第一行会动态分配足够的内存来包含 10 个指向
Point类型的指针。第二个分配足够的内存以包含 10 个chars,然后将结果转换为指向Point的指针。老实说,我想不出为什么有人会这样做。 -
@Praetorian:我刚刚发布了我阅读的实际代码。你能告诉我我阅读的实际代码与我刚刚在帖子中编辑的代码是否有任何差异。
标签: c++ oop dynamic-memory-allocation