Библиотека Microsoft Foundation Class

редактировать

Библиотека Microsoft Foundation Class
Разработчик (и) Microsoft
Первоначальный выпуск1992; 28 лет назад (1992 г.)
Стабильный выпуск 14.22.27821.0 / 24 июля 2019 г.
Написано наC ++
Операционная система Microsoft Windows
Лицензия Собственность
Веб-сайтdocs.microsoft.com / en-us / cpp / mfc / mfc-desktop-applications

Библиотека Microsoft Foundation Class (MFC) - это C++ объектно-ориентированная библиотека для разработки настольных приложений для Windows.

MFC была представлена ​​Microsoft в 1992 году и быстро получила широкое распространение. Хотя с тех пор Microsoft представила альтернативные платформы приложений, MFC по-прежнему широко используется.

Содержание

  • 1 История
  • 2 Функции
  • 3 Версии
  • 4 См. Также
  • 5 Ссылки
  • 6 Дополнительная литература
  • 7 Внешние ссылки

История

MFC был представлен в 1992 году вместе с компилятором Microsoft C / C ++ 7.0 для использования с 16-битными версиями Windows в качестве чрезвычайно тонкой объектно-ориентированной оболочки C ++ для Windows API. C ++ в то время только начинал заменять C для разработки коммерческого прикладного программного обеспечения. В программе MFC прямые вызовы Windows API требуются редко. Вместо этого программы создают объекты из классов Microsoft Foundation Class и вызывают функции-члены, принадлежащие этим объектам. Многие из этих функций имеют общие имена с соответствующими функциями API.

Одна из особенностей MFC - использование "Afx" в качестве префикса для многих функций, макросов и стандартного предварительно скомпилированного заголовка name " stdafx.h ". На ранней стадии разработки то, что стало MFC, называлось «Расширения инфраструктуры приложений» и сокращенно «Afx». Название Microsoft Foundation Classes (MFC) было принято слишком поздно в цикле выпуска, чтобы изменить эти ссылки.

MFC 8.0 был выпущен вместе с Visual Studio 2005. MFC 9.0 был выпущен вместе с Visual Studio 2008. 7 апреля 2008 г. Microsoft выпустила обновление для классов MFC как внеполосное обновление для Visual Studio 2008 и MFC 9.. В обновлении представлены новые конструкции пользовательского интерфейса, в том числе ленты и связанные с ними виджеты пользовательского интерфейса, полностью настраиваемые панели инструментов, закрепляемые панели, которые можно свободно перемещать или прикреплять к любая сторона и вкладки документов.

MFC изначально была функцией коммерческих версий Visual Studio. Таким образом, он не входит в бесплатное программное обеспечение Visual C ++ Express. Однако выпуск Visual Studio от сообщества , представленный в 2014 году, включает MFC.

Object Windows Library (OWL), разработанная для использования с компилятором Borland Turbo C ++, была конкурирующим продуктом, представленным Borland примерно в то же время. В конце концов, Borland прекратила разработку OWL и на короткое время лицензировала распространение заголовков MFC, библиотек и DLL от Microsoft, хотя никогда не предлагала полностью интегрированную поддержку MFC. Позднее Borland выпустила библиотеку визуальных компонентов, чтобы заменить структуру OWL.

Возможности

MFC - это библиотека, которая обертывает части Windows API в C ++ классы, включая функции, позволяющие использовать по умолчанию рамки приложения. Классы определены для многих дескрипторов -управляемых объектов Windows, а также для предопределенных окон и общих элементов управления.

На момент своего появления MFC предоставляла макросы C ++ для обработки сообщений Windows (через Карты сообщений ), исключений, идентификация типа во время выполнения (RTTI), сериализация и создание экземпляра динамического класса. Макросы для обработки сообщений были нацелены на сокращение потребления памяти за счет предотвращения беспричинного использования виртуальной таблицы, а также на обеспечение более конкретной структуры для различных инструментов, поставляемых Visual C ++, для редактирования кода и управления им без синтаксического анализа всего языка. Макросы обработки сообщений заменили механизм виртуальной функции, предоставляемый C ++.

