Warning: file_get_contents(https://whois.pconline.com.cn/jsLabel.jsp?ip=127.0.0.1) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 503 Service Temporarily Unavailable in D:\wwwroot\huidong\wwwroot\function.inc.php on line 884
用 vector 的时候,最好别保存其中单独一个元素的指针 - huidong

huidong

首页 | 会员登录 | 关于争取 2022 寒假做出汇东网 Ver3.0.0 !
搜索文章


vector 如果新增或者删除元素,其对应的整片内存空间都会重新分配。

所以说,如果你这样做:

vector<int> vec;
vec.push_back(123);
int* p = &vec[0];
vec.push_back(321);

这样的结果就是:p 会变成野指针……因为插入元素的时候,整个 vector 都重新分配了内存。


所以,别保存 &vec[0],不安全。

用的时候直接用 vec[0] 就好了,这是教训!



返回首页


Copyright (C) 2018-2024 huidong