当前位置: 首页 > news >正文

QML19、QML 和 C++ 之间的数据类型转换

QML 和 C++ 之间的数据类型转换
在 QML 和 C++ 之间交换数据值时,QML 引擎会将它们转换为具有适合在 QML 或 C++ 中使用的正确数据类型。 这要求交换的数据是引擎可识别的类型。
QML 引擎为大量 Qt C++ 数据类型提供内置支持。 此外,自定义 C++ 类型可以向 QML 类型系统注册,以使它们可用于引擎。
本页讨论 QML 引擎支持的数据类型以及它们如何在 QML 和 C++ 之间转换。
数据所有权
当数据从 C++ 传输到 QML 时,数据的所有权始终属于 C++。 此规则的例外是从显式 C++ 方法调用返回 QObject:在这种情况下,QML 引擎假定对象的所有权,除非已通过调用 QQmlEngine: 将对象的所有权明确设置为保留在 C++ 中: 指定了 QQmlEngine::CppOwnership 的 setObjectOwnership()。
此外,QML 引擎尊重 Qt C++ 对象的正常 QObject 父所有权语义,并且永远不会删除具有父级的 QObject 实例。
基本 Qt 数据类型
默认情况下,QML 识别以下 Qt 数据类型,这些数据类型在从 C++ 传递到 QML 时会自动转换为相应的 QML 基本类型,反之亦然:
http://www.lryc.cn/news/230661.html

相关文章:

  • 力扣学习笔记——128.最长连续序列
  • 【git】远程远程仓库命令操作详解
  • 算法:穷举,暴搜,深搜,回溯,剪枝
  • 蓝桥杯 选择排序
  • 20. 深度学习 - 多层神经网络
  • 短剧小程序:让故事更贴近生活
  • 前端下载文件重命名
  • 【23真题】厉害,这套竟有150分满分!
  • 44. Adb调试QT开发的Android程序实用小技巧汇总
  • nacos集群配置(超完整)
  • 无线WiFi安全渗透与攻防(三) 无线信号探测(目前仅kismet)
  • Flutter的Widget, Element, RenderObject的关系
  • 测试员练就什么本领可以让自己狂揽10个offer
  • vue中实现图片懒加载的几种方法
  • Axure9基本操作
  • Docker - 网络
  • vue、react中虚拟的dom
  • Elasticsearch:ES|QL 快速入门
  • 7-1 进步排行榜
  • 解决删除QT后Qt VS Tools中Qt Options中未删除的错误
  • Django(五、视图层)
  • Git 工作流程、工作区、暂存区和版本库
  • PLSQL使用技巧
  • DEC 深度编码聚类函数
  • ubuntu中cuda12.1配置(之前存在11.1版本的cuda)(同时配置两个版本)
  • 千兆路由只有200M,原来是模式选择不对,也找到了内网不能通过动态域名访问内部服务的原因
  • 【10】maven打包报错 spring-boot-maven-plugin 与spring-boot 版本的不一致
  • SQLAlchemy 在 Flask 应用中的使用和最佳实践
  • FineReport -问题学习图表设计图表类型-单元格扩展父子格-报表预览
  • 微信小程序广告banner、滚动屏怎么做?