Когда этот l oop завершится:
while( getline(inFile, line))
// ...
поток inFile
исчерпан, и больше нет данных для чтения из него.
Один из вариантов - открыть файл снова, а затем прочтите его. Однако это расточительно, поскольку вы можете отслеживать числа, которые читаете из файла в первый раз:
std::vector<int> v;
int i;
while (inFile >> i)
v.push_back(i);
Теперь у вас есть все числа в контейнере, и вам не нужно читать из файла снова.
Обратите внимание, что я использую std::vector
вместо массива, так как с ним намного проще работать.
Если вы обязательно используйте массив, затем вы можете прочитать файл один раз, чтобы выяснить, сколько целых чисел находится в файле:
int i, count = 0;
while (inFile >> i);
, а затем выделить память для массива:
int *array = new int[count];
, а затем открыть файл снова и считываем в массив:
int i = 0;
while (inFile >> array[i++]);