【发布时间】:2011-01-21 16:18:38
【问题描述】:
今天发现可以用C++编写这样的代码并编译:
int* ptr = new int(5, 6);
这样做的目的是什么?我当然知道动态new int(5) 的事情,但在这里我迷路了。有什么线索吗?
【问题讨论】:
-
不管怎样,在这种情况下正确的做法是
int* ptr = new int((5, 6));。int(5,6)应该会导致错误,但是将其放在括号中会将其变为 6,然后使用它。也就是说,它很丑。 :) -
@GMan:您应该将此作为答案,以便我们投票。
标签: c++ new-operator dynamic-memory-allocation comma-operator