Ho questo programmano del quale allego solo in .cpp perchè il .h non è importante:
Versione coi puntatori:
Versione senza puntatori:codice:#include <iostream.h> #include "puntatori.h" void main() { libro *biblio[10]; for(int i=0; i<10; i++) { biblio[i] = new (libro); } int n, i, tipoop, quale; // Input dati dei libri cout << "\nQuanti libri (max 10)? "; cin >> n; while(cin.get()!='\n'); n = (n>10 ? 10 : n); //Al massimo 10 libri for (i=0; i<n; i++) { cout << "\nLibro n. " << (i+1) << " "; biblio[i]->registra(); } // Gestione prestiti libri for( ; ; ) { cout << "\n1 - prestito"; cout << "\n2 - restituzione"; cout << "\n0 - fine"; cout << "\nOperazione ? "; cin >> tipoop; if(!tipoop) break; cout << "\nQuale libro (1," << n << ")? "; cin >> quale; quale = (quale>n ? n : quale); //Al massimo il libro numero 10 quale--; //L'Array va da 0 a 9 biblio[quale]->infoLibro(); if (tipoop==1) { if (!biblio[quale]->pEffettuato()) cout << "\nLibro gia' prestato"; else cout << "\nPrestito effettuato"; } else { if (!biblio[quale]->lRitornato()) cout << "\nLibro gia' presente"; else cout << "\nRestituzione effettuata"; } } }
Va bene la versione coi puntatori come l'ho fatta io?codice:#include <iostream.h> #include "puntatori.h" void main() { libro biblio[10]; int n, i, tipoop, quale; // Input dati dei libri cout << "\nQuanti libri (max 10)? "; cin >> n; while(cin.get()!='\n'); n = (n>10 ? 10 : n); //Al massimo 10 libri for (i=0; i<n; i++) { cout << "\nLibro n. " << (i+1) << " "; biblio[i].registra(); } // Gestione prestiti libri for( ; ; ) { cout << "\n1 - prestito"; cout << "\n2 - restituzione"; cout << "\n0 - fine"; cout << "\nOperazione ? "; cin >> tipoop; if(!tipoop) break; cout << "\nQuale libro (1," << n << ")? "; cin >> quale; quale = (quale>n ? n : quale); //Al massimo il libro numero 10 quale--; //L'Array va da 0 a 9 biblio[quale].infoLibro(); if (tipoop==1) { if (!biblio[quale].pEffettuato()) cout << "\nLibro gia' prestato"; else cout << "\nPrestito effettuato"; } else { if (!biblio[quale].lRitornato()) cout << "\nLibro gia' presente"; else cout << "\nRestituzione effettuata"; } } }
E' più veloce secondo voi nel caso di un programma di più grosse dimensioni?
![]()

Rispondi quotando