Porque incluso cuando el camino de regreso STL fue diseñado:
Ya fueron significativamente mejores arbitraria bibliotecas precisión enteros en C. Claro que no eran oficialmente las clases, pero las estructuras que utilizan todavía no el trabajo. Una implementación STL realmente no obtendría una gran aceptación por parte de aquellos que necesitan enteros de precisión arbitrarios, lo que me lleva a mi segundo motivo:
No muchas personas realmente necesitan enteros de precisión arbitrarios. Los que lo hacen, obtienen una biblioteca de terceros. Para la mayoría de la gente, los largos de 32 bits hicieron el trabajo en esos días. Para muchas personas todavía lo hacen. Y el rendimiento es significativamente mejor. Incluso en un sistema sin operaciones nativas de 64 bits, puedes simularlas con unas pocas instrucciones y aún ser significativamente más rápido que una implementación entera arbitraria (no importa cuán delgado lo hagas, la parte arbitraria y las asignaciones de montón probablemente lo harán más costoso que dos operaciones enteras menores y un acarreo manual).
Más allá de todo, simplemente se debe a que Stroustrup no sintió que tuviera el atractivo suficiente para encajar en su visión del STL.
Creo que una mejor pregunta sería por qué no hay moneda o clase decimal de precisión arbitraria en el STL, ya que creo que son mucho más comunes un problema, pero las respuestas son las mismas.
Supongo que la aritmética grande no es fácil de implementar (de manera eficiente). – Mysticial
"pero solo una pregunta sobre por qué el idioma no viene con uno". ¿Por qué debería? Todo el mundo tiene su propio pequeño problema con las mascotas en el que piensan que algún lenguaje debe ser compatible con X. Pero eso no significa que deba hacerlo. He estado programando durante más de 20 años y he usado cadenas de caracteres con mucha frecuencia.Y, sin embargo, nunca he necesitado un entero de precisión arbitrario. Eso no quiere decir que esa sea una razón para no tener uno. Pero sugiere que tal vez la pregunta es por qué _debería_ la biblioteca estándar de C++ tener un entero de precisión arbitrario, no por qué no lo hace. –