Я сейчас работаю с vector
, и у меня есть интересная ситуация, с которой мне нужно помочь.
У меня есть вектор векторов, определенный следующим образом:
vector< vector<int> > list;
Я загружаю числа из стандартного ввода, используя cin >> helpVar;
, и каждый раз, когда я получаю 0 (ноль), я хочу создать новый вектор целых чисел, который будет помещен в этот «основной контейнер»Конечно, я не знаю, сколько раз появится нулевое число - это зависит от пользователя.Поэтому я также не знаю, сколько векторов добавит программа.
Но я не знаю, как именно это сделать.Если бы я использовал C # или другой язык, похожий на сборщик мусора, я бы просто написал:
if(helpVar == 0)
{
list.push_back(new vector<int>);
}
Но эта конструкция не работает в C ++.
Так что мой вопрос: какЯ справляюсь с этой ситуацией, чтобы она работала?Или я просто думаю об этом неправильно, и это должно быть сделано по-другому?
Спасибо за ответы.