Essential Guide to Managed Extensions for C++
Siva Challa, Artur Laksberg
- Features how to write .NET applications using C++ and mix unmanaged C++ and managed C++ code in the same application
- Shows when and why to use unmanaged code in .NET development
- All chapters include code samples with detailed explanations
The Essential Guide to Managed Extensions for C++ provides a comprehensive guide for programmers writing code in Managed Extensions for C++ (MC++). The information in this book comes straight from the horse’s mouth—both authors have been key members of the Visual C++ .NET compiler development team and have spent most of their time implementing the language and educating others about managed C++. Managed Extensions for C++ are extensions added to the Visual C++ .NET compiler to allow developers access to the functionality provided by the .NET Framework. Visual C++ .NET is the only .NET language that can generate both native and managed code, and it has a rich set of features to let you write managed applications for the .NET platform.
The book is divided into two parts. Part One covers the basics of MC++. It starts with an introduction to MC++. Then it gives a brief introduction to the .NET Framework. Next, it goes directly into the various features of MC++, including managed classes, interfaces, value types, properties, enumerations, pointers, arrays, operators, delegates, attributes, events, and exceptions.
Part Two of the book is devoted to the transition between the managed and unmanaged worlds. It starts with a general introduction to interoperability between managed and unmanaged code. The following chapters describe the Platform Invoke service, interoperability between COM and .NET, and various data marshaling techniques. The last chapter of Part Two shows how MC++ can be used to write interoperability layers over existing components with minimal overhead.