To view parent comment, click here.
To read all comments associated with this story, please click here.
Yeah, so until recently STL was missing a couple things. It's still a far cry compare dto not having anything at all.
And I would submit that people who dislike the STL are bad programmers prone to reinvent the wheel anyway. There is pretty much no valid reason not to use the STL. There is a lot of bad excuses, though.
Right, so when the speed of linked lists in C vs C++ is the same, however the code bloat due to STL is 200K extra (and grows in proportion to the number of linked list objects in use), you call this a bad excuse not to use STL?
Now take this code size overhead and multiple by the number of different containers in use and the number of container instances and you end up with a hefty bloat.
Horror error messages (at least on GCC) would be one reason to make.
If I can recall properly I managed to generate error messages that were literally half screen size, 80% of which were the typedefs for some obscure implementation specific stuff I saw first time in my life.
Thats my biggest complaint for template libs. They fail to hide implementation details the moment you put a character in a wrong place.
I even recall some tool that user perl magic to turn those error messages into something at least mercifull.
That was few years back though, I don't know what does it look now.





Member since:
2007-04-20
C may not be the best language ever designed, however compared to C++ I don't think C is any worse.
All the things you mentioned about C not having standard containers and algorithms is not a big issue. What people tend to do is write their own libraries, or use libraries provided by third parties.
In fact I can say the same thing about C++, until recently there was no standard way in C++ to use hash tables, or do multi-threaded programming. You had to rely on libraries from third parties. A lot of C++ programmers rely on STL, however quite a few people dislike STL for various reason. So if you tend not to use STL because you think it's flawed and not designed properly, then there is really no good reason to use C++ in the first place.