Salve ragazzi,
Ho un problema con questo programma.
Il programma deve inserire un tot di libri all'interno di uno scaffale(per semplicità ho supposto 4libri) e se inserisco un libro con lo stesso titolo di uno di quelli presenti mi da errore, dicendomi che è già presente.
Il problema è che mi confronta il titolo che aggiungo solo con il primo titolo aggiunto e non con tutti i titoli presenti sul mio file.
Per favore aiutatemi, perchè non so più dove sbattere la testa!

codice:
#include <iostream>
#include <fstream>
#include <stdio.h>


using namespace std;


int nuovo ();


class libro
{ public:
    string titolo="";
    string autore="";
};




int main ()
{
    int scelta;
    do
    {
    cout« "1.Inserisci: ";
    cout« "Operazione da eseguire:";
    cin»scelta;
    switch (scelta)
        {
            case 1:
             nuovo();
             break;
        }
        system ("PAUSE");
    }
    while(scelta!=2);
}


int nuovo ()
{
    ofstream salva;
    salva.open("Libreria.txt", ios::app);
    libro l;
    for (int i=0;i<3;i++)
    {
        ifstream leggi;
        leggi.open("Libreria.txt");
        leggi»l.titolo;
        leggi»l.autore;
        string nuovo="";
        cout«"Titolo: " « endl;
        cin»nuovo;
        if(nuovo!=l.titolo)
        {
            cout«"Autore: " « endl;
            cin»l.autore;
            l.titolo=nuovo;
            
            salva«l.titolo«endl;
            salva«l.autore«endl;
        }
        else
        {
            cout«"Errore!"«endl;
            return 0;
        }
        leggi.close();
    }
    salva.close();
    return 0;
}