Qt C++ How to use QList< >::const_iterator? -


i iterating through list , want use const_iterator. don't know how that! until used iterator , implemented function way. can me use const_iterator?

void mainwindow::populate(const qlist<vehicle> &vehicles) { int j = 0; qlistiterator<vehicle> iter(vehicles);     while(iter.hasnext()){     vehicle car = iter.next();     //set car     qstring makeandmodel = car.getgeneraldata().getmake() + car.getgeneraldata().getmodel();     qstandarditem *mandm = new qstandarditem(qstring(makeandmodel));     mandm->seteditable(false);     model->setitem(j,0,mandm);      //set type     qstandarditem *type = new qstandarditem(qstring(car.getgeneraldata().gettype()));     type->seteditable(false);     model->setitem(j,1,type);      //set mileage     qstring mileagestring = qstring::number(car.getgeneraldata().getmileage());     qstandarditem *mileage = new qstandarditem(qstring(mileagestring));     mileage->seteditable(false);     model->setitem(j,2,mileage);      //set year     qstring yearstring = qstring::number(car.getgeneraldata().getyear());     qstandarditem *year = new qstandarditem(qstring(yearstring));     year->seteditable(false);     model->setitem(j,3,year);      //set registration     qstring regstring = vehiclehelper::convertbooltostring(car.getregistration().isregistered());     qstandarditem *regdate = new qstandarditem(qstring(regstring));     regdate->seteditable(false);     model->setitem(j,4,regdate);     j++;    }  } 

some other variants iterating qlist:

using constiterator/const_iterator:

qlist<vehicle>::constiterator = vehicles.constbegin();  ( ; != vehicles.constend(); ++it ) {     const vehicle& vehicle = *it;     ... } 

q_foreach (equivalent foreach):

q_foreach (const vehicle& vehicle, vehicles) {     ... } 

or stl pre-c++11 way:

std::for_each(vehicles.begin(), vehicles.end(), somefunction()) 

where somefunction unary function or functor taking vehicle argument.

if can use c++11 features (depends on compilers want support), can use range-based loop:

for ( auto vehicle : vehicles ) {     ... } 

Comments

Popular posts from this blog

c# - How Configure Devart dotConnect for SQLite Code First? -

java - Copying object fields -

c++ - Clear the memory after returning a vector in a function -