|
Microsoft Foundation Classes, or MFC, is a Microsoft library that wraps portions of the Windows API in C++ classes, forming an application framework. Classes are defined for many of the handle-managed Windows objects and also for predefined windows and common controls. Microsoft Corporation (NASDAQ: MSFT, HKSE: 4338) is an international computer technology corporation with 2005 global annual sales of US$42. ...
Illustration of an application which may use libvorbisfile. ...
A wrapper can refer to several things: In computer science: a wrapper pattern (such as a driver wrapper) is a design pattern where a piece of code allows classes to work together that normally could not because of incompatible interfaces. ...
The Windows API is the name given by Microsoft to the core set of application programming interfaces available in the Microsoft Windows operating systems. ...
For a WikiBook on programming with C++, see Wikibooks: C++ Programming. ...
In object-oriented programming, classes are used to group related variables and functions. ...
In computer programming, an application framework is a term usually used to refer to a set of libraries or classes that are used to implement the standard structure of an application for a specific operating system. ...
A smart pointer is an abstract data type that simulates a pointer while providing additional features, such as automatic garbage collection or bounds checking. ...
History MFC was introduced in 1992 with Microsoft's C/C++ 7.0 compiler for use with 16-bit versions of Windows. It was part of an overall Microsoft effort to gain market share for development tools, and it was designed to showcase the capabilities of the C++ programming language. C++ was just beginning to replace C for development of commercial application software and C/C++ 7.0 was the first of Microsoft's compilers to add C++ support. MFC was inspired by, and owes much of its structure to, the Think Class Library (TCL) on Macintosh, later bought by Symantec. 1992 (MCMXCII) was a leap year starting on Wednesday. ...
A diagram of the operation of a typical multi-language compiler. ...
In computer science, 16-bit is an adjective used to describe integers that are at most two bytes wide, or to describe CPU architectures based on registers, address buses, or data buses of that size. ...
â¹ The template below has been proposed for deletion. ...
The C Programming Language, Brian Kernighan and Dennis Ritchie, the original edition that served for many years as an informal specification of the language The C programming language (often, just C) is a general-purpose, procedural, imperative computer programming language developed in the early 1970s by Dennis Ritchie for use...
Symantec Corporation NASDAQ: SYMC, founded in 1982, is the world leader in providing solutions to help individuals and enterprises assure the security, availability, and integrity of their information. ...
The Object Windows Library (OWL), designed for use with Borland's Turbo C compiler, was a competing product introduced by Borland around the same time. Since it more strictly followed some OO design guidelines, OWL was more popular than MFC for a time. However, it lost market share when OWL updates lagged the addition of new features to Windows. Borland then chose to release a new version of their OWL framework which was incompatible with earlier editions. A decision by Borland was made to discontinue OWL development and Borland began licensing MFC from Microsoft. The Object Windows Library (OWL) was a Borland library, which was an object-oriented wrapper around the Win16 API. It was used in Turbo Pascal for Windows, Borland Pascal and their C++ package. ...
Turbo C is a Borland Integrated Development Environment and compiler for the C programming language. ...
Borland Software Corporation is a software company headquartered in California. ...
Object-oriented programming (OOP) is a computer programming paradigm in which a software system is modeled as a set of objects that interact with each other. ...
Features When MFC was introduced, Microsoft extended the C++ syntax with a series of macros for management of windows messages, exceptions, run time type identification, and dynamic class instantiation (many of these features – exceptions or run time type identification, for example – were not built into Microsoft's compiler at the time, but would appear in future versions). The syntactic changes for windows messages were intended to reduce memory required by avoiding gratuitous vtable use and provide a more concrete structure for various Visual C++-supplied tools to edit and manipulate code without parsing the full language. The message-handing macros replaced the virtual function mechanism provided by C++. Because some versions of the macros defeated the type checking done by the compiler, their use has been a fruitful source of bugs for users of MFC. The macros which implemented serialization, exception support, and dynamic runtime types were less problematic, and predated availability of standards-based language extensions by a number of years. 32-bit versions of MFC, for Windows NT 3.1 and later Windows operating systems, retained these features in the interest of compatibility. ...
A virtual table, or vtable, is a mechanism used in Programming languages to support dynamic polymorphism, i. ...
32-bit is a term applied to processors, and computer architectures which manipulate the address and data in 32-bit chunks. ...
Windows NT is a family of operating systems produced by Microsoft, the first version of which was released in July 1993. ...
Practically, the chief advantage of MFC is that it provides an object-oriented programming model to the Windows APIs. Another advantage of MFC is C++ wrapper types for many common Windows resource-related data types that provide automatic closure of handles when the objects creating them go out of scope. Additionally, MFC provides a Document/View framework for creating Model-View-Controller-based architectures. One main disadvantage of MFC is that it is not portable across many operating systems. In computer programming in general, a scope is an enclosing context. ...
This article or section should include material from Model view controller triad Model-View-Controller (MVC) is a software architecture that separates an applications data model, user interface, and control logic into three distinct components so that modifications to the view component can be made with minimal impact to...
The future of MFC Once highly promoted by Microsoft, emphasis on MFC has been eclipsed by a number of other technologies. Microsoft placed more emphasis on Visual Basic as a commercial software development tool as it became clear that C++ and MFC were too complex for many programmers. Windows Forms is the .NET RAD successor to Visual Basic and MFC. Native C++ programs can use Windows Forms by adding C++ Managed Extensions. This article is about the Visual Basic language shipping with Microsoft Visual Studio 6. ...
Microsoft Windows Forms is the name given to the GUI portion of the Microsoft . ...
Microsoft . ...
Rapid application development (RAD), is a software development process developed initially by James Martin in the 1980s. ...
The term native mode is used in computing as follows. ...
It has been suggested that this article or section be merged with Managed C Plus Plus. ...
Despite promoting Visual Basic, Microsoft still officially supports MFC by developing new versions with each new version of Microsoft Visual Studio. Shops and computer programmers that have made a strategic commitment to C++ and the Windows platform continue to use MFC for new development. Microsoft Visual Studio is a series of IDEs by Microsoft. ...
See also The Windows Template Library (WTL) is an object-oriented Win32 encapsulation C++ library by Microsoft. ...
External links Official sites Tips |