vector<vector<int>> v(3, vector<int>(3)); // 0으로 채운 3x3 벡터
vector<int> a = { v[0][0], v[1][0], v[2][0] }; // v의 일부 값을 원소로 갖는 벡터
여기서 a의 원소들이 단순히 v의 값들을 복사한 것들인데
이게 복사가 아니라 레퍼런스로 하려면 어떡해야해?
일일이 int& x = v[0][0]
a[0] = x;
이런식으로 해야해?
바로 넣는 법 없을까
raw pointer 안쓰고
int& x = v[0][0]; a[0] = x; 이러면 reference를 저장하는 게 아니라 value copy를 저장하는 거임. 어차피 reference도 문법만 다르지 포인터랑 거의 같은 건데. 구글링하면 다음과 같은 글이 나옴. 참고바람. 그냥 포인터를 저장하는 게 훨씬 편할듯. 그리고 v[2][0]의 주소를 추적하려고 하지 말고 2와 0을 저장하려고 해봐.
https://stackoverflow.com/questions/922360/why-cant-i-make-a-vector-of-references
ㅇㅎ ㄳ
레퍼런스의 배열이 가능한지 묻고싶은거라면 안됨
ㄳ
가능함. Reference_wrapper 쓰면 됨.