#include #include #include struct Auto { // Attributi std::string modello; std::string marca; std::string numTarga; float prezzo; // Metodi // Stampa dettagli auto TODO --> [Funzionante] void infoAuto(){ printf("\nModello: %s\n", modello.c_str()); printf("Marca: %s\n", marca.c_str()); printf("Numero di Targa: %s\n", numTarga.c_str()); printf("\tPrezzo: %.2f\n", prezzo); } void modificaAuto( std::string nuovoModello, std::string nuovaMarca, std::string nuovaTarga, float nuovoPrezzo ){ modello = nuovoModello; marca = nuovaMarca; numTarga = nuovaTarga; // come cazzo si usa lo static cast dio cane!!! prezzo = nuovoPrezzo; puts("Dati aggiornati\n"); } }; struct Autosalone{ int n=0; // Nome Azienda std::string nome; // Locazione std::string parco; // Array con inventario Auto inventario[100]; // per ora 100, poi facciamo dinamico... // inizializzo l'oggetto visto la mancaza di costruttori... // e la mia poca voglia di studiare void init( const std::string newNome, const std::string newParco){ nome = newNome; parco = newParco; }; // Metodi void addAuto( const Auto &newauto ){ // non credo sia corretto inventario[n] = newauto; n++; printf("\n\tAuto Aggiunta.\n"); } // ToDo, Doppio metodo. Anche se credo si posso fare uno solo condizionale... // ma ripeto... la mia voglia di studiare รจ misera... molto misera... // formalmente scorretto, indice cambia(?) void removeAutoID( int ID = -1 ){ if ( ID == -1 ){ printf("Errore: Inserire ID inventario...\n...\n\tStampa inventario in corso:\n"); infoInventario(); } else { removeAuto(); } } void removeAuto(){ } // ToDo void modificataInventario( int ID = -1 ){ if ( ID == -1 ){ printf("Errore: Inserire ID inventario...\n...\n\tStampa inventario in corso:\n"); infoInventario(); } else { removeAuto(); } } void infoInventario(){ printf("Autosalone: %s\n", nome.c_str()); printf("\tLocazione: %s\n", parco.c_str()); for (int i = 0; i < n; i++){ printf("\n\tAuto N / posizione inventario: \nID:%d \n", i); inventario[i].infoAuto(); printf("----------------------------------"); } printf("\n"); } }; int main(void){ Auto testAuto1 = {"M3 S-Sport", "BMW", "MT213132", 34.918}; Autosalone testAutosalone1; testAutosalone1.init("Bebbo's Lab", "Vetrina"); testAutosalone1.addAuto( testAuto1 ); Auto auto1 = {"Baracca", "Subaru", "STRUNNZ", 1000000}; Auto auto2 = {"Sandalo", "Offeso", "MT213132", 918}; Auto auto3 = {"Yeti", "Skoda", "AKSMKDA", 15769.90}; Auto auto4 = {"Pigra", "Nissan", "ASSAAS", 12122}; Auto auto5 = {"Sandero", "Dacia", "MAMT", 9999}; testAutosalone1.addAuto(auto1); testAutosalone1.addAuto(auto2); testAutosalone1.addAuto(auto3); testAutosalone1.addAuto(auto4); testAutosalone1.addAuto(auto5); testAutosalone1.removeAutoID(1); //testAutosalone1.infoInventario(); }