1
Я пытаюсь добавить новый набор в мой вектор здесь мой кодкак добавить новый набор в вектор C++
set<string>::iterator iter;
vector<set<string> > myVector;
set<string> mySet;
mySet.insert("hello");
myVector.push_back(mySet);
mySet.clear();
mySet.insert("world");
myVector.push_back(mySet);
cout << mySet.size() << endl;
cout << myVector.size() << endl;
// printing out vector of sets
for (int i = 0; i < myVector.size(); i++)
{
for (iter = mySet.begin(); iter != mySet.end(); ++iter)
{
cout << *iter << " ";
}
cout << endl;
}
Выход
1
2
world
world
Am I печать или осуществления неправильно ? Я хочу, чтобы напечатать
1
2
hello
world
Используйте 'myVector [я]' вместо 'mySet' в течение цикла. – songyuanyao
хотя вы итерируете элементы в векторе, вы всегда используете mySet в теле цикла. Вам нужно что-то вроде set & set_i = myVector [i]; для доступа к набору для каждой итерации –
Jimmy
спасибо, что он работает сейчас, есть ли лучший способ реализовать это? – muchtolearn