Ciao.
Ho dichiarato in un file, questa classe:
Codice:
class Dns{
private:
vector<int> proxy;
vector<Provider> provider; //un'array di Provider (Provider è una struct definita in un altro file)
map<string, vector<int> > mapper;
public:
Dns();
Dns(vector<int> , vector<Provider>);
void Associations(int, int);
void stampa_mapper(int []);
};
Il corpo del costruttore con argomenti è:
Codice:
Dns::Dns(vector<int> newp, vector<Provider> newprov){
proxy=newp;
provider=newprov;
}
Ora se dal main istanzio un oggetto di tipo Dns con tale costruttore, succede che provider viene correttamente copiato da newprov mentre proxy no. Infatti se vado a fare un debugging con gdb mi accorgo che provider contiene correttamente tutti i campi che ho inizializzato nel main, mentre proxy (nonostante sia correttamente inizializzato con tutti i valori nel main) non ha nessun campo inizializzato (anzi l'indirizzo di memoria è proprio NULL). Non capisco perché non riesce a passarglielo correttamente. Avete idee? Grazie.