2013-05-10 1 views
-7

Объяснение причины возникновения мусора & количество мусора, которое происходит.Интересный результат по итерации

#include <vector> 
#include <iostream> 

using namespace std; 

int main() { 
    vector<int> v1; 
    vector<int> v2; 

    for(int i=0 ; i < 10 ; i++) 
     v1.push_back(i); 

    for(int i=11 ; i <= 20 ; i++) 
     v2.push_back(i); 

    for(vector<int>::iterator it = v1.begin() ; it != v2.end() ; it++) 
     cout << *it << " "; 

    return 0; 
} 
+0

Вы знаете, как использовать отладчик? Если нет, см. Http://www.youtube.com/watch?v=z5gBIizwsY0 – sashoalm

+1

Что было бы интересно, так это то, что вы объясняете, что вам нужно делать, и почему. –

+2

Вы должны отформатировать свой код, помещая пробелы в соответствующие места, чтобы он был более читабельным. Таким образом будет намного легче найти ошибки. –

ответ

6

вы перебираете вектор v1 и доказываете итератор против v2.end. это неправильно. коррекция:

for (vector<int>::iterator it = v1.begin() ; it != v1.end() ; it++) 
    cout << *it << " "; 
+0

Вы ошибаетесь ........... Вот почему я это сказал ..... Он должен обеспечить ошибку ..... bt сначала он отображает элемент v1, затем некоторый мусор, и снова он показывает v2 ......... Мой вопрос - почему он так выглядит ........... и после отладки теперь ясно ... –

 Смежные вопросы

  • Нет связанных вопросов^_^