今天调试程序时发现, 执行向map插入一个类的对象之后(或者说在插入该对象时),该对象的数据成员(一个一维的指针)的内容发生改变,但其他数据成员(如int变量)却没有变化。但把插入的元素改为指向该对象的指针时,就没有出现这样的问题。
代码如下:
voronoicell c;
con.Cells.insert(make_pair(cell_id,c));
c中有个double *pts的指针,在insert操作时其值发生了变化,被置为初始值。这是什么原因呢?
今天调试程序时发现, 执行向map插入一个类的对象之后(或者说在插入该对象时),该对象的数据成员(一个一维的指针)的内容发生改变,但其他数据成员(如int变量)却没有变化。但把插入的元素改为指向该对象的指针时,就没有出现这样的问题。
代码如下:
voronoicell c;
con.Cells.insert(make_pair(cell_id,c));