[QT入门篇]1 QT中的对象模型-概述
2016-04-27 21:36
435 查看
QT是一个基于C++的图形UI库,但它不仅仅局限于UI,它集成了当前相当广泛的不同技术,如GUI技术、数据存储技术、多媒体技术、网络技术、Web技术、脚本技术等等。提到C++,必然涉及到对象模型。
标准的C++对象模型已经高效地支持了对象技术,但是标准C++对象模型的静态特性在某些问题域中很不灵活。比如GUI就是这样一种问题域,它即需要高效的运行效率,又需要高度的灵活性。很幸运,QT可以完美的适用于这个领域,它基于C++,同时提供了QT对象模型,即保证了运行速度又提供了GUI编程的灵活性。
下面介绍一下QT为C++新增加的特征:
强大的对象间无缝通信机制——信号槽;
可以定制和查询的对象属性;
强大的事件系统;
方便的国际化能力;
通过精密间隔的定时器在事件驱动的GUI中优雅地整合多种任务;
以自然的层次式和可查询的对象树形式组织对象的所有关系;
当守卫指针(QPointer)引用的对象被删除的时候,它会自动被设置为0;不像普通的C++指针,当他们的对象被删除时他们就变得非常危险;
跨边界动态转换;
支持创建自定义类型。
标准的C++对象模型已经高效地支持了对象技术,但是标准C++对象模型的静态特性在某些问题域中很不灵活。比如GUI就是这样一种问题域,它即需要高效的运行效率,又需要高度的灵活性。很幸运,QT可以完美的适用于这个领域,它基于C++,同时提供了QT对象模型,即保证了运行速度又提供了GUI编程的灵活性。
下面介绍一下QT为C++新增加的特征:
强大的对象间无缝通信机制——信号槽;
可以定制和查询的对象属性;
强大的事件系统;
方便的国际化能力;
通过精密间隔的定时器在事件驱动的GUI中优雅地整合多种任务;
以自然的层次式和可查询的对象树形式组织对象的所有关系;
当守卫指针(QPointer)引用的对象被删除的时候,它会自动被设置为0;不像普通的C++指针,当他们的对象被删除时他们就变得非常危险;
跨边界动态转换;
支持创建自定义类型。
相关文章推荐
- QT学习 第一章:基本对话框
- 使用Shiboken为C++和Qt库创建Python绑定
- Qt 5.6更新至RC版,最终版本近在咫尺
- PHP5 面向对象程序设计
- 细品javascript 寻址,闭包,对象模型和相关问题
- JavaScript 对象模型 执行模型
- Qt定时器和随机数详解
- 理解Javascript_10_对象模型
- Qt实现图片移动实例(图文教程)
- Qt for Android开发实例教程
- QModelIndex/Role/Model介紹<二>
- Qt Model/View/Delegate浅谈 - QAbstractListModel
- Qt Model/View/Delegate浅谈 - roleNames()
- 基于PyQt5的快速开发框架QFramer
- OSX下安装PyQt
- ok6410开发板移植DirectFB手记
- 【笔记】给Qt内嵌一个Chrome吧
- 【算法】最短路径之A*搜索
- qt入门必备
- 在 Qt4 中使用 C++11