Bonjour à tous,
Je développe une dll contenant des classes et des objets.
Une fonction qui crée un objet dynamique doit retourner le pointeur de l'objet + autres info.
Voici la structure déclarée :
Puis la méthode de la classe qui doit retourner la structure en question :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 typedef struct { HSMixer G_Mixer; HSSTREAM G_Source; HANDLE G_Objet; } WB_PLAYLIST;
Dans la structure m_str_playlist je récupère bien les infos mixer et source que je souhaite mais dans id_objet j'ai un doute.
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 class Play_list { private : WB_PLAYLIST m_str_playlist; .... public: WB_PLAYLIST* Creer(); .... }; WB_PLAYLIST* Play_list::Creer() { .... this->m_str_playlist.G_Mixer = this->m_mixer; this->m_str_playlist.G_Source = this->m_source; Play_list *const id_objet = this; this->m_str_playlist.G_Objet = static_cast<HANDLE>(id_objet); return &this->m_str_playlist; }
Je ne suis pas certain de récupérer le pointeur sur l'objet. Pour info, je récupère bien une valeur (ex:5726840) qui peut être une adresse.
Compte-tenu que mon niveau en C++ n'est pas très élevé, je vous sollicite une nouvelle fois pour me donner votre avis sur le code présenté.
L'utilisation qui est faite du static_cast permet elle de récupérer l'adr de l'objet ? Comment vérifier ?
Merci de votre aide précieuse.
Partager