Obviously you can't use anything that the platform you are targeting does not support. And once managers get such perception, it can live very long in the organization. However when the developer does not understand the complexity specifications given and misuses the library by creating something like vector of vectors of some complex objects (in C++11 it's no longer a problem, though!), cause a performance problem and than defend themselves with "you see, the vectors are rather slow", it can cause a perception that standard library is slow. STL is usually faster at runtime than either C-style solutions with callback pointers or polymorphism-based solutions with virtual methods ( see also this Bjarne Stroustrup's keynote). I can think of one invalid, but very common reason: Developers who don't understand computational complexity, misuse STL and then blame the library. These applications are usually quite simple, though they take disproportionate time to develop due to the very rigorous review and testing. Many things in the standard library allocate memory internally and that is not deterministic enough for hard real-time applications, so they have to be avoided. I can think of only one valid reason and it's really rare: Hard real time.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |