AFIK there are two main ways .NET supports C++ code.
(1) The old one, also known as 'managed extensions for C++' was how it was done in Visual C++ 2002/2003, although you can still use it with the /clr:oldSyntax flag. The code it generates is a mixture of native and MSIL code and would not work on the XBox for the reasons you mention.
(2) The new one, which is called C++/CLI, is supposed to be a much cleaner implementation. Of C++/CLI there are different modes of code generation.
(2.1) /clr -- An improved version of (1).
(2.2) /clr:pure -- Uses only the managed structures and stuff. Looks like C# with /unsafe.
(2.3) /clr:strict -- Generates type-safe, verifiable MSIL-only assembly, exactly like C# compiler without /unsafe.
Given I've seen code examples for the XNA which run with /unsafe, I'd be willing to wager that (2.2) and (2.3), being virtual machine instructions, the MISL will run on your XBox.
I found this on xboxreporter
The cpu for the Xbox 2 is rumoured to be designed to be a processor that can decode and execute instructions in Microsoft Intermediate Language (msil) while at the same time being able to run x86 code, to remain compatible with Xbox 1.
That said, I don't have an XBox so I can't try it for you to find out!
