Visual C++ is an integrated development environment that includes a compiler, editor, debugger, and other tools.
Applications written in standard C++ will compile in Visual C++.
Managed applications written in Visual C++ .NET make extensive use of language extensions, which are keywords starting with double underscores.
Developers can create garbage-collected classes in Visual C++ if the classes meet a list of restrictions, and save the trouble of managing memory allocated for those classes.
Developers can create unmanaged classes if that is preferable.
Managed classes can expose properties that make code simpler to read and to write while retaining the benefits of encapsulation.