我打算学习Qt,想知道我必须具备哪些方面的C++、面向对象设计和其他方面的背景知识?例如模板、RAII、模式等等?
QT与其他平台或库并无不同,只需掌握C++的基础知识以及如何编译和构建代码即可正确使用它。
这个教程将带你了解构建QT应用程序的基础知识。
当然,像任何其他编程任务一样,你对所使用的语言和工具了解得越多,就越好。
我认为,"Qt开发基础" 这本书是最好的资源。它是由非常好的Qt3教程作者Johan Thelin所写。起初这本书也是一份免费的教程,但后来成为了一本书。
你可以获得印刷版和/或PDF版本。
此外,你可能还想看看"关于Qt4开发最佳IDE的问题"。
我认为Linux/Unix与KDE GUI是学习Qt的最佳选择之一,因为你可以确信Qt库和C++编译器已经安装好了。如果你的预算有限,优秀的Qt文档足以让你掌握基础知识。在Linux系统中,键入assistant可以更轻松地查看Qt文档,而不必在线上搜索。
此外,你还可以浏览/编辑许多基于Qt的开源项目代码,以便更深入地学习。
我建议阅读C++ GUI Programming with Qt4这本书。
它涵盖了Qt的几乎所有功能,对于初学者来说易于阅读,还包括C++和Java的介绍,解释了使用Qt开发所需的基本概念。
我真的很喜欢这本书。
我记得 Kylix(来自 Borlard,又名 CodeGear,又名 Embarcadero)使用 Qt 开发 Linux 的 GUI。您可以在此处阅读一篇文章: http://dn.codegear.com/article/29706
不幸的是,Kylix 已经很久没有更新了...但您可以在这里尝试运气: http://support.codegear.com/forums/directory/kylix
另一个好的阅读点是关于在 Eclipse 上使用 Qt: http://www.qtsoftware.com/developer/eclipse-integration
祝你好运!