Нет никаких оснований называть структуру Person
в l oop. Вы можете просто push_back
a Person
на вектор:
while( inStream.peek() != EOF )
{
inStream >> nameInput >> num1 >> num2 >> num3; //read in data to variables
vecPerson.push_back(Person{nameInput, {num1,num2,num3}});
}
Это позволяет избежать именования структур внутри l oop или использования индекса i
вообще.
Кроме того, состояние вашего l oop неправильное. Вам нужно просто сделать:
while(inStream >> nameInput >> num1 >> num2 >> num3) //read in data to variables
vecPerson.push_back(Person{nameInput, {num1,num2,num3}});
Теперь каждый Person
в векторе имеет «другое имя» благодаря возможности индексировать Person
в определенной позиции.