v_data.push_back(pdata);
这句只是把指针pdata拷贝到 vector当中的一个指针p1当中 注意是拷贝
也就是说当前pdata和p1指向同一个东西,p1在vector中。
并不是将结构体放入vector,这点需要明确。
这时如果你delete pdata 也就是释放了 pdata 所指向的内存,即p1所指向的内存,
导致的结果是p1依然在vector中,但是已经成为野指针,当你再次访问的时候就会报错。
2024-01-21 11:53:28
v_data.push_back(pdata);
这句只是把指针pdata拷贝到 vector当中的一个指针p1当中 注意是拷贝
也就是说当前pdata和p1指向同一个东西,p1在vector中。
并不是将结构体放入vector,这点需要明确。
这时如果你delete pdata 也就是释放了 pdata 所指向的内存,即p1所指向的内存,
导致的结果是p1依然在vector中,但是已经成为野指针,当你再次访问的时候就会报错。