Enchaînement redondant d'options
Cette catégorie d'avertissement est orthographiée [redundant-optional-chaining] par qmllint.
Chaînage optionnel redondant
Qu'est-ce qui s'est passé ?
Certaines recherches utilisent un chaînage optionnel alors qu'il n'est pas nécessaire. Cela peut se produire lors de la recherche de valeurs d'énumérations ou lors de l'exécution d'une recherche sur une base qui ne peut pas être null ou undefined.
Pourquoi est-ce mauvais ?
Une recherche optionnelle doit effectuer une vérification à l'exécution qu'une recherche normale n'effectue pas. Ces instructions supplémentaires ne peuvent pas toujours être considérées comme redondantes et optimisées par l'outil. Elles ajoutent alors un coût supplémentaire en termes de performances d'exécution et alourdissent inutilement le programme.
En outre, l'avertissement peut indiquer que la recherche optionnelle a été effectuée sur la mauvaise base de la chaîne. Voir la section suivante pour un exemple plus concret.
Exemple
// Main.qml import QtQml QtObject { // Main will either be resolved and always work, or throw an exception or fail to compile enum E { A, B, C } property int i: Main?.A // A url cannot be null or undefined property url u: "" property string s: u?.toString() // Did you mean to make the second lookup optional? property int i: Safe?.Unsafe.i }
Pour corriger ces avertissements, remplacez les recherches optionnelles redondantes par des recherches non optionnelles :
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.