无法理解普通c ++与vc ++,win32编程,mfc,win32 api,CLI之间的关系

时间:2012-05-10 07:46:11

标签: c++ winapi visual-c++ mfc c++-cli

  1. 什么是mfc,cli和win32?你能帮我理解视觉工作室如何与这两个人合作吗?
  2. c ++和vc ++之间的差异是什么?当我们说“vc ++”默认情况下它会暗示对话框,窗体,窗口和其他gui元素吗?
  3. 如果我在visual c ++中创建一个基于控制台的应用程序,而不使用任何win32编程,它是否有资格作为可视化应用程序?
  4. 框,对话框,表格和其他gui是否受到win32编程或者它们有什么不同?
  5. 除了基于控制台和win32编程之外,c ++还有哪些其他类型的编程?
  6. 请尽可能简单。

2 个答案:

答案 0 :(得分:4)

C ++是一种编程语言。它已编译,这意味着您需要一个编译器将源代码转换为可执行程序。

VC ++是Microsoft的一个编译器,它在MS Windows上运行,并将C ++代码编译为MS Windows操作系统的可执行程序。

你可以用C ++编写各种程序,从设备驱动程序到webbrowser插件。好吧,如果你喜欢它,你甚至可以编写自己的操作系统。

为了简化您的开发,编译器开发人员(和第三方)编写了各种有用的库。 MFC是一个库(一个更精确的框架)的例子,它可以帮助您在MS Windows上开发“可视化应用程序”。市场上还有其他MFC替代品。

现在回答你的问题:

  1. MFC是Microsoft在Visual C ++中创建可视化应用程序的框架。 CLI是命令行界面。除了命令行输入外,CLI应用程序通常没有任何可视元素 - 它们大多数也没有任何菜单和鼠标交互。 Win32是32位MS Windows应用程序的通用术语。您也可以开发64位Windows。

  2. C ++是一种语言。 VC ++是一个编译器。这个编译器附带了一些额外的功能,超出了C ++中可用于简化MS Windows开发的功能,特别是通过MFC。

  3. 没有标准术语作为“视觉应用程序”,但从宽松的角度来看,如果没有图形元素,您的应用程序将不会被视为视觉应用程序。

  4. 对话框,表单和其他GUI元素受Win32编程。如前所述,您可以使用MFC来简化这种Win32应用程序的开发。

  5. 超越基于控制台和Win32编程:我认为您在IDE中创建新的C ++项目时,Visual Studio附带的各种“向导”让您感到困惑。您的安装中可能配置了几种类型的向导;举几个例子:你也可以将ActiveX和MFC控件作为你想要创建的“应用程序类型”。

答案 1 :(得分:-2)

好的,让我们从Windows开始吧。 Windows是使用C / C ++构建的。您可以使用Windows为您提供的功能编写Windows程序 - 这是Win32

MFC = Microsoft基础类 - 包装Win32-Interface的C ++类库。它是一个非常薄的包装器,这意味着你仍然可以(有时必须)访问Win32功能。按钮,对话框等是Windows的原始控件。

控制台应用程序旨在在命令行(a.k.a. dos框)中运行。您可以使用Windows的部分内容,如进程,文件系统等,但不能使用像对话框这样的“光学内容”。

VC ++是一个经常用于带有MFC的C ++,或者至少用于Windows下的C ++的术语。

HTH。