In C++, ff ho una classe che deve contenere un elemento che può essere allocato dinamicamente e utilizzato come puntatore, o meno, così:membri dinamici vs non dinamica classe
class A {
type a;
};
o
class A {
A();
~A();
type* a;
};
e nel costruttore:
A::A {
a = new type();
}
e distruttore:
A::~A {
delete a;
}
ci sono vantaggi o svantaggi per entrambi, a parte quello dinamico che richiede più codice? Si comportano in modo diverso (a parte il puntatore che deve essere dereferenziato) o è più lento dell'altro? Quale dovrei usare?
Lavorare su un codice manutenibile corretto e, se necessario, lavorare sulle prestazioni. –
Il tuo secondo 'A' non è sicuro; è necessario definire anche il costruttore di copie e 'operator ='. Mai possedere puntatori del genere, avvolgerli in modo da non dover scrivere * nessuna * funzione membro speciale. – GManNickG