I am reading a few books on C#, just for fun, and the author (Jesse Liberty)of "Programming C#" from my favorite editor O'Reilly says: '...having worked for ten years as a C++ programmer and written a dozen books on the subject, I'd rather have my teeth drilled than work with managed C++. Perhaps it is just that C# is so much friendlier. In any case, once I saw C# I never looked back." He's wrong, isn't he?
Not at all. C++ was not meant for managed code. C#, on the other hand, was basically designed with managed code in mind. Hence, if you write managed code in C++, its quite nasty. C#, of course, fits into the managed world hand-in-glove. He's not saying C++ sucks (it defiantly does not). He's saying that C++ is *not* designed for managed code, and should be avoided like the plague. If I were writing a standard visual win32 app such as an email program or whatnot, I'd use C#/.Net. If I were writing a compiler, I'd use unmanaged C++. It just depends on what you need.
I guess the C# developers are mainly from the C++ domain and so they have such statements like that but then both are totally different languages with some matching syntax.