codice:
#include <iostream>
#include <vector>
#include <sstream>
#include <set>
#include <fstream>
#include <stdlib.h>

using namespace std;

int main (int argc, char *argv[])
{
  
  
  //LEGGO FILE COMBINAZIONI GENERATE E POPOLO RELATIVO VECTOR...


    
    //PROVA LETTURA RIGA PER RIGA...
    
   string str;
   string str2;
   
   vector<string>insiemeA
   vector<string>insiemeB;
   
   fstream leggi ("comb1.txt",ios::in);
   fstream leggi2 ("comb2.txt",ios::in);

   
    while(!leggi.eof()) //legge fino alla fine del file
    {
        leggi >> str;
        cout << str;
        cout << "\n";
        
        insiemeA.push_back(str);
    }
    leggi.close();
    
    
cout << "\n\n - FINE - \n\n"; 
cout << "\n\n\n"; 

//cout << "Press ENTER to continue...x CHIUDERE...";
//cout << "\n\n\n"; 
//cin.get();
   
   
 
    
    
    while(!leggi2.eof()) //legge fino alla fine del file
    {
        leggi2 >> str2;
        cout << str2;
        cout << "\n";

        insiemeB.push_back(str2);
    }
    leggi2.close();
    
    
    cout << "\n\n - FINE2A - \n\n";


}
Semplicemente non capisco perchè il secondo while non venga minimamente considerato... e perchè il programma termini con il primo FINE anzichè su FINE2A

Qualcuno/a cortesemente riesce per caso a vederne il motivo?

Grazie