您的位置:首页 > 编程语言 > C语言/C++

C++、Visual C++、MFC(编译和封装)之间的关系是什么?

2016-07-23 10:15 591 查看

https://www.zhihu.com/question/20772069


C++、Visual C++、MFC(编译和封装)之间的关系是什么?

陈良乔http://www.chenlq.net
C++初学者义务辅导

143 人赞同
你遇到了一个C++初学者大多会遇到或者搞混淆的概念问题

具体到你的疑惑

无论在Windows下还是Linux下,C++都只是语言,更具体一点,就是C++语言标准,这里又可以细分为不同的版本,比如C++98,C++03以及最新的C++11(2011年在ISO通过,参考C++11
FAQ中文版)

C++只是一套语言规则标准,我们要利用它来编程,还需要具体的实现。而Visual C++(其中的编译器其实是cl.exe), GCC, Clang, Intel C++, IBM XLC++等等,都是C++标准的具体实现,也就是你所说的编译器。

而MFC,则是类库,也就是为了某一特定目的而事先设计好的类的集合。比如,MFC,Qt,WTL等等是为了应用程序界面设计,boost是为了提高C++的开发效率而事先实现的模板库,OpenGL是为了实现3D渲染而提供的函数库。如果用盖房子来做一个比喻的话,C++是最基础的沙子和水泥,而MFC则是预制板,是事先做好的半成品,从而使得我们可以利用这些预制件更便捷高效地盖好房子(应用程序) 

以上这些,是我们盖房子需要的材料,而IDE则是我们用C++写程序所需要的一套工具(代码编辑器,调试器等,就像盖房子需要的起重机,搅拌机,运输机)。而Visual C++,Eclipse等等,都只是这一套工具的牌子(就像你的起重机是三一重工的,还是徐工的)。

这样的解释,这些概念清楚了吗?

不仅仅是写GUI用到的函数,其他任何函数库(OpenGL,boost等)的使用,都需要查阅其文档,才能知道其中各个函数的使用方法,才能正确有效地使用。这就不仅仅是MSDN了,你使用什么库,就在网上找相关的文档就可以了。关于C++,我最常用的就是Reference
- C++ Reference了,就像新华字典一样子,常备案头。

别纠结,慢慢一步步来
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: