Sur cette page

Modifications apportées à Qt Remote Objects

Qt 6 résultent d’un effort délibéré visant à rendre le framework plus efficace et plus facile à utiliser.

Nous nous efforçons de maintenir la compatibilité binaire et source pour toutes les API publiques à chaque version. Cependant, certaines modifications étaient inévitables pour améliorer le framework Qt.

Dans cette rubrique, nous résumons ces modifications dans Qt Remote Objects et fournissons des conseils pour les prendre en compte.

Modifications des API

Les fonctions prenant une référence const à QString passent à QStringView

QRemoteObjectHostBase::proxy, QRemoteObjectHostBase::reverseProxy et QRemoteObjectNode::instances acceptent désormais un QStringView au lieu d’un const QString &. La principale différence qui en résulte est que la conversion implicite à partir de littéraux de chaîne (par exemple node.instances("abc");) n’est plus acceptée. À la place, vous pouvez utiliser un littéral de chaîne UTF-16 (node.instances(u"abc")).

Modifications apportées aux classes pour la prise en charge des backends de transport personnalisés

Les classes « semi-privées » IoDeviceBase, ServerIoDevice et ClientIoDevice ont été respectivement renommées QtROIoDeviceBase, QtROServerIoDevice et QtROClientIoDevice, afin d’assurer la cohérence avec la nomenclature de Qt. Elles ont également été déplacées de l’en-tête privé qconnectionfactories_p.h vers qconnectionfactories.h.

Remarque : ces classes sont fournies afin d’offrir davantage de flexibilité pour la mise en œuvre de protocoles de communication personnalisés pour Qt Remote Objects, mais aucune garantie de compatibilité source ou binaire n’est fournie à leur sujet. Nous recommandons d’utiliser les méthodes QRemoteObjectNode::addClientSideConnection() et QRemoteObjectHostBase::addHostSideConnection() si vous avez besoin d’une prise en charge des canaux de communication externes.

Modifications apportées à CMake

Les instructions d’ cmake concernant l’appel de repc et l’ajout des fichiers .rep générés à un projet CMake ont légèrement changé. Au lieu de la macro qt5_generate_repc, vous devez désormais utiliser les fonctions qt6_add_repc_sources, qt6_add_repc_replicas et qt6_add_repc_merged. Par exemple, le code suivant :

set(SOURCES
    main.cpp
    simpleswitch.cpp
)

qt5_generate_repc(SOURCES simpleswitch.rep SOURCE)
add_executable(directconnectserver ${SOURCES})

doit être remplacé par :

set(SOURCES
    main.cpp
    simpleswitch.cpp
)
add_executable(directconnectserver ${SOURCES})
qt6_add_repc_sources(directconnectserver simpleswitch.rep)

Vous trouverez ici des descriptions plus détaillées de ces fonctions CMake.

© 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.