Как я уже сказал в вопросе, я пытаюсь показать на экране значения созданного объекта, но на выходе был цикл ниже, а не сам список.
Я использовал функцию list.begin()
, чтобы проверить, является ли список правильным и эффективно ли он показывает 1
, поэтому я не понимаю, почему значения в цикле for являются неправильными.
Подводя итог, я не нахожу ошибки, поэтому я хотел бы спросить вас, где я ошибся.
Заранее спасибо.
#include <iostream>
#include <list>
using namespace std;
class Algo{
private:
list <int> l;
public:
Algo() {l = {1, 2, 3, 4, 5};}
list <int> getList() {return l;}
};
int main()
{
Algo a;
list <int>::iterator it;
it = (a.getList().begin());
for(it; it != (a.getList().end()); it++)
{
cout << *it << "\n";
}
}
Ожидаемый результат: 1,2, 3,4,5
Реальный выход: 1
-1952806520
16122456
-1228957360
1
-1952806520
16122456
-1228957360
1 (бесконечный цикл)