Microsoft Corp claims that its new Microsoft C/C++ version 7.0 Development System for Windows, with its High-performance Object Technology, enables development of the smallest, fastest Windows-based applications possible. The product contains a comprehensive set of professional tools for Windows 3.1, so developers can start work on applications for the new release immediately. The High-performance Object Technology is a set of integrated technologies for C++ design, new compiler optimisations, and a Windows-based Applications Framework to maximize performance of objects under Windows, and is claimed to provides the benefits of object-oriented design without the high memory overhead and slow performance of other C++ development products. C/C++ 7.0 has a complete Windows 3.0 and Windows 3.1 tool set, including the Windows debug kernel and the Windows set-up toolkit, a new version of CodeView for C++ debugging, a faster Programmer’s Workbench, and the Qualitas 386MAX memory manager to ease memory constraints during development. C/C++ 7.0 is intended to handle large, complex Windows-based applications, and Microsoft claims that robust C++ version 2.1 code generation avoids many of the errors experienced by other C++ compilers while conforming strictly to the AT&T Co C++ 2.1 specification, and is designed to generate correct object code from even the most complex or obscure source expressions. Foundation Classes provide objects for Windows, with more than 60 C++ classes that abstract the functionality of the Windows Application Programming Interface – and the full Interface is supported. There are classes for the GDI Windows graphics system, Object Linking and Embedding and menus. The framework is intended to provide easy migration from the procedural programming methodology of C and the Windows Programming Interface to the object-oriented approach of C++. Developers can add object-oriented code while retaining the ability to call any Windows Programming Interface function directly at any time; a programmer can take any existing C application for Windows and add new functionality without having to rewrite the application from scratch. The foundation classes also simplify Windows message processing and other details programmers must otherwise implement manually, and they include extensive diagnostics. They have undergone rigorous tuning and optimisation to yield very fast execution speeds and minimal memory requirements – when compiled, the entire Foundation class library occupies only 39Kb and should add very little overhead to the application. C++ source code is included for all foundation classes.

20,000 lines of sample code

There are also over 20,000 lines of sample code in 18 significant Windows-based applications to demonstrate every aspect of the foundation classes and programming for Windows, including use of Object Linking and Embedding. The Windows debug kernel addresses the fact that about 60% of all Unrecoverable Application Errors in Windows are caused by invalid parameters being passed to Windows from an application. The debug kernel provides a mechanism to trap and report such errors back to developers, so they can correct the problem and a Windows set-up toolkit provides developers the tools they need to create custom, Windows-hosted installation and set-up programs for their applications. Precompiled headers mean that previously compiled versions of header files to be saved and then re-used during subsequent compilations and C/C++ 7.0 allows precompilation of any source code to reduce compile times for C programs, which typically contain many header files. All symbolic information can be precompiled during the debugging cycle, which improves link time. The enhanced CodeView debugger and Programmer’s Workbench now support multiple overlapping windows. CodeView debugger also now supports full C++ debugging in four modes, including remote debugging of an application running on a different system and from within Windows. In C++ 7.0, a new p-code – stands for packed in the Microsoft parlance, not pseudo as o

ne might expect, but seems to mean the same thing – is a code-generation technology used to develop Microsoft’s own applications, such as Word, Excel and Project. It is an intermediate object code representation, p-code compresses code size by 30% to 40% through the use of a compiler option. Developers can use p-code selectively for parts of applications where the most sizable reductions can be made at the least cost in speed, for example in user-interface code, Microsoft says, because it runs more slowly than native code; but by shrinking code size it can also reduce or eliminate swapping to disk, to provide an offsetting speed gain. Microsoft C/C++ 7.0 is $500 from next month in the US, and users of previous versions of C and C++, including Borland C++, Watcom C, or Zortech C++ can upgrade for only $140. It will be simultaneously available in Eastern Europe, Munich, Paris, Stockholm, London, Amsterdam and Milan. A Kanji version is on the way for Japan. The new product appears to have generated some excitement, and Microsoft claims that 29 independent software vendors simultaneously announced new tools for it.