Я пытаюсь создать цикл на основе диапазона, чтобы заполнить вектор структуры для лаборатории в одном из моих классов. Проблема в том, что когда я пишу что-то вроде
"movieInfo.Title.push_back(tempTitle);"
он не распознает, что «Заголовок» является строкой в структуре «фильм».
Я уже пытался использовать "emplace_back" и пытался заполнить вектор напрямую. Подсказка лаборатории заключается в изменении векторной лаборатории той же темы, но с векторами структур.
Моя структура выглядит следующим образом
struct movie
{
std::string Title, Director, Genre, Year, runningTime;
};
и определяется в основном как
vector<movie> movieInfo{};
и, наконец, мой цикл for записывается как
for (int i = 0; i < 20; i++)
{
string tempTitle, tempDirector, tempGenre, tempYear, tempTime;
getline(inFile, tempTitle, ',');
movieInfo.Title.push_back(tempTitle);
getline(inFile, tempDirector, ',');
movieInfo.Director.push_back(tempDirector);
getline(inFile, tempGenre, ',');
movieInfo.Genre.push_back(tempGenre);
getline(inFile, tempYear, ',');
movieInfo.Year.push_back(tempYear);
getline(inFile, tempTime);
movieInfo.runningTime.push_back(tempTime);
}
Моя ошибка
"error C2039: 'Title': is not a member of 'std::vector<movie,std::allocator<_Ty>>'
1> with
1> [
1> _Ty=movie
1> ]"
и это повторяется для всех строк push_back.