Microsoft obtivo a biblioteca estándar C++ incluída con Visual Studio

Na conferencia CppCon 2019 que se celebra estes días, Microsoft anunciou sobre a apertura do código da súa implementación da Biblioteca Estándar C++ (STL, Biblioteca Estándar C++), que forma parte do kit de ferramentas MSVC e do contorno de desenvolvemento de Visual Studio. A biblioteca implementa as capacidades descritas nos estándares C++14 e C++17 actuais, e tamén está a evolucionar cara ao soporte para o futuro estándar C++20, tras os cambios no borrador de traballo actual. Código aberto baixo a licenza Apache 2.0 con excepcións para os ficheiros binarios que resolven o problema de incluír bibliotecas en tempo de execución nos ficheiros executables xerados.

O desenvolvemento desta biblioteca no futuro está previsto que se leve a cabo como un proxecto aberto desenvolvido en GitHub, aceptando solicitudes de extracción de desenvolvedores de terceiros con correccións e a implementación de novas funcións (a participación no desenvolvemento require a sinatura dun acordo CLA sobre a transferencia). dos dereitos de propiedade sobre o código transferido). Nótase que a transferencia do desenvolvemento STL a GitHub axudará aos clientes de Microsoft a seguir o progreso do desenvolvemento, experimentar cos últimos cambios e axudar a revisar as solicitudes entrantes para engadir innovacións.

O código aberto tamén permitirá á comunidade usar implementacións preparadas de funcións dos novos estándares noutros proxectos. Por exemplo, a licenza de código elíxese para proporcionar a posibilidade de compartir código coa biblioteca libc++ do proxecto LLVM. STL e libc++ difiren na representación interna das estruturas de datos, pero se o desexan, os desenvolvedores de libc++ poden levar a funcionalidade de interese de STL (por exemplo, charconv) ou ambos proxectos poden desenvolver conxuntamente algunhas innovacións. As excepcións engadidas á licenza de Apache eliminan o requisito de citar o uso do produto orixinal cando se entregan binarios compilados co STL aos usuarios finais.

Os obxectivos fundamentais do proxecto inclúen o cumprimento total dos requisitos de especificación, garantindo un alto rendemento, facilidade de uso (ferramentas de depuración, diagnóstico, detección de erros) e compatibilidade a nivel de código fonte e ABI con versións anteriores de Visual Studio 2015/2017. Entre as áreas que a Microsoft non lle interesa desenvolver atópanse as portadas a outras plataformas e engadir extensións non estándar.

Fonte: opennet.ru

Engadir un comentario