找回密码
 立即注册
搜索
查看: 909|回复: 0

Qt 往事

[复制链接]

267

主题

0

回帖

1154

积分

管理员

积分
1154
发表于 2023-12-25 22:19:14 | 显示全部楼层 |阅读模式

那是 1990 年的一个夏日,Haavard 与 Eirik 暂时从繁重的项目中解脱,他们难得如此慵懒地倚坐在斑驳的树荫下。

“咳~”,Haavard 感叹道,仿佛得到解脱。

Eirik :“咋的了哥们?”(你不是明知故问吗~)

“这么干下去不是个事儿啊!大好的光阴就从指间流去,抓也抓不住……”,Haavard 盯着手里的光斑,直愣愣地说。

“是啊,累得像条狗,连小伙伴们办的舞会都没能去参加,这可怎么处对象呀……我可不想做单身狗……”,Eirik 简直要爆发了,但紧接着就把目光缓缓地从 Haavard 的眼睛移开。是啊,那又有什么办法呢。

“对,我们需要一款面向对象的显示系统!”,Haavard 恍然大悟地说。

听到“对象”一词 Eirik 变得容光焕发,他陷入了对未来的幻想……

以上故事是有节操地虚构的,不过在这次谈话中面向对象跨平台的 GUI 框架思想是确定下来了,接下来几年他们一步一个脚印地开发着,直到 1995 年 5 月 20 日 Qt 0.90 for X11/Linux 版的正式发布,一株嫩芽破土而出。

接触 Qt 也有几年了,不过之前更多地是在用 Borland C++ Builder ,而如今传奇已不在,遂决定投身 Qt 阵营。其实对于业余的人而讲,灵活用好一个就够了。Qt 就是这样一种灵活的框架,不仅支持 Linux, OS X, Windows 等传统的计算机三大操作系统,还支持 Android, iOS 两大智能机操作系统,还有 VxWorks 等嵌入式实时操作系统。对于这种多平台通吃的框架,还是很有必要深入学习一下的。与我们常听说的基于虚拟机的 Java 的“一次编译,到处运行”机制所不同的是,因为是 C++ 语言,所以只能做到“一次编写,到处编译”。

刚才也提到了,Qt 不是一种语言,而是一个 C++ 的编程框架。它使用了 MOC ( Meta-Object Compiler ) 作为预处理器,先将信号、时槽等扩展特性解释为标准 C++ ,然后交由标准 C++ 编译器( Clang、GCC、ICC、MinGW、MSVC 等)编译。

为什么聊 Qt 呢,因为我想在接下来的时间里深入学习一下这个框架,随时发表一些学习心得,这篇算是一个引子吧。“十年磨一剑,霜刃未曾试”,2015 年,就开始用用这把被磨砺了 20 年的宝剑吧!

如果需要对 Qt 了解更多,请访问官方关于页面:http://wiki.qt.io/About_Qt


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|棱讯科技 ( 粤ICP备2024228160号-2|粤公网安备44030002003510号 )

GMT+8, 2024-11-21 18:20 , Processed in 0.017376 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表