Microsoft Foundation Class Library

Why Trust Techopedia

What Does Microsoft Foundation Class Library Mean?

The Microsoft Foundation Class Library is a toolkit containing a set of predefined C++ classes for building applications for Windows. This term is also known as Microsoft Foundation Classes (MFC).

Advertisements

Techopedia Explains Microsoft Foundation Class Library

MFC provides an application framework for building programs for Windows. Programming with MFC has the following advantages:

  • Saves developers time by providing pre-written code
  • Provides greater flexibility by making code more portable among different operating systems (Windows and Unix – requires a Unix version of MFC) and processors (x86 and DEC Alpha)
  • Provides classes for creating tab dialogs, print preview and user-interface elements, such as windows, tool bars, menus, etc
  • Simplifies database programming through Data Access Objects (DAO) and Open Database Connectivity (ODBC) classes
  • Provides easy access to other technologies like ActiveX controls, Object Linking and Embedding (OLE) and Internet programming.

When using MFC, there are rare instances when direct use of Windows application programming interfaces (APIs) is needed. Because MFC is a thin wrapper for the Windows API, most of the class methods are actually mapped to their corresponding API functions.

In April 2010, MFC version 10 was released with Visual C++ 2010 and .NET version 4.0.

Advertisements

Related Terms

Margaret Rouse
Technology expert
Margaret Rouse
Technology expert

Margaret is an award-winning writer and educator known for her ability to explain complex technical topics to a non-technical business audience. Over the past twenty years, her IT definitions have been published by Que in an encyclopedia of technology terms and cited in articles in the New York Times, Time Magazine, USA Today, ZDNet, PC Magazine, and Discovery Magazine. She joined Techopedia in 2011. Margaret’s idea of ​​a fun day is to help IT and business professionals to learn to speak each other’s highly specialized languages.