Boost (C ++ Bibliotheken)

Schub
Boost logo
Steigern Sie das Logo
Erstveröffentlichung 1. September 1999; Vor 22 Jahren[1]
Stabile Version
1.79.0[2] Edit this on Wikidata / 13. April 2022; vor 3 Monaten
Repository
Geschrieben in C ++
Betriebssystem Plattformübergreifend
Typ Bibliotheken
Lizenz Boost Software Lizenz
Webseite www.Schub.org

Schub ist ein Satz von Bibliotheken für die C ++ Programmiersprache, die Aufgaben und Strukturen wie z. Lineare Algebra, Pseudorandom -Zahlengenerierung, multithreading, Bildverarbeitung, Reguläre Ausdrücke, und Unit -Tests. Es enthält 164 einzelne Bibliotheken (ab Version 1.76).[3]

Alle Boost -Bibliotheken sind lizenziert unter dem Boost Software Lizenz, so konzipiert, dass Boost mit beiden verwendet werden kann frei und proprietäre Software Projekte.[4] Viele der Gründer von Boost sind auf der C ++ Standards Ausschuss und mehrere Boost -Bibliotheken wurden zur Gründung in die angenommen C ++ technischer Bericht 1, das C ++ 11 Standard (z. B. intelligente Zeiger, Thread, Regex, Zufall, Verhältnis, Tupel)[5][6] und die C ++ 17 Standard (z. B. Dateisystem, beliebig, optional, variante, string_view).[7]

Die Boost -Community entstand um 1998, als die erste Version des Standards veröffentlicht wurde. Es ist seitdem kontinuierlich gewachsen und spielt jetzt eine große Rolle bei der Standardisierung von C ++. Obwohl es keine formelle Beziehung zwischen der Boost -Community und dem Standardisierungsausschuss gibt, sind einige der Entwickler in beiden Gruppen aktiv.

Entwurf

Die Bibliotheken richten sich an eine breite Palette von C ++ - Benutzern und Anwendungsdomänen. Sie reichen von allgemeinen Bibliotheken wie der Smart Zeiger Bibliothek, zu Betriebssystem Abstraktionen wie Boost Dateisystem, an Bibliotheken, die hauptsächlich auf andere Bibliotheksentwickler und fortgeschrittene C ++ - Benutzer abzielen, wie die Vorlage Metaprogrammierung (Mpl) und Domänenspezifische Sprache (DSL) Schöpfung (Proto).

Um Effizienz und Flexibilität zu gewährleisten, nutzt Boost eine umfassende Verwendung von Vorlagen. Boost war eine Quelle umfassender Arbeit und Forschung in generische Programmierung und Metaprogrammierung in C ++.

Die meisten Boost -Bibliotheken sind Header basiert, bestehend aus Inline -Funktionen und Vorlagen und als solche müssen nicht vor ihrer Verwendung gebaut werden. Einige stärken Bibliotheken als unabhängige Bibliotheken.[8][9]

Assoziierte Menschen

Zu den ursprünglichen Gründern von Boost, die in der Community noch aktiv sind David Abrahams. Ein Autor mehrerer Bücher über C ++, Nicolai Josuttis, trug zum Boost bei Array Bibliothek im Jahr 2001. Es gibt Mailinglisten, in denen die Nutzung der Bibliothek und die Bibliotheksentwicklung verstärkt werden, aktiv, bis 2020 aktiv.[10]

Lizenz

Boost Software Lizenz
Letzte Version 1.0
Veröffentlicht 17. August 2003
FSF genehmigt Ja[11]
Osi genehmigt Ja
GPL kompatibel Ja[11]
Copyleft Nein[11]
Verknüpfung von Code mit einer anderen Lizenz Ja
Webseite www.Schub.org Edit this on Wikidata

Boost ist unter seiner eigenen lizenziert frei, Open-Source-Lizenz, bekannt als die Boost -Software -Lizenz.[12] Es ist eine zulässige Lizenz im Stil der BSD -Lizenz und die MIT -Lizenz, aber ohne zu verlangen Zuschreibung Für Umverteilung in Binärform.[13] Die Lizenz war OSI-zugelassen Seit Februar 2008[14][15] und gilt als a Kostenlose Softwarelizenz, kompatibel mit dem GNU Allgemeine öffentliche Lizenz, bis zum Kostenlose Software -Stiftung.[11]

Siehe auch

Verweise

  1. ^ "Alte Versionen". Abgerufen 11. April 2017.
  2. ^ "Version 1.79.0".
  3. ^ "Liste der Boost -Bibliotheken".
  4. ^ "Boost -Softwarelizenz". www.boost.org. Abgerufen 2022-01-06.
  5. ^ "Bibliothek Technischer Bericht". JTC1/SC22/WG21 - Der Ausschuss für C ++ Standards. 2. Juli 2003. Abgerufen 1. Februar 2012.
  6. ^ "Eine Threading -API für C ++".
  7. ^ "Site stackoverflow.com".
  8. ^ "ASIO -Website".
  9. ^ "Spirit-Website".
  10. ^ "Boost Mailing -Listen (a.k.a. Diskussionsgruppen)". Abgerufen 28 Apr 2020.
  11. ^ a b c d "Verschiedene Lizenzen und Kommentare zu ihnen - GNU -Projekt - Free Software Foundation (FSF)".
  12. ^ http://www.boost.org/license_1_0.txt[Bare URL -Klartextdatei]
  13. ^ Dawes, Beman. "Boost -Softwarelizenz". Abgerufen 2016-08-01.
  14. ^ "Boost Mailing List Archive". Archiviert von das Original Am 2016-11-07.
  15. ^ "Boost-Softwarelizenz 1.0 (BSL-1.0) | Open Source Initiative".

Weitere Lektüre

  • Demming, Robert & Duffy, Daniel J. (2010). Einführung in die Boost C ++ - Bibliotheken. Vol. 1 - Fundamente. Datensim. ISBN 978-94-91028-01-4.
  • Demming, Robert & Duffy, Daniel J. (2012). Einführung in die Boost C ++ - Bibliotheken. Vol. 2 - Fortgeschrittene Bibliotheken. Datensim. ISBN 978-94-91028-02-1.
  • Mukherjee, Arindam (2015). Lernschub C ++ Bibliotheken. Packt. ISBN 978-1-78355-121-7.
  • Polukhin, Antony (2013). Boost C ++ Anwendungsentwicklungskochbuch. Packt. ISBN 978-1-84951-488-0.
  • Polukhin, Antony (2017). Boost C ++ Anwendungsentwicklungskochbuch (2 ed.). Packt. ISBN 978-1-78728-224-7.
  • Schäling, Boris (2011). Die Boost C ++ - Bibliotheken. XML Press. ISBN 978-0-9822191-9-5.
  • Schäling, Boris (2014). Die Boost C ++ - Bibliotheken (2 ed.). XML Press. p. 570. ISBN 978-1-937434-36-6.
  • Siek, Jeremy G.; Lee, Lie-Quan & Lumsdaine, Andrew (2001). Die Boost Graph Library: Benutzerhandbuch und Referenzhandbuch. Addison-Wesley. ISBN 978-0-201-72914-6.

Externe Links