MFC 与 CLR?

Posted

技术标签:

【中文标题】MFC 与 CLR?【英文标题】:MFC vs. CLR? 【发布时间】:2009-01-10 05:44:43 【问题描述】:

在 Visual Studio C++ 项目中,MFC 会比使用 CLR 更快吗?我会专门使用 2008 年。

哦,我问的原因是因为我有 .NET 方面的经验,但对 MFC 了解不多。我了解 MFC 是什么,但从未真正使用过。

【问题讨论】:

【参考方案1】:

如果您指的是开发时间,如果您有 .NET 方面的经验并且运行时环境要求不是问题,那么您最好进行某种形式的 CLR 项目。 MFC 的学习曲线相当陡峭,而且 .NET 体验很容易跨语言翻译。

如果您谈论的是运行时速度,MFC(本机代码)几乎肯定会更快。

【讨论】:

我正在研究什么会跑得更快。 虽然,Visual C++ .NET 有一些非常奇怪的语法扩展。 :)【参考方案2】:

如果您谈论的是启用 /clr 的 Visual C++ 项目,那么肯定没有 /clr 的项目会更快。但是,在某些情况下(某些情况:并非全部),没有 /clr 的 Visual C++ 项目可能会被 Visual C# 项目超越,这主要是因为可以在 CLR 层进行优化。

【讨论】:

谢谢你 - 我想你已经详细地回答了我的问题。【参考方案3】:

在这种情况下,我可以说 - 使用你所知道的。 .net (winforms) 与 MFC 相比并不逊色(除非您正在做一些需要平台支持的事情)。

【讨论】:

【参考方案4】:

我建议两者都用。我认为 MFC 核心和 CLR 模块是很好的应用程序结构。

【讨论】:

以上是关于MFC 与 CLR?的主要内容,如果未能解决你的问题,请参考以下文章

ATL CLR MFC Win32 常规 的区别

VC学习笔记---ATL MFC CLR三个库的区别

使用 /clr 编译 MFC 应用程序(步骤 1:链接到动态 DLL)

如何在 MFC No CLR 中访问 Winform ActiveX 控件

MFC C++/CLI 项目:VS2012 中的 /CLR 开关导致调试问题

MFC:修复 GUI 上的控制台