Die C++-Gruppe der Internationalen Organisation für Normung (ISO), Arbeitsgruppe 21 (WG21), hat sich auf die endgültige Version von C++20 geeinigt, die erste größere Aktualisierung der 35 Jahre alten Programmiersprache seit C++17 im Jahr 2017.
„Am Freitag, den 4. September endete die Abstimmung über den DIS (Draft International Standard) von C++20, und sie wurde einstimmig angenommen“, sagte Herb Sutter, Microsoft-Ingenieur und langjähriger Vorsitzender des C++-ISO-Ausschusses der WG21.
„Dies bedeutet, dass C++20 nun die endgültige technische Genehmigung erhalten hat und mit ISO-Zustimmung abgeschlossen ist, und wir erwarten, dass es gegen Ende 2020 formell veröffentlicht wird, nachdem wir eine letzte Runde der ISO-Redaktionsarbeit abgeschlossen haben.“
Die neue C++ Version 2020 ist im historischen Vergleich enorm bedeutend. Sutter sagte, es „wird die größte Version von C++ seit C++11 sein“, d.h. sie ist größer als jede der letzten drei Versionen, die alle drei Jahre erscheinen. Es ist auch die erste Version, die standardisiert wurde.
C++ wurde vom dänischen Informatiker Bjarne Stroustrup entwickelt und 1985 veröffentlicht. Die Sprache war für Microsoft ausschlaggebend für die Entwicklung von Windows, das noch im selben Jahr für Verbraucher freigegeben wurde. Heute erforscht Microsoft das von Mozilla entwickelte Rust, um den in C und C++ geschriebenen Windows-Legacy-Code zu ersetzen, da die Speichersicherheit von Rust sehr hoch ist.
C++, das als schnelle Sprache favorisiert wird, hat in den letzten Jahren an Popularität gewonnen und wird wegen seiner Nützlichkeit bei der Anleitung von Hardware in der Entwicklung von Computerspielen weit verbreitet.
Wichtige C++-Compiler, wie Microsoft Visual Studio, GNU Compiler Collection (GCC) und Clang, unterstützen C++17.
Zwei der wichtigsten Merkmale von C++20 sind „Module“ und „Coroutines“.
Modules, das von Googles Richard Smith geleitet wurde, steht für Header-Dateien und hilft dabei, die Auswirkungen von Makros zu isolieren und gleichzeitig größere Builds zu unterstützen. Wie Sutter kürzlich bemerkte, markiert C++20 das „erste Mal seit etwa 35 Jahren, dass C++ eine neue Funktion hinzugefügt hat, mit der Benutzer eine benannte Einkapselungsgrenze definieren können“.
„Bis jetzt hatten wir drei solcher Sprachfeatures, mit denen Programmierer ihre eigenen Words of Power erstellen konnten, indem sie (a) einen benutzerdefinierten Namen gaben (b) an etwas, dessen Implementierung verborgen ist,. Sie sind: die Variable (die den aktuellen Wert umfasst), die Funktion (die Code und Verhalten kapselt) und die Klasse (die beides kapselt, um einen Haufen von Zustand und Funktionen zusammen zu liefern)“.
Coroutines stellten eine Verallgemeinerung einer Funktion dar. Reguläre Funktionen beginnen immer am Anfang und beenden sich zum Schluss, wohingegen Coroutines auch die Ausführung unterbrechen können, um später an der Stelle wieder aufgenommen zu werden, an der sie abgebrochen wurden.
Die Gigamon Visibility Platform ist der Katalysator für die schnelle und optimierte Bereitstellung des Datenverkehrs für Sicherheitstools, Netzwerkperformance- und Applikationsperformance-Monitoring. Erfahren Sie in diesem Webinar, wie Sie mit Gigamon-Lösungen die Effizienz ihrer Sicherheitsarchitektur steigern und Kosten einsparen können.
OutSystems-Studie: 62 Prozent der Befragten haben Sicherheits- und Governance-Bedenken bei Softwareentwicklung mit KI-Unterstützung.
Der Cybersecurity Report von Hornetsecurity stuft 2,3 Prozent der Inhalte gar als bösartig ein. Die…
Die Hintermänner haben es auf Zugangsdaten zu Microsoft Azure abgesehen. Die Kampagne ist bis mindestens…
Cloud-Plattform für elektronische Beschaffungsprozesse mit automatisierter Abwicklung elektronischer Rechnungen.
Mindestens eine Schwachstelle erlaubt eine Remotecodeausführung. Dem Entdecker zahlt Google eine besonders hohe Belohnung von…
Nur rund die Hälfte schaltet während der Feiertage komplett vom Job ab. Die anderen sind…