C ++ - Хранение введенной пользователем строки, разделенной запятыми, в вектор

У меня есть код, который выполняет эту задачу в определенной степени. Но я хотел бы узнать, как изменить мой код, чтобы я мог хранить столько строковых входных данных, которые пользователь хочет ввести в вектор.

Вот мой код:

#include <iostream>
#include <cstring>
#include <vector>

using namespace std;

int main ()
{
string input = "";
cout << "Input: ";
cin >> input;
string a,b;

for(int i = 0; i<input.size(); i++)
{
    if(input.at(i)==','){
        a=input.substr(0,i);
        b=input.substr(i+1);
    }
}

vector<string> objects;
objects.push_back(a);
objects.push_back(b);

for (int k = 0; k < 2; k++) {
    cout << objects[k] << endl;
}

return 0;
}

Пока что он может распознавать и хранить только два ввода, разделенных запятыми. Я очень плохо знаком с программированием, поэтому кто-то может показать мне способ сделать это в цикле и принять столько входных данных, сколько вводит пользователь?

Спасибо.

Ответы на вопрос(3)

Ваш ответ на вопрос