Bonjour,
Voici ma classe Ball dans ball.h :
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
18
19
20
21
22
23
24
25
26
27
28
29 class Ball { public: Ball(int id, int radius, int x, int y, float velocity_x, float velocity_y); ~Ball(); void move_(int l_left, int l_top, int l_right, int l_bot); // les limites gauche, haut, droite, bas void collision(Ball** balls); const static int s_num_balls = 10; static bool s_collision; static int s_num_collisions; static int s_min_velocity; static int s_max_velocity; int m_id; int m_radius; int m_x; int m_y; double m_velocity_x; double m_velocity_y; double m_accel_x; double m_accel_y; private: void free(); };
Je crée dynamiquement des instances de classe ainsi dans main.cpp :
Voici le destructeur vide de ma classe Ball :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for(int i=0; i<Ball::s_num_balls; i++){ balls[i] = new Ball(...); }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Ball::~Ball() //destructeur { //delete this; }
Et voici la fonction close() dans main.cpp
Est-ce que je m'y prends bien pour libérer la mémoire occupée par chaque objet Ball lors de sa déstruction ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 void close() { for(int i=0; i<Ball::s_num_balls; i++){ delete balls[i]; } ... }
Merci
Partager