C++ CLI The Visual C++ Language NET - Hogenson, Gordon (Apress, 2012)
C++/CLI is a binding of C++ to Microsoft’s .NET programming environment. It integrates ISO C++ with the Unified Type System (UTS) of the Common Language Infrastructure (CLI). It supports both source-level and binary interoperability between native and managed C++. As the Gosden quote suggests, it is how one gets to the other side, regardless of where you happen to be standing. The actual details of how you do this are covered in Gordon’s fine text. In primitive societies and adolescent fantasy novels, such as The Lord of the Rings (which, along with Remembrance of Things Past, is one of my favorite books), names have a kind of magical aura to them—they need to be handled with extreme care and protected. The same holds true in computer science, apparently—or at least within Microsoft. Although you hold in your hand the first book devoted solely to C++/CLI, I couldn’t for the life of me find any specific reference to C++/CLI in the Visual Studio 2005 release—at least not in the Visual C++ IDE, in order to open a C++/CLI project, or in the “What’s New” section of the documentation. This whole notion of binding C++ to .NET has a sort of fantasy aspect to it that has clung to it since the original Managed Extensions to C++ in the Visual Studio .NET release of 2001. C++/CLI is the noncompatible and more elegant replacement for the Managed Extensions. It is how we program .NET using what the book’s subtitle calls “the Visual C++ Language for .NET.” That’s what Gordon’s book will teach you how to do.