매우 비슷한 두 세트의 코드가 있습니다. 나는 그들이 연속적으로 또는 심지어 같은 프로그램에 있지 않다는 것을 강조하고 싶다. I 단지 그들 설명을 목적으로 나란히 가지고반복자의 데이터를 목록에 삽입하는 문제
std::list<int*> bob;
int * j = new int;
*j = 5;
bob.push_front(j);
std::list<int>::const_iterator goop = bob.begin();
bob.push_front(*goop); //takes issue with inserting goop
std::list<int> bob;
j = 5;
bob.push_front(j);
std::list<int>::const_iterator goop = bob.begin();
bob.push_front(*goop); //inserts goop just fine
첫 번째 정수에 대한 포인터의리스트, 제 단지 정수이다. 첫 번째는 typage에 대해 불평 삽입하려고 할 때 특별히 원하는, 반복자를 역 참조 나와 함께 문제를한다 "INT의 *의 CONST는 &"
여기 무슨 일이야? 반복자가 기본 데이터를 참조하는 방법에 대해 내가 잘못 이해하고 있고 목록의 반복자에서 목록에 삽입 할 수 있도록 두 번째 경우를 실행해야하는 방법은 무엇입니까?
폴, 내가 당신보다 더 빨리 이중했다 보인다! :) 그러나 우리는 해결책이 무엇인지에 동의합니다, 그렇죠? :) +1! – gsamaras