Boost (C ++ Bibliotheken)
![]() Steigern Sie das Logo | |
Erstveröffentlichung | 1. September 1999[1] |
---|---|
Stabile Version | 1.79.0[2] ![]() |
Repository | |
Geschrieben in | C ++ |
Betriebssystem | Plattformübergreifend |
Typ | Bibliotheken |
Lizenz | Boost Software Lizenz |
Webseite | www |
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[aktualisieren].[10]
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![]() |
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
- Apache tragbare Laufzeit - verwendet von der Apache HTTP Server
- Glib - das Äquivalent, auf dem Gnom ist gebaut
- KDE -Frameworks - das Äquivalent, auf dem KDE -Software -Zusammenstellung ist gebaut
- Liste der C ++ - Vorlagenbibliotheken
- Software unter Verwendung der Boost -Lizenz (Kategorie)
- Standard -Vorlagenbibliothek
Verweise
- ^ "Alte Versionen". Abgerufen 11. April 2017.
- ^ "Version 1.79.0".
- ^ "Liste der Boost -Bibliotheken".
- ^ "Boost -Softwarelizenz". www.boost.org. Abgerufen 2022-01-06.
- ^ "Bibliothek Technischer Bericht". JTC1/SC22/WG21 - Der Ausschuss für C ++ Standards. 2. Juli 2003. Abgerufen 1. Februar 2012.
- ^ "Eine Threading -API für C ++".
- ^ "Site stackoverflow.com".
- ^ "ASIO -Website".
- ^ "Spirit-Website".
- ^ "Boost Mailing -Listen (a.k.a. Diskussionsgruppen)". Abgerufen 28 Apr 2020.
- ^ a b c d "Verschiedene Lizenzen und Kommentare zu ihnen - GNU -Projekt - Free Software Foundation (FSF)".
- ^ http://www.boost.org/license_1_0.txt[Bare URL -Klartextdatei]
- ^ Dawes, Beman. "Boost -Softwarelizenz". Abgerufen 2016-08-01.
- ^ "Boost Mailing List Archive". Archiviert von das Original Am 2016-11-07.
- ^ "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.