Right. Basically, C# gives you a single abstract class you can inherit from, or multiple interfaces. Headers in c++ can be like either. I'm not seeing the big difference.
Multiple inheritance is indeed pretty unique to c++. There's a reason for that, though - it's generally agreed that no one needs it, and it is one of the toughest bits for c++ compilers to get right so new languages have all basically agreed not to support it.
Can you explain what it is that you need multiple inheritance for? Requiring header files is generally seen as a big weakness of c++, not a strength.
But it also creates a host of other problems: slow compilation (because the headers are reparsed/recompiled every time you include them), circular inclusion issues, double inclusion issues and just plain nastiness (e.g. impossibility to implement proper refactoring tools).
Sorry to burst your little bubble, BSD is an FSF-approved license. It's not just free, it's blessed by his holiness himself.
Freedom to study, modify and redistribute all software, that's what the FSF strives for. Unfortunately, it's obvious that you don't share that goal.
I don't need multiple inheritance for anything, usually, but sometimes it's a nice way to create a better structure in your project.
As for why I see header files as a strength, I already explained that it gives cleaner code.
You can declare members, virtual functions etc. in the header files without polluting the source, and being a very pedantic person I like that.
I also like that I can press F4 in Qt Creator to change quickly between source and header, for quick navigation in the code.
Sure. circular inclusions is a bitch, but with just a slight bit of planning you won't run into it.
And compile times, well it's not really a problem with an i7 and -j 8![]()
Good riddance. Mono is a disease. And no, I don't feel sorry for the devs that can collect unemployment and have novell/microsoft on their resume. They'll be fine.
The only useful Mono app I can think of is Banshee and there are plenty of alternatives. Oh, and watching the Olympics with silverlight/moonlight was a painful experience that involved VM's, using another computer with Windows, and finally, hacked python scripts, (and lots of cursing intermixed). Any "cross-platform" media streaming solution that makes Flash look good should die a horrible death.