| ▲ | rfgplk 4 hours ago | |||||||||||||||||||||||||||||||
The standard library implements really do suck (in some cases), but this should be separated from C++ (the language). Even the standard splits the language grammar from the standard library cleanly. | ||||||||||||||||||||||||||||||||
| ▲ | wavemode 4 hours ago | parent [-] | |||||||||||||||||||||||||||||||
You can't really separate the two, firstly because some parts of the standard library interact directly with the language's syntax (e.g. <initializer_list>), and secondly because the language standard dictates things about the behavior of the standard library that limit implementation options. For example, the standard says that adding elements to an <unordered_map> is not allowed to invalidate references to keys or elements within the map. That makes it impossible for any standards-compliant C++ implementation to use a high-performance implementation in which keys and elements are stored contiguously in a flat array. | ||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||