Когда заранее знаешь порядок становится намного легче.
Вот к примеру простая структура.
struct stud
{
string name;
string surname;
string second_name;
string lesson;
int mark[3];
};
Далее мы с помощью библиотеки fstream создаём экземпляр класса "ifstream" и соединяем его с файлом.
Пример: ifstream fin("myfile.txt);
Потом в цикле считываем инфу с открытого файла.
Вот пример для моей структуры.
student m; //создал переменную с типом моей структуры.
while(!fin.eof())
{
fin >> m.surname; //считываю фамилию в структуру
fin >> m.name;
fin >> m.second_name;
fin >> lesson;
//а теперь оценки в инт, это уже будет сделать чуть сложнее.
//для этого считываем инфу в чаровый буфер и через atoi переводим
fin >> temp;
m.mark[0]=atoi(temp);
fin >> temp;
m.mark[1]=atoi(temp);
fin >> temp;
m.mark[2]=atoi(temp);
}
Что-то на подобии этого, я считывал инфу в свою структуру, но вы просто считывайте её в ваш вектор и всё.
Обязательно в условии цикла поставить "!название вашего объекта.eof()".
Ну и в конце закрыть файл методом .close();
Прикрепил скрин с маленьким примером, ну и кинул как это работает с массивами. (с векторами это тоже отлично работает, просто мне лень)