
Débogueur
Déboguer avec les privilèges root
CLion 2020.3 peut exécuter et déboguer votre application avec les privilèges root. Il vous suffit de sélectionner cette option dans la configuration Run/Debug correspondante. Cela fonctionne pour les applications CMake, Makefile, Gradle Native, Custom Build et CTest.
Débogage avec des core dumps
La nouvelle action Run | Open Core Dump... disponible pour Linux et macOS vous permet d'ouvrir un dump principal existant d'un processus qui a échoué dans CLion et de le déboguer à partir de là. Les utilisateurs peuvent inspecter la vue des frames et des variables, consulter la vue de la mémoire et du désassemblage, évaluer les expressions et exécuter les commandes du débogueur depuis la console de débogage.
Définir un point d'exécution
La nouvelle action Set Execution Point to Cursor vous permet d'avancer et de revenir en arrière dans l'exécution de votre programme pendant le débogage, d'interrompre des boucles ou de les redémarrer, de sélectionner une autre branche dans une clause if-else ou une instruction switch-case, et même d'ignorer complètement des boucles. Il suffit de glisser-déposer une flèche dans la gouttière de la ligne concernée.
Conseils interactifs et watches inline
Désormais, lorsque l'application s'exécute en mode débogage, l'éditeur affiche des conseils inline cliquables que vous pouvez développer pour voir tous les champs qui appartiennent à une variable donnée. De plus, vous pouvez modifier les valeurs des variables dans la liste déroulante ou ajouter une expression arbitraire comme watch inline à cet emplacement dans le code.
Paramètres d'exécution
Configurer l'environnement avec un script
CLion vous permet désormais d'utiliser un script pour spécifier l'environnement dans lequel une configuration Run/Debug sera lancée. Ce nouveau paramètre est disponible dans toutes les configurations d'applications et de tests unitaires.
Modifier les configurations pendant l'indexation
Plus besoin d'attendre ! Les configurations Run/Debug peuvent être modifiées pendant l'indexation du projet.
Tests unitaires
Prise en charge de CTest
CTest, un exécuteur de test de CMake, est désormais pris en charge dans CLion. Ainsi, la liste des tests qui sont exécutés avec CTest est détectée et l'EDI crée automatiquement des configurations Run/Debug pour ces tests. Lorsque les tests sont lancés, les résultats sont présentés dans l'exécuteur de test intégré, à partir duquel vous pouvez notamment déboguer les tests et relancer uniquement les tests ayant échoué.
Exécuteur de test pour Google Test
La version 2020.3 améliore la prise en charge de CLion pour Google Test, le framework de tests unitaires C++ le plus populaire au monde (d'après notre enquête sur l'écosystème des développeurs en 2020 31 % des développeurs C++ utilisent Google Test). Les mises à jour comprennent :
- L'arborescence complète des tests est immédiatement affichée dans l'exécuteur de test intégré, puis les tests sont exécutés.
- Pour les tests paramétrés, CLion affiche désormais les paramètres des tests directement dans l'arborescence des tests.
- Les tests désactivés (ceux dont le nom comporte le préfixe DISABLED) sont également affichés dans l'arborescence des tests avec l'icône correspondante.
Analyse du code et refactorisation
MISRA C et C++
CLion 2020.3 fournit une prise en charge partielle de MISRA C 2012 et MISRA C++ 2008, directives largement utilisées dans le domaine du développement embarqué, notamment dans le secteur automobile. Cette prise en charge accélère le développement de ce type de projets en identifiant les incompatibilités plus tôt dans le cycle de développement. La liste des vérifications prises en charge actuellement est disponible sur la page Confluence de CLion.
Valeurs non utilisées
CLion 2020.3 améliore l'inspection des valeurs inutilisées, qui détecte les situations dans lesquelles une valeur de variable n'est jamais utilisée après avoir été attribuée. L'inspection peut désormais être personnalisée afin de prendre en compte les préférences de style à l'aide d'initialiseurs de variables par défaut. Une nouvelle option permettant de désactiver l'inspection dans de tels cas a été ajoutée aux paramètres.
Extraire les paramètres lambda
Une nouvelle refactorisation Extract Lambda Parameter a été ajoutée à CLion. Elle permet d'extraire une expression ou une déclaration dans un nouveau paramètre avec une expression lambda passée comme argument correspondant. Par exemple, la déclaration peut être une fonction de comparaison passée à une fonction de tri.
Saisie automatique du code
Extraits de saisie automatique Clang
Les extraits de saisie automatique Clang vous permettent d'insérer des constructions courantes lorsque des mots-clés C++ sont saisis. Dans certains cas, par exemple lorsqu'un mot-clé typedef est saisi, la saisie automatique du code peut suggérer non seulement le mot-clé lui-même, mais aussi des stubs pour le type et le nouveau nom.
Saisie automatique pour les templates
CLion 2020.3 améliore la saisie automatique du code, car il fonctionne désormais beaucoup plus précisément avec les types de templates. Par exemple, les options de saisie automatique sont affichées pour les éléments du conteneur et les itérateurs dans le modèle de fonction.
Projets Qt
Créer un nouveau projet Qt
La boîte de dialogue New Project propose les types de projets « Qt Console Executable » et « Qt Widgets Executable ». Vous pouvez également sélectionner le chemin du préfixe Qt CMake, le standard du langage C++ à utiliser dans le projet et la version Qt. Le nouveau projet est généré à l'aide des modèles correspondants.
Créer une nouvelle classe d'interface utilisateur Qt
Un nouvel élément de classe QT UI dans le menu New (Alt+Inser) /0> vous permet de créer simultanément une classe Qt et un fichier .ui. Indiquez le nom de la classe et sélectionnez la classe parente (QWidget, QMainWindow ou QDialog). Les fichiers .h/.cpp/.ui seront générés en utilisant la base Filename comme nom de fichier. Les fichiers générés suivent les modèles listés dans Settings/Preferences | Editor | File and Code Templates - Qt Class, Qt Class Header, et Qt Designer Form.
Complétion des signaux et slots
Les signaux et les slots sont des fonctionnalités centrales de Qt, car ils sont utilisés pour la communication entre les objets. CLion comprend désormais quand les signaux ou les slots doivent être complétés, et ne filtre que les membres correspondants dans la liste déroulante de complétion.
Auto-importation avec le style Qt
Dans CLion 2020.3, les suggestions d'auto-importation dans les projets Qt sont paramétrées pour suivre le style le plus couramment utilisé pour Qt.
Projets Makefile
Prise en charge des projets utilisant libtool, dolt, et ccache
Les projets Makefile utilisant des wrappers comme ccache, libtool, dolt, slibtool et jlibtool, peuvent désormais être correctement chargés dans CLion.
Configurations Run/Debug
Il est encore plus facile de configurer un projet Makefile dans CLion, car les configurations Run/Debug sont créées automatiquement pour les cibles dans un Makefile de niveau supérieur lors du chargement du projet. À présent, pour exécuter et déboguer, il vous suffit de faire pointer la configuration vers l'exécutable compilé.
Recompiler un seul fichier
L'action Recompiler (Ctrl+Maj+F9) permet d'accélérer le processus de développement en compilant un seul fichier, et non l'ensemble du projet. Et désormais, cela fonctionne aussi pour les projets Makefile !
CMake
Activer/Désactiver les profils CMake
Il est maintenant possible de conserver plusieurs profils CMake configurés dans CLion tout en désactivant ceux qui ne sont pas utilisés actuellement. Cela permet de réduire le temps de chargement du projet et d'éviter les échecs redondants de profils temporairement indisponibles (par exemple dans le cas de configurations...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.