|
In October 2003, a new ECMA standards committee was formed to create an international standard for "C++/CLI," a set of C++ extensions for .NET programming designed by Microsoft in collaboration with C++ industry leaders as a successor to "Managed C++." Formally, C++/CLI is a binding between ISO C++ and ISO CLI (Common Language Infrastructure, the standardized subset of the .NET runtime environment and frameworks class library); see the announcement at www.ecma-international.org/news/ecma-TG5-PR.htm .
In this talk, the lead architect of C++/CLI talks about the language design and major features, with a look under the hood at how compilers are implementing the new semantics. C++/CLI provides first-class and cleanly integrated support in the C++ language for all .NET features (e.g., properties and events, garbage collection and generics) uniformly for all types including also for native types. It also provides first-class support on the .NET platform for all standard C++ features (e.g., deterministic destruction and templates) uniformly for all types, including also for .NET types. These facilities are expressed through a set of pure conforming extensions, underpinned by a unified type system and unified pointer/storage system.
|