请问学习qt之前是否要学习win32 api?

小猪飞侠 2013-06-12 10:42:19
如题,初步学完C++,现在想写一些小winsows程序。
首先面临一个问题,GTK\QT\MFC\wxWidgets这几个库选择哪一个?考虑到适用性,已经C++的原因,选择Qt.
但是现在又遇到一个问题,MFC自不必说,肯定要学习win32 api.那GTK\QT\wxWidgets这几个库呢?
请高手指点,谢谢。
...全文
679 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
狂风暴雨 2013-06-14
  • 打赏
  • 举报
回复
木有必要的。。Qt封装了。。windows api。。但是不排除要用一些特定的功能。
wandaoyongshi 2013-06-14
  • 打赏
  • 举报
回复
系统的学要从注册窗口类开始,windows的api也太tm多了,感觉非常蛋疼,学这个你就没空学Qt了。
wandaoyongshi 2013-06-14
  • 打赏
  • 举报
回复
Qt封装了大部分常用的win32api,少数特殊功能的api没有封装。具体用到哪个api就学哪个,暂时没有必要系统的学,系统的学你现在也学不明白。
dbzhang800 2013-06-13
  • 打赏
  • 举报
回复
Windows 平台下所有的GUI库都是对 Win32 api的封装,不仅MFC、Qt、GTK是,.net、winrt 也是 不止是GUI,连大家熟悉的 fopen()/fclose()/std::fstream/... 等等,都是对Win32 api封装
寒山-居士 2013-06-13
  • 打赏
  • 举报
回复
Qt source code QProcess_win.cpp http://qt.gitorious.org/qt/qt/blobs/4.8/src/corelib/io/qprocess_win.cpp
小猪飞侠 2013-06-13
  • 打赏
  • 举报
回复
引用 4 楼 Esonpo 的回复:
其实qt底层调用的也是一些系统平台的api,具体你可以查看源码,比如QProcess,他源码就是调用了win api 一个ShellExecute等相关函数实现的
如果是这样的话,win32 api不仅肯定要学,而且是要好好学了。
寒山-居士 2013-06-13
  • 打赏
  • 举报
回复
其实qt底层调用的也是一些系统平台的api,具体你可以查看源码,比如QProcess,他源码就是调用了win api 一个ShellExecute等相关函数实现的
小猪飞侠 2013-06-13
  • 打赏
  • 举报
回复
引用 2 楼 Esonpo 的回复:
楼主太在意啦,既然选择了Qt,那win api的事情,大部分的api Qt自然已经封装到类方法等里面去啦,只不过有些api,Qt不能做到全部,或者说希望给开发者更多的自由,自己去研究,不过说实话如何跟平台关系太紧密,或者调用系统的api比较多的时候,了解和学习win api是必要的
非常感谢,请问一下,QT到底是仅仅对win32 api的一个封装,只是与mfc的思想不一样? 还是他自己写了一些与win32 api同一级别的东西?
寒山-居士 2013-06-13
  • 打赏
  • 举报
回复
楼主太在意啦,既然选择了Qt,那win api的事情,大部分的api Qt自然已经封装到类方法等里面去啦,只不过有些api,Qt不能做到全部,或者说希望给开发者更多的自由,自己去研究,不过说实话如何跟平台关系太紧密,或者调用系统的api比较多的时候,了解和学习win api是必要的
儿大不由爷 2013-06-13
  • 打赏
  • 举报
回复
应该不需要吧,除非你有特殊需求
Arkist 2013-06-13
  • 打赏
  • 举报
回复
既然都封装好了,其实倒不必纠结于学习哪个的,建议楼主在学习过程中用到一些win32 api时再学,直接入手Qt就行了
小猪飞侠 2013-06-13
  • 打赏
  • 举报
回复
引用 7 楼 dbzhang800 的回复:
Windows 平台下所有的GUI库都是对 Win32 api的封装,不仅MFC、Qt、GTK是,.net、winrt 也是 不止是GUI,连大家熟悉的 fopen()/fclose()/std::fstream/... 等等,都是对Win32 api封装
ok,谢谢了,那我的思路也明确了,抓紧学习win32 api,然后学些Qt。

16,240

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