42 votes

Qu'advient-il des variables globales déclarées dans une DLL ?

Imaginons que j'écrive une DLL en C++ et que je déclare un objet global d'une classe avec un destructeur non trivial. Le destructeur sera-t-il appelé lorsque la DLL sera déchargée ?

1voto

INS Points 5679

Lorsque DllMain avec le paramètre fdwReason = DLL_PROCESS_DETACH est appelé, cela signifie que la DLL est déchargée par l'application. C'est le moment où le destructeur des objets globaux/statiques est appelé.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X