이 코드가 있습니다.
std::set<unsigned long>::iterator it;
for (it = SERVER_IPS.begin(); it != SERVER_IPS.end(); ++it) {
u_long f = it; // error here
}
->first
가치 가 없습니다 . 가치를 어떻게 얻을 수 있습니까?
답변:
세트의 멤버를 검색하려면 반복기를 역 참조해야합니다.
std::set<unsigned long>::iterator it;
for (it = SERVER_IPS.begin(); it != SERVER_IPS.end(); ++it) {
u_long f = *it; // Note the "*" here
}
C ++ 11 기능이있는 경우 범위 기반 for 루프를 사용할 수 있습니다 .
for(auto f : SERVER_IPS) {
// use f here
}
const u_long& f = *it;
.
*
이전을 사용하십시오 it
.
set<unsigned long>::iterator it;
for (it = myset.begin(); it != myset.end(); ++it) {
cout << *it;
}
이것은 그것을 역 참조하고 반복기가 현재있는 요소에 접근 할 수 있도록합니다.