Si chiama constructor initializer listOriginariamente inviato da zaxis
In questi giorni, mentre studio il C++, mi aggiro per la rete in cerca di tutorials e definizioni. Andando sulla wikipedia, (http://it.wikipedia.org/wiki/C_plus_plus ) , ho trovato questo (considerato un semplice esempio)
Ci sono alcune sintassi che non ho ancora visto da nessuna parte...cioe':codice:#include <string> class Message { std::string subject_; std::string from_; public: Message (const std::string& subject, const std::string& from) : subject_(subject), from_ (from) {} std::string subject() const { return subject_; } std::string from() const { return from_; } };
(1) Message (const std::string& subject, const std::string& from) e' il costruttore, prende due argomenti, e non fa niente (le parentesi graffe sono vuote), ma cosa sono quei due punti nella linea : subject_(subject), ??
http://www.blueturnip.com/projects/e...zer-lists.html
costruisce subject_ usando la stringa subject(2) subject_ e from_ sono due stringhe, giusto? Che significa allora subject_(subject) ??
è un modificatore che si applica al metodo, si usa quando un metodo è costante, cioè non modifica lo stato (i suoi attributi) di un oggetto su cui è applicato.(3) std::string subject() const { return subject_; } mi pare essere una funzione che restituisce un tipo std::string e non prende argomenti. Ma perchè const si trova tra gli argomenti (parentesi tonde) e gli elementi della funzione (parentesi graffe), come se non appartenesse ne agli argomenti ne' alla funzione?

)
Rispondi quotando