Visualizzazione dei risultati da 1 a 10 su 12

Hybrid View

  1. #1
    ma questo è il metodo della classe store, che parametri devo passargli? non è che potresti scrivermi un prototipo?
    Inoltre un oggetto della classe store può contenere fino ad un massimo di 100 oggetti applicazione nella maggior parte delle volte utilizziamo l'allocazione dinamica della memoria (anche se non ho capito come).

  2. #2
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    codice:
    #include <iostream>#include <sstream>
    #include <limits>
    using namespace std;
    
    
    class Applicazione {
    	private:
    		long id;
    		string nome;
    		string descrizione;
    	public:
    		Applicazione(long id, string nome, string descrizione)
    			:id(id), nome(nome), descrizione(descrizione) {}
    		
    		string to_string(void);
    };
    
    
    string Applicazione::to_string(void) {
      ostringstream oss;
      oss << id << ") " << nome << endl << descrizione;
      return oss.str();
    }
    
    
    class Store {
    	private:
    		Applicazione *app[100];
    		int n;
    	public:
    		Store():n(0) { }
    		~Store() {
    			for(int i = 0; i < this->n; ++i)
    				delete this->app[i];
    		}
    		
    		void aggiungi_applicazione(void);
    		
    		void stampa_applicazioni(void);
    };
    
    
    void Store::aggiungi_applicazione(void) {
    	long id;
    	string nome, descrizione;
    	cout << "Inserisci l'id dell'applicazione: ";
    	cin >> id;
    	cin.ignore(numeric_limits<streamsize>::max(), '\n');
    	cout << "Inserisci il nome dell'applicazione: ";
    	getline(cin, nome);
    	cout << "Inserisci una descrizione dell'applicazione:" << endl;
    	getline(cin, descrizione);
    	this->app[(this->n)++] = new Applicazione(id, nome, descrizione);
    }
    
    
    void Store::stampa_applicazioni(void) {
    	for(int i = 0; i < this->n; ++i)
    		cout << this->app[i]->to_string() << endl;
    }
    	
    
    
    int main() {
    	Store s;
    	s.stampa_applicazioni();
    	s.aggiungi_applicazione();
    	s.stampa_applicazioni();
    	s.aggiungi_applicazione();
    	s.stampa_applicazioni();
    	return 0;
    }
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.