Tre*_*ith 10 c++ qt cross-platform language-design
我最近开始研究Qt(我安装了Qt 4.5.2并安装了他们的Eclipse-CDT插件,称为"qt integration v1.5.2",我将在Linux-Eclipse-CDT-QTintegration中进行所有开发).
最初我认为Qt是一个直接的vanilla C++库但是当我安装并开始运行Qt示例代码时,我看到很多"怪异"的东西,我认为是非标准的.
我的目标是在高层次的抽象中理解:
Jos*_*ley 30
Qt是一个框架,而不是一个库.这不是编程语言强制执行的硬性和快速区分,而是描述了代码的设计和使用方式:
一个库是由您的代码别人的代码.使用库意味着您的应用程序保持原样,它只有另一个库来帮助它.
一个框架是你的代码适合别人的代码.使用框架意味着框架定义了应用程序的结构.
如果您正在使用框架,则需要了解该框架的约定,这些约定可能与基本语言略有不同; 否则,你可以花很多时间来对抗框架,你会错过它所提供的一些东西.
特别是Qt看起来不像直接的vanilla C++,因为它不是直接的vanilla C++.它为C++的对象系统添加(有限的)扩展,以允许信号和插槽等功能; 这些扩展是使用Qt的moc实现的,它充当C++预处理器.有关Qt的C++扩展的更多信息:
| 归档时间: |
|
| 查看次数: |
2481 次 |
| 最近记录: |