vector (const_iterator) - o co tu chodzi?

0

Hej, czy mógłby mi ktoś wyjaśnić co oznacza poniższy zapis:

for( VObiektyT::const_iterator i = vObiekty.begin(); i != vObiekty.end(); ++i )

kod ten znalazłem czytając sobie o tworzeniu gier, ale nigdy się z czymś takim nie spotkałem a to co znalazłem w internecie niewiele mi mówi :(.
Z góry dziękuję i pozdrawiam

1

http://stackoverflow.com/questions/5346890/what-is-the-difference-between-const-iterator-and-iterator

There is not performance difference. The const_iterator returns constant pointers (const T*) and prevent modification of the pointed variables: it enforces const-correctness [1].

When you have a const reference to the container, you can only get a const_iterator.

http://en.wikipedia.org/wiki/Const-correctness

0

Nie kapuję tego...
A czemu nie zrobić po prostu:

for(int i=0; i<myVector.size(); i++)
//...

???

0

@_13th_Dragon dziękuję za wyjaśnienie. Ten drugi argument może jest właściwy, ale czy mógłbyś rozwinąć co miałeś na myśli pisząc:

Bo będzie nie optymalnie względem czasu wykonania.

Dlaczego korzystając z iteratora, który w końcu również musi korzystać z jakiejś pętli będzie optymalny a nie korzystając z iteratora już nie?

1 użytkowników online, w tym zalogowanych: 0, gości: 1