Categories: Software

C++20 geht an den Start

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.

ANZEIGE

Netzwerksicherheit und Netzwerkmonitoring in der neuen Normalität

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.

ZDNet.de Redaktion

Recent Posts

KI-gestütztes Programmieren bringt IT-Herausforderungen mit sich

OutSystems-Studie: 62 Prozent der Befragten haben Sicherheits- und Governance-Bedenken bei Softwareentwicklung mit KI-Unterstützung.

5 Tagen ago

Studie: Ein Drittel aller E-Mails an Unternehmen sind unerwünscht

Der Cybersecurity Report von Hornetsecurity stuft 2,3 Prozent der Inhalte gar als bösartig ein. Die…

1 Woche ago

HubPhish: Phishing-Kampagne zielt auf europäische Unternehmen

Die Hintermänner haben es auf Zugangsdaten zu Microsoft Azure abgesehen. Die Kampagne ist bis mindestens…

1 Woche ago

1. Januar 2025: Umstieg auf E-Rechnung im B2B-Geschäftsverkehr

Cloud-Plattform für elektronische Beschaffungsprozesse mit automatisierter Abwicklung elektronischer Rechnungen.

1 Woche ago

Google schließt schwerwiegende Sicherheitslücken in Chrome 131

Mindestens eine Schwachstelle erlaubt eine Remotecodeausführung. Dem Entdecker zahlt Google eine besonders hohe Belohnung von…

1 Woche ago

Erreichbarkeit im Weihnachtsurlaub weiterhin hoch

Nur rund die Hälfte schaltet während der Feiertage komplett vom Job ab. Die anderen sind…

1 Woche ago