You can code native C++ two different ways. The first is compiling directly to machine code with just the operating system between you and the Platform ( Hardware ). The second native coding is done with MFC ( Microsoft Foundation Classes ). This is the same as the first example except for the use of MFC.
Managed C++ uses the CLR ( Common Language Runtime ) The CLR along with the .net framework class libraries make up the .NET Framework. This managed C++/CLI standard uses the .Net framework along with the MSIL ( Microsoft Intermediate Language ). This standard works by mapping to machine code only when the program is executing by the use of a just in time compiler. If your code will be running on different hardware platforms the use of managed code will be much easier. As with all thing there is a slight price to pay for convenience, as native code will run faster.