我有一個指針數組的載體vector<int> *F[12];
,我想初始化一些載體及其地址存儲在F.聲明載體在for循環
for(uint i = A; i <= B; ++i){
vector<uint> newvec(pow2(i), 0);
F[i] = &newvec;
}
但是當我嘗試以後訪問這些網站,我發現它們並非全部爲零:
for(uint i = A; i <= B; ++i){
for(uint j = 0; j <= pow2(i); ++j){
if((*F[i]).at(j) != 0){
cout << i << "/" << j << "/" << (*F[i]).at(j) << "|";
}
}
}
我假設這與聲明向量的範圍有關。爲什麼記憶被釋放了?我必須使用malloc
並從中創建矢量嗎?
http://stackoverflow.com/questions/6441218/can-a-local-variables-memory-be-accessed-outside-its-scope – chris