Visual C++
Microsoft Visual C++ (often abbreviated as MSVC) is a commercial integrated development environment (IDE) product engineered by Microsoft for the C, C++, and C++/CLI programming languages. It has tools for developing and debugging C++ code, especially code written for the Microsoft Windows API, the DirectX API, and the Microsoft .NET Framework.
The predecessor to Visual C++ was called Microsoft C/C++. Initial Visual C++ 1.0, which included MFC 2.0, was the first version of Visual C++, released in 1992, available in both 16-bit and 32-bit versions. The currently active versions viz. Visual C++ 2008 (known also as Visual C++ 9.0) was released in November 2007. This version supports .NET 3.5, and it is currently the latest stable release. By default, all applications compiled against the Visual C++ 2008 Runtimes (static and dynamic linking) will only work under Windows 2000 and later.Visual C++ 2010 (known also as Visual C++ 10.0) will be released in the 2009-2010 timeframe. It is currently in development, and available only in the form of a Community Technology Preview. This version adds a modern C++ parallel computing library called the Parallel Patterns Library, partial support for C++0x, and significantly improved IntelliSense. This version is built around .NET 4.0, but still supports native development.
The Visual C++ Developer Studio application is the centerpiece of the Visual C++ development system. It offers a variety of features, provides access to most Visual C++ development system components, and also provides a front end for other Microsoft development products. Although the Developer Studio represents the interface of choice for accessing the features of Visual C++, the C/C++ compiler and other components of the development system can also be used from the command line. In some cases, such as when compiling simple test programs, it is actually easier to do than to use the graphical interface.
The AppWizard is a tool for generating skeleton applications. Through the AppWizard, application skeletons for OLE component servers, containers, ODBC and DAO applications, OLE automation servers, OLE controls, and more can be created. The ClassWizard is perhaps the most often used Visual C++ tool; in addition to being a browser tool for CCmdTarget-derived classes, it can also be used to create new classes and add member functions and variables to existing classes.
The Visual C++ development system also includes a set of extra tools that are available from the Tools menu. These tools are stand-alone applications that help you exercise and test programs and components that you develop. The first of these tools is Spy++, a new application for snooping messages. With Spy++, you can display all messages sent or posted to selected windows; you can also specify a subset of messages that you are interested in. Spy can also display the hierarchy of current processes, threads, and windows owned by threads; this way you can select windows for tracing that are normally hidden and could not otherwise be selected on the screen.
The MFC Tracer application enables you to turn on various MFC trace flags. With these flags on, MFC applications that have been compiled with the debug version of the MFC Library send a variety of debugging messages to debugging output. The OLE Control Test Container is useful for testing the behavior of OLE controls. You can use this application to insert any registered OLE control, invoke the control's properties and methods, and trace control notifications.
Versions
| Product version | MFC version | Year introduced |
|---|---|---|
| Microsoft C/C++ 7.0 | MFC 1.0 | 1992 |
| Visual C++ 1.0 | MFC 2.0 | |
| Visual C++ 1.5 | MFC 2.5 | |
| Visual C++ 1.52c | MFC 2.5 (Last development platform for Windows 3.x) | |
| Visual C++ 2.0 | MFC 3.0 | |
| Visual C++ 2.1 | MFC 3.1 | |
| Visual C++ 2.2 | MFC 3.2 | |
| Visual C++ 4.0 | MFC 4.0 (mfc40.dll included with Windows 95) | Aug 1995 |
| Visual C++ 4.1 | MFC 4.1 | |
| Visual C++ 4.2 | MFC 4.2 (mfc42.dll included with the Windows 98 original release) | Mar 1998 |
| eMbedded Visual C++ 3.0 | MFC 4.2 (mfc42.dll) | |
| Visual C++ 5.0 | MFC 4.21 (mfc42.dll), a major upgrade from MFC 4.2. | |
| Visual C++ 6.0 | MFC 6.0 (mfc60.dll) | 1998 |
| eMbedded Visual C++ 4.0 | ||
| Visual C++ .NET 2002 (Visual C++ 7.0) | MFC 7.0 (mfc70.dll), .NET 1.0 | Feb 2002 |
| Visual C++ .NET 2003 (Visual C++ 7.1) | MFC 7.1 (mfc71.dll), .NET 1.1 | Apr 2003 |
| Visual C++ 20051 (Visual C++ 8.0) | MFC 8.0 (mfc80.dll), .NET 2.0 | Oct 2005 |
| Visual C++ 20081 (Visual C++ 9.0) | MFC 9.0.21022 (mfc90.dll), .NET 3.5 | Nov 2007 |
| Visual C++ 2008 with Feature Pack | MFC 9.0.30411 (mfc90.dll) | Apr 2008 |
| Visual C++ 2008 SP1 | MFC 9.0.30729 (mfc90.dll) | Aug 2008 |
| Visual C++ 2010 | MFC 10.x(?), .NET 4.0 | Est. 2010 |
Referene Articles
