Salve a tutti, avrei bisogno di un aiuto per un programma.
Ho il codice che mi genera gli anagrammi di una certa parola data in input, io vorrei fare in modo che mi stampi solamente le parole di senso compiuto; il metodo migliore che mi è venuto in mente è stato quello di comparare ogni anagramma generato (salvato su una variabile stringa) con un file di testo che contiene praticamente tutte le parole italiane, una per riga, senza spazi.
Potete aiutarmi?

Ecco il programma
codice:
#include <iostream>
#include <string>
#include <fstream>

using namespace std ;

void anagramma(string radice, string s, int livello)
{
     for (int i = 0; i < s.size(); i++)
     {
         string t = radice + s[i];

         if (t.size() == livello)
         {
            cout << t << endl ;
         }

         anagramma(t, s.substr(0, i) +
                      s.substr(i + 1), livello);
     }
}

void calcola_anagrammi(string s)
{
     anagramma("", s, s.size());
}

int main()
{
    string my_string;

    cout << "Inserire la stringa da anagrammare : ";
    cin  >> my_string;

    calcola_anagrammi(my_string);

    return 0 ;
}
mi servirebbe il controllo per la variabile t