Could anyone tell me the difference between Managed C++ and C#? They're both based on .NET, aren't they, but which one is the heir of our beloved C/C++? And why choose MC++ but not C#?