Les changements apportés à Qt Remote Objects
Qt 6 est le résultat d'un effort conscient pour rendre le cadre plus efficace et plus facile à utiliser.
Nous essayons de maintenir la compatibilité binaire et source pour toutes les API publiques dans chaque version. Mais certains changements étaient inévitables dans un effort pour faire de Qt un meilleur framework.
Dans cette rubrique, nous résumons ces changements dans Qt Remote Objects, et fournissons des conseils pour les gérer.
Changements dans l'API
Les fonctions prenant const-ref QString changeant en QStringView
QRemoteObjectHostBase::proxyLes fonctions de type const-ref QString, QRemoteObjectHostBase::reverseProxy et QRemoteObjectNode::instances acceptent maintenant QStringView au lieu de const QString &. La différence la plus importante est qu'elles n'acceptent plus la conversion implicite des chaînes littérales (c'est-à-dire node.instances("abc");). À la place, vous pouvez utiliser une chaîne littérale UTF-16 (node.instances(u"abc")).
Modifications des classes pour la prise en charge d'un backend de transport personnalisé
Les classes "semi-privées" IoDeviceBase, ServerIoDevice, et ClientIoDevice sont maintenant renommées en QtROIoDeviceBase, QtROServerIoDevice, et QtROClientIoDevice respectivement, pour être cohérent avec le nommage dans Qt XML. Elles sont également déplacées de l'en-tête privé qconnectionfactories_p.h vers qconnectionfactories.h.
Note : Ces classes sont fournies pour donner plus de flexibilité à la mise en œuvre de protocoles de communication personnalisés pour Qt Remote Objects, mais il n'y a aucune garantie de compatibilité source ou binaire pour elles. Nous recommandons d'utiliser les méthodes QRemoteObjectNode::addClientSideConnection() et QRemoteObjectHostBase::addHostSideConnection() si vous avez besoin d'un support pour les canaux de communication externes.
Changements dans CMake
Les instructions cmake pour appeler repc et ajouter les fichiers .rep générés à un projet CMake ont été légèrement modifiées. Au lieu de la macro qt5_generate_repc, vous devez maintenant 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})Devrait être remplacé par :
set(SOURCES
main.cpp
simpleswitch.cpp
)
add_executable(directconnectserver ${SOURCES})
qt6_add_repc_sources(directconnectserver simpleswitch.rep)Des descriptions plus détaillées de ces fonctions CMake sont disponibles ici.
© 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.