Макросы для сериализации, исключений и RTTI предшествовали появлению этих функций в Microsoft C ++ на несколько лет. 32-разрядные версии MFC для Windows NT 3.1 и более поздних версий операционных систем Windows использовали компиляторы, которые реализовали языковые функции и обновили макросы, чтобы просто обернуть языковые функции вместо предоставления настраиваемых реализации, реализуя восходящую совместимость.

Редактор ресурсов ленты MFC позволяет разработчику создавать ленту графически вместо того, чтобы использовать декларативную разметку на основе XML, такую ​​как RibbonX API. При желании компоненты ленты можно программировать напрямую, вызывая новый набор методов класса ленты. Разработчик может сочетать графическую и программную ленточную разработку по своему усмотрению. Мастер приложений MFC также был обновлен для поддержки новых функций, включая флажок, позволяющий выбрать, будет ли приложение использовать ленту или закрепляемые панели. Новые функции предоставляются в новых классах, поэтому старые приложения продолжают работать. Это обновление основано на версии Library Professional Edition. Microsoft ввела дополнительные лицензионные требования к пользователям лент. К ним относятся требование соблюдать рекомендации Microsoft по дизайну пользовательского интерфейса и антиконкурентная оговорка, запрещающая использование пользовательского интерфейса в приложениях, которые конкурируют с Microsoft Office.

MFC можно использовать путем связывания статической библиотеки или добавив MFC DLL.

Версии

ПродуктБиблиотекаВерсияДата выпуска
ИмяВерсия
Microsoft C / C ++ 7.0MFC 1.01992
Microsoft Visual C ++ 1.0Visual C ++ 1.0MFC 2.0
Visual C ++ 1.5mfc250.dllMFC 2.5
Visual C ++ 1.51mfc250.dllMFC 2.51
Visual C ++ 1.52cmfc250.dllMFC 2.5 (последняя платформа разработки для Windows 3.x )
Microsoft Visual C ++ 2.0Visual C ++ 2.0mfc30.dllMFC 3.0
Visual C ++ 2.1mfc30.dllMFC 3.1
Visual C ++ 2.2mfc30.dllMFC 3.2
Microsoft Visual C ++ 4.0Visual C ++ 4.0mfc40.dllMFC 4.0 (mfc 40.dll включен в Windows 95 )август 1995 г.
Visual C ++ 4.1mfc40.dllMFC 4.1
Visual C ++ 4.2mfc42.dllMFC 4.2 (mfc42.dll включен в Windows 98 исходный выпуск)март 1998 г.
eMbedded Visual C ++ 3.0mfc42.dllMFC 4.2
Microsoft Visual C ++ 5.0Visual C ++ 5.0mfc42.dllMFC 4.21, крупное обновление MFC 4.2.
Microsoft Visual C ++ 6.0Visual C ++ 6.0mfc42.dllMFC 6.01998
eMbedded Visual C ++ 4.0mfcce400.dllMFC 6.0
Microsoft Visual C ++.NET 2002Visual C ++.NET 2002 (Visual C ++ 7.0)mfc70.dllMFC 7.0февраль 2002 г.
Microsoft Visual C ++.NET 2003Visual C ++.NET 2003 (Visual C ++ 7.1)mfc71.dllMFC 7.1апрель 2003 г.
Visual C ++.NET 2003 + MS11-025MFC 7.10.6119.0апрель 2011 г.
Microsoft Visual C ++ 2005Visual C ++ 2005 (Visual C ++ 8.0)mfc80.dll8.0.50727.42октябрь 2005 г.
Visual C ++ 2005 SP18.0.50727.762июнь 2007
Visual C ++ 2005 SP1 + MS09-0358.0.50727.4053июль 2009 г.
Visual C ++ 2005 SP1 + MS11-025 (KB2467175)8.0.50727.5592апрель 2011 г.
Visual C ++ 2005 SP1 + MS11-025 (KB2538242)8.0.50727.6195 (входит в redist 8.0.61000 / 8.0.61001)J une 2011
Microsoft Visual C ++ 2008Visual C ++ 2008 (Visual C ++ 9.0)mfc90.dll9.0.21022.8ноябрь 2007 г.
Visual C ++ 2008 с пакетом дополнительных компонентов9.0.30411апрель 2008 г.
Visual C ++ 2008 SP19.0.30729.1август 2008 г.
Visual C ++ 2008 SP1 + MS09-0359.0.30729.4148июль 2009 г.
Visual C ++ 2008 SP1 + MS11-025 (KB2467174)9.0.30729.5570апрель 2011 г.
Visual C ++ 2008 SP1 + MS11-025 (KB2538243)9.0.30729.6161 (версия установщика 9.0.30729.5677)июнь 2011 г.
Microsoft Visual C ++ 2010Visual C ++ 2010 (Visual C ++ 10.0)mfc100.dll10.0.30319.1апрель 2010 г.
Visual C ++ 2010 + MS11-02510.0.30319.415апрель 2011 г.
Visual C ++ 2010 SP110.0.40219.1март 2011 г.
Visual C ++ 2010 SP1 + MS11-02510.0.40219.325август 2011
Microsoft Visual C ++ 2012Visual C ++ 2012 (Visual C ++ 11.0)mfc110.dll11.0.50727.126 июля 2012 г.
Visual C ++ 2012 с обновлением 111.0.51106.15 ноября, 2012
Visual C ++ 2012 с обновлением 311.0.60610.1 (также включен в redist 11.0.61030)26 июня 2013 г.
Microsoft Visual C ++ 2013Visual C ++ 2013 (Visual C ++ 12.0)mfc120.dll12.0.21005.15 октября 2013 г.
Visual C ++ 2013 с обновлением 212.0.30501.030 декабря 2014 г.
Visual C ++ 2013 с обновлением 5 + KB317956012.0.40660.08 июля 2016 г.
Visual C ++ 2013 с обновлением 5 + KB403293812.0.40664.018 июля 2017 г.
Microsoft Visual C ++ 2015Visual C ++ 2015 (Visual C ++ 14.0)mfc140. dll14.0.23026.020 июля 2015 г.
Visual C ++ 2015, обновление 114.0.23506.030 ноября 2015 г.
Visual C ++ 2015, обновление 214.0.23918.030 марта 2016 г.
Visual C ++ 2015, обновление 314.0.24210.027 июня, 2016
Visual C ++ 2015 U pdate 3 + KB316575614.0.24215.02 августа 2016 г.
Microsoft Visual C ++ 2017Visual C ++ 15.0mfc140.dll14.10.25008.07 марта 2017 г.
Visual C ++ 15.214.11.25325.010 мая 2017 г.
Visual C ++ 15.414.12.25810.010 октября 2017 г.
Visual C ++ 15.614.13.26020.06 марта 2018 г.
Visual C ++ 15.714.14.26405.07 мая 2018 г.
Visual C ++ 15.7.3?14.14.26429.431 мая 2018 г.
Visual C ++ 15.814.15.26706.014 августа 2018 г.
Visual C ++ 15.914.16.27012.613 ноября 2018 г.
Visual C ++ 15.9.514.16.27024.110 января 2019 г.
Visual C ++ 15.9.614.16.27026.124 января 2019 г.
Visual C ++ 15.9.914.16.27027.112 марта 2019 г.
Microsoft Visual C ++ 2019Visual C ++ 16.0RCmfc140.dll14.20.27404.027 февраля 2019 г.
Visual C ++ 16.0RC.314.20.27508.119 марта 2019 г.
Visual C ++ 16.1.014.21.27702.221 мая 2019 г.
Visual C ++ 16.2.014.22.27821.024 июля 2019 г.
Visual C ++ 16.3.014.23.27820.09 сентября 2019 г.
Visual C ++ 16.4.014.24.28127.43 декабря 2019 г.
Visual C ++ 16.5.014.25.28508.316 марта 2020 г.
Visual C ++ 16.6.014.26.28720.319 мая 2020 г.
Visual C ++ 16.6.314.26.28808.130 июня 2020 г.
Visual C ++ 16.714.27.29016.05 августа 2020 г.
Visual C ++ 16.7.514.27.29112.029 сентября 2020 г.

См. Также

Ссылки

Дополнительные материалы для чтения

Внешние ссылки

Последняя правка сделана 2021-05-30 10:11:52
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте