我不认为这是铸造,但它是什么?

ack*_*tng 4 c++ struct

这包含在for循环中:

v[i] = new (&vv[i]) vertex(pts[i],i);
Run Code Online (Sandbox Code Playgroud)
  • vertex 是一个 struct
  • pts 是一个 point*
  • v 是一个 vertex**
  • vv 是一个 vertex*

(&vv[i])部分做什么?

Som*_*ude 9

它看起来像是新的.它与普通new语句相同,但它不是实际分配内存,而是使用已经可用的内存,括号内的表达式指向该内存.

在你的情况下,它使用内存vv[i]来创建新vertex对象,然后返回指向那个(即&vv[i])并指定给它的指针v[i].

有关详细信息,请参阅此参考.