
Originariamente inviata da
shodan
Hai scritto:
Hai citato
_string_list che è un dato membro. E questo io ho commentato.
Ho capito che intendi, ma l'esempio è infelice. (Hai definito un costruttore che restituisce qualcosa, il che è vietato.)
Nulla vieta di scrivere (ho modificato un po' per chiarezza):
codice:
struct list
{
virtual std::list<std::string> get_list() const { return _list; }
private:
std::list<std::string> _list;
};
struct banned_list : public list
{
std::list<std::string> get_banned_list() const { return _list; }
};
get_banned_list(), però, non fa parte dell'interfaccia di
list pertanto non si può usare con puntatori/reference di tipo
list. In pratica non serve.
Qui trovi un manuale con consigli e indicazioni utili per una buona codifica (applicabili in generale, non al caso in questione).
http://www.eptacom.net/pubblicazioni/cpp_stile/all.html