Bonjour,
lorsque vous déclarez une nouvelle classe, privilégiez-vous la version avec déclaration anticipée des types des données membres
ou la version avec destructeur par défaut?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 class Bar; class Foo { public: Foo(int arg) : m_data(new Bar(arg)) {} ~Foo() { delete m_data; } private: Bar* m_data; };
J'utilise souvent la seconde pour gagner en performance sur la destruction des objets mais je me demande si ce n'est pas un mauvais réflexe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 #include "bar.hpp" class Foo { public: Foo(int arg) : m_data(arg) {} private: Bar m_data; };
Quel choix faites-vous en pratique et pourquoi?
Merci pour vos réponses!
Partager