IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Microsoft annonce que le débogage dynamique en C++ est désormais disponible pour tous les canaux de Visual Studio 2026 et dans la version 14.52 des outils de génération Microsoft C++ (MSVC)

Le , par Anthony

0PARTAGES

3  0 
Le débogage dynamique en C++ est désormais disponible pour tous les canaux de Visual Studio 2026 ainsi que dans MSVC Build Tools 14.52. Cette fonctionnalité permet aux développeurs d'inspecter les variables locales, de parcourir le code source ligne par ligne et d'accéder aux fonctions intégrées dans les versions optimisées en C++ sans avoir à basculer l'ensemble du projet vers une configuration de débogage. Selon Microsoft, pour les jeux volumineux et les applications où les performances sont cruciales, l'activation de cette fonctionnalité permet de consacrer moins de temps à la préparation du débogage et plus de temps à l'analyse des problèmes.

Le C++ est un langage de programmation de haut niveau et à usage général créé par l'informaticien danois Bjarne Stroustrup. Lancé pour la première fois en 1985 en tant qu'extension du langage de programmation C, il a intégré des fonctionnalités de programmation orientée objet (POO) avant de s'enrichir considérablement avec l'ajout de fonctionnalités de programmation fonctionnelle. Il prend en charge la manipulation de mémoire de bas niveau pour des systèmes tels que les micro-ordinateurs et a été utilisé pour la création et la maintenance de Microsoft Windows. Le C++ a également intégré la prise en charge de la programmation générique grâce à l'utilisation de modèles (templates). Il est généralement implémenté en tant que langage compilé, et de nombreux éditeurs proposent des compilateurs C++, notamment la Free Software Foundation, LLVM, Microsoft, Intel, Embarcadero, Oracle et IBM.

Visual Studio est un environnement de développement intégré (EDI) développé par Microsoft. Il sert à développer des programmes informatiques, notamment des sites web, des applications web, des services web et des applications mobiles. Visual Studio utilise les plateformes de développement logiciel de Microsoft, notamment l'API Windows, Windows Forms, Windows Presentation Foundation (WPF), Microsoft Store et Microsoft Silverlight. Il permet de générer à la fois du code natif et du code géré.

Microsoft a annoncé la mise à disposition générale du débogage dynamique en C++ sur tous les canaux de Visual Studio 2026 et dans la version 14.52 des outils de compilation Microsoft C++ (MSVC). Cette fonctionnalité permet aux développeurs d'inspecter des applications optimisées en examinant les variables locales, en parcourant le code source ligne par ligne et en accédant aux fonctions intégrées, sans compromettre les performances d'exécution globales de l'application.


Dans le processus de développement classique des jeux ou des applications volumineuses, le passage à une version de débogage donne aux développeurs un accès aux symboles de débogage, mais au détriment des performances. À l'inverse, le débogage des versions optimisées ou de production peut présenter certaines difficultés, car les développeurs rencontrent souvent des variables qui ont été « supprimées lors de l'optimisation » et ont du mal à parcourir de manière fiable le code qu'ils souhaitent inspecter.

Le débogage dynamique en C++ offre le meilleur des deux mondes en permettant aux développeurs d'inspecter les variables locales, de parcourir leur code source ligne par ligne et d'entrer dans les fonctions intégrées. Le reste de l'application reste optimisé, ce qui permet de conserver les performances d'exécution nécessaires pour identifier et analyser un problème.

Une fois cette fonctionnalité activée et l'application recompilée, le débogage dynamique se chargera de désoptimiser les fonctions lorsque le développeur placera un point d'arrêt ou entrera dans une fonction. Il n'est donc plus nécessaire d'arrêter l'exécution, d'ajouter #pragma optimize, de recompiler et de reproduire le problème uniquement pour inspecter ce code. Pour les jeux volumineux et les applications où les performances sont cruciales, cela signifie moins de temps consacré à la préparation du débogage et plus de temps pour analyser le problème.


Avant (optimisé)


Après (avec le débogage dynamique C++)

Avis des utilisateurs

Microsoft affirme que ses équipes ont déjà utilisé le débogage dynamique en C++ pour faciliter le débogage du code optimisé, que ce soit pour le développement de jeux ou la réalité virtuelle. Voici ce qu’elles en disent :

« Le débogage dynamique change la donne dans le développement C++. Il me permet de travailler avec les versions optimisées dont j’ai réellement besoin pour les bases de code de jeux volumineuses, tout en pouvant désoptimiser et inspecter le code ainsi que l’état d’exécution lorsque cela s’avère nécessaire. Il met fin à un compromis de longue date entre des performances d’exécution réalistes et une expérience de débogage productive », déclare Michael Buschbeck, Ingénieur logiciel principal, Microsoft Havok.

« Les performances sont essentielles lors du développement d’applications de réalité virtuelle ; c’est pourquoi mon équipe développe en activant les optimisations. Le débogage dynamique nous permet de déboguer ce code optimisé comme s’il ne l’était pas. Le processus est si fluide qu’on en oublie à quel point cela nous aide. », témoigne Bryce Hutchings, Ingénieur logiciel principal, Microsoft Cloud Streaming, réalité mixte et graphisme.

Essayez-le dans votre projet

Pour un projet C++ MSBuild x64, sélectionnez votre configuration « Release », puis ouvrez les propriétés du projet. Dans Configuration Properties > Advanced > Use C++ Dynamic Debugging, sélectionnez « Yes ». Ensuite, recompilez votre projet pour commencer. Ce paramètre désactive l'optimisation de l'ensemble du programme. Pour CMake et d'autres systèmes de compilation, vous pouvez passer le nouveau commutateur /dynamicdeopt à cl.exe, lib.exe et link.exe.

Le débogage dynamique en C++ fonctionne également avec Unreal Engine 5.6 et les versions ultérieures, grâce à la prise en charge dans Unreal Build Tool et Unreal Build Accelerator. Pour l'essayer, activez WindowsPlatform.bDynamicDebugging = true; dans le fichier .Target.cs de votre cible, puis recompilez.

De plus, le débogage dynamique est compatible avec les systèmes de compilation distribués tels que FastBuild et IncrediBuild.

Source : Microsoft

Et vous ?

Quel est votre avis sur le sujet ?
Trouvez-vous cette initiative de Microsoft crédible ou pertinente ?

Voir aussi :

Microsoft annonce Visual Studio 2026 LTSC 18.11 : ce nouveau canal bénéficiera d'un support de deux ans avec l'ensemble complet des fonctionnalités, des capacités et des correctifs de l'EDI

Microsoft annonce la disponibilité générale de Visual Studio 2022 version 17.14 avec un mode agent, le support du serveur MCP, la génération de la documentation par l'IA et bien plus encore

Microsoft présente les nouveautés pour les développeurs C++ dans Visual Studio 2026, avec la prise en charge des outils de compilation MSVC 14.51 et des améliorations de l'expérience de chat IA
Vous avez lu gratuitement 37 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.

Une erreur dans cette actualité ? Signalez-nous-la !