나는이 점에 대해 내 마음에서 벗어났다.예기치 않은 vector.back() 값
#include <iostream>
#include <vector>
int main() {
std::vector<int> a;
std::vector<int *> b;
a.push_back(13);
b.push_back(&a.back());
a.push_back(24);
b.push_back(&a.back());
for (std::vector<int>::iterator it = a.begin(); it != a.end(); ++it)
std::cout << *it << " ";
std::cout << "\n";
for (std::vector<int *>::iterator it = b.begin(); it != b.end(); ++it)
std::cout << *(*it) << " ";
std::cout << "\n";
return 0;
}
출력 : 정말 모두 출력 라인이 일치하지 않는 이유를 알고 싶습니다
13 24
16712910 24
. 내가 여기서 무엇을 놓치고 있니? 나는 이것을 gcc로 컴파일했다.
벡터 경우 새로운 크기> 용량을 재 할당합니다. – hansmaad