Table of Contents
ReSharper C++ 2024.3 : Nouvelles Fonctionnalités et Améliorations
ReSharper C++ 2024.2, la dernière version majeure de l’extension Visual Studio de JetBrains pour les développeurs C++, a été publiée en août. Cette mise à jour apporte un ensemble de nouveautés intéressantes, notamment l’implémentation de nouvelles fonctionnalités du langage C++23, l’enrichissement des info-bulles et plusieurs améliorations concernant la refactorisation Rename. Pour les utilisateurs d’Unreal Engine, cette version offre également une prise en charge des traits de structure ainsi qu’une nouvelle inspection capable de détecter les appels manquants aux méthodes de base.
JetBrains a désormais ouvert le programme d’accès anticipé (EAP) pour ReSharper C++ 2024.3, la troisième mise à jour majeure de cette année. Les développeurs peuvent tester les nouvelles fonctionnalités avant leur publication officielle. Examinons donc les améliorations apportées par cette version.
Refactorisation : Move to Folder
La refactorisation Move to Folder intègre désormais la gestion des fichiers C++. Après avoir déplacé les fichiers sélectionnés vers leur nouvel emplacement, cette fonctionnalité met automatiquement à jour les directives #include qui référencent les fichiers déplacés.
Améliorations linguistiques
ReSharper C++ prend désormais en charge plusieurs nouvelles fonctionnalités de langage :
- Suffixe de littéral pour
size_tet attributs sur les expressions lambda en C++23. - Les opérateurs
typeofettypeof_unqualde C23. - Le trait de type
std::has_unique_object_representationsde C++17.
JetBrains a également renforcé la compatibilité avec d’autres chaînes d’outils C++ en dehors de MSVC.
Bibliothèque Ranges et Nouveautés de Formatage
ReSharper C++ 2024.3 propose plusieurs améliorations pour les utilisateurs de la bibliothèque ranges de C++20. Parmi les nouvelles options, on trouve des actions contextuelles permettant de convertir l’utilisation d’adaptateurs ranges entre les formes pipe et appel, ainsi que des erreurs de surcharge plus lisibles pour les adaptateurs range utilisant la forme pipe.
Concernant le formatage de code, les commentaires // @formatter:off/on peuvent être utilisés pour désactiver et réactiver le formateur. De plus, l’assistance à la saisie insère automatiquement un espace entre les mots-clés de contrôle de flux (for/if/while/switch/catch) et la parenthèse ouvrante lorsque l’option de formateur correspondante est activée.
Documentation XML et Support d’Unreal Engine
Lors de l’utilisation du modèle intégré de commentaires de documentation, il est désormais possible de personnaliser le modèle pour adopter la documentation XML plutôt que Doxygen. ReSharper C++ reconnaît également la documentation XML au sein des commentaires /\*\*...\*.
Pour les utilisateurs d’Unreal Engine, ReSharper 2024.3 introduit des live templates intégrés pour générer des instructions UE_LOG et UE_LOGFMT. Ces modèles facilitent la sélection rapide de la catégorie de journalisation souhaitée ainsi que du niveau de verbosité à partir d’une liste de valeurs disponibles.
Génération de Code et Analyse
Une nouveauté notable dans la génération de code concerne la fonction redéfinie avec Generate. Auparavant, ReSharper C++ omettait les arguments par défaut, évitant ainsi les situations où les arguments différaient entre une fonction de base et son override. Désormais, un nouveau paramètre permet de conserver les arguments par défaut lors de la génération d’une fonction de substitution.
En matière d’analyse de code, JetBrains a mis à jour l’inspection Can be replaced with structured bindings, réduisant sa fréquence d’affichage. Cette inspection n’apparaît plus lorsque le remplacement entraînerait plus de deux liaisons structurées, dont certaines ne sont pas utilisées.
Les utilisateurs peuvent explorer ces nouveautés et bien d’autres au fil du programme EAP. Pour télécharger les dernières versions EAP de ReSharper C++, rendez-vous sur le site officiel. Les builds EAP sont également accessibles via l’application gratuite Toolbox ou via des snapshots pour les utilisateurs d’Ubuntu.
Téléchargez la dernière version EAP de ReSharper C++ maintenant pour découvrir toutes ces nouvelles fonctionnalités !