From my days of embedded developing, c++ was out of question, because the libstc++ takes 1MB of memory! While this might be negletable today, that day, when the device operated with 8MB of RAM it was an unbearable load.
Personally, when you don't design the application on paper with classes in first place, I'd highly advice against the use of c++. Otherwise you get more problems as solutions with it.
Also most projects that are abole to sustain I've seen which are using c++ are very specific which parts of the c++ language are permitted to be used by developers. Projects that take c++ as whole without any restrictions are IMHO doomed to fail. You cannot believe how complex this language can become. And just because you can write some classes, doesn't mean other coders are suddendly using some strange constructs you have never seen before.
For example I for one hate reference parameters. I'm no fan of templates, as I'm ever fail to read anyone else template code. And I as almost anybody else fear have a deep fear of multiple inheritance. Just to name a few.
I think the GNOME (C) vs. KDE (C++) race has shown, you can develop really versatile hugh projects with C as well. (I know GNOME "misuses" the preprocessor a lot, to simulate a class structure, but is pretty okay IMHO).
|