【问题标题】:Is MFC deprecated?MFC 是否已弃用?
【发布时间】:2023-03-08 12:43:01
【问题描述】:

目前我在一个经常使用 MFC 的项目中工作,但在我看来,MFC 技术现在还没有被广泛使用。 MFC 的弃用程度如何?它的替代品是什么?我在 Windows 上使用 VS2010。

感谢您的回答。

【问题讨论】:

标签: windows visual-studio user-interface mfc


【解决方案1】:

如今,Windows 窗体和 WPF 变得越来越流行, 但是看到新版本的 MFC 仅在几个月前发布(请参阅 here),我还不会称它已弃用。

【讨论】:

    【解决方案2】:

    是的,MFC 并不是您所说的最先进的。如果您从头开始一个新的 (UI) 应用程序,您应该提出使用 MFC 的非常充分的理由(例如,您已经有了现有的代码)。有很多缺点,例如文档/视图架构,它仅适用于小型 UI 应用程序或您需要进行大量自定义,如果您想要此框架中未包含的控件(您肯定会在一点)。此外,测试 MFC 类并不容易,您也应该牢记这一点。

    广泛使用的是具有 MVC(模型-视图-控制器)架构的方法。您可以在此处阅读有关这两种架构的更多信息:

    Document / View as used in MFC

    Model View Controller

    当您考虑 MFC 时,我假设您已经具备 C++ 知识。因此,来自奇趣科技/诺基亚的Qt Framework 可能对您很感兴趣。它支持 MVC 架构,跨平台兼容并且仍在积极开发中。

    【讨论】:

      【解决方案3】:

      MFC 还不错。问题是大多数组件(窗口/小部件)都非常糟糕,或者更准确地说非常不灵活。正如 Hans 所说,它具有 18 年的向后兼容性,因此每个时钟周期和内存字节都计算在内。今天好痛。

      我使用它是因为 Windows 窗体和 WPF 不能用于跨平台 GUI 开发,其中后端的通用语言是 C 或 C++(如果 Java 不是您的项目的选项,无论出于何种原因)。

      根据您想要做什么以及外观非常原生的 GUI 的重要性,MFC 可能是唯一的选择,尤其是当您有能力购买第三方组件并使用功能包或功能区时。

      只要你不告诉我们更多关于你的项目的信息,我不会评论 QT/GTK/FLTK 或其他工具包

      【讨论】:

        猜你喜欢
        • 2018-09-12
        • 2017-12-06
        • 2017-08-11
        • 1970-01-01
        • 1970-01-01
        • 2017-11-16
        • 2011-07-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多