@lou_dias
I think you misread my post. I am not writing C++ for my current employer, is said that if you think C++ is too a maintenance headache for buisness use then the places you have found this to be true are obviously worse then where I work ;-)
For the record, I typically use C/C++/asm in my own coding projects. At work, it's all web related stuff using PHP/MySQL/JS/Java.
Anyway, obvious flaw about it not being used, I seem to recall that buisness has a lot of heavy use of C/C++. The operating systems and appliations themselves for starters :-P
So far you have not raised a single genuine reason to substantiate your claim that the lanaguage sucks.
If you have code that crashes because you instansiate something, better look into the constructor to see if something failed rather than just blame the language. After all, the language specifies that you can't return an error from a constructor, and in any non trivial (ie resource allocating) class, something might fail. You could wrap it in an exception handler, of course, and catch the problem that way. Or better still, use a factory or builder pattern to creare objects. This can guarentee they are properly constructed before returning them.
Code doesn't have to be unsafe if you know how the language works. As someone else pointed out, char* is fine in the hands of people that know exactly how it works and don't try to misuse it. If you need more, you could use std::string...
Anyway I seem to have totally lost what this had to do with GC :-D