私は次のコードを持っています(ここに入力しただけで、タイプミスなどがあるかもしれません):
typedef boost::ptr_vector<SomeClass> tvec;
tvec v;
// ... fill v ...
tvec vsnap;
for(tvec::iterator it = v.begin(); it != v.end(); ++it)
{
if((*v).anyCondition)
vsnap.push_back( it ); // (*it) or &(*it) doesn't work
}
私の問題は、イテレータをプッシュバックできないことです。イテレータからポインタを取得できません。
Is there an easy way i didnt see, or are boosts ptr_vector the false choice for this case?
Thanks in advance.