// HEISE ONLINE — HARDWARE & GADGET
heise+ | Mehr Codekontrolle mit C++26 Contracts
Contracts in C++26 definieren Regeln für Funktionen, um Fehler über API-Grenzen hinweg zur Laufzeit zu erkennen. Entwickler haben so mehr Steuermöglichkeiten.
Die gute Nachricht gleich vorweg: Contracts sind Bestandteil von C++26. Das Standardisierungskomitee hat beim finalen Treffen keine nennenswerten Änderungen mehr vorgenommen. Vorschläge für eine andere Syntax oder ein verringertes Featureset sind vorerst vom Tisch. C++ ist jetzt eine von vielen Sprachen, die Contracts als Sprachmittel anbieten. Eiffel und Ada besitzen das Feature schon lange. Aus Eiffel stammt auch der Begriff Design by Contracts (DbC), der rechtlich geschützt ist.
Die Idee hinter Contracts ist, Nutzenden einer Funktion die möglichen Anforderungen an die Funktionsparameter direkt und in Code mitzuteilen. Damit weiß ein Aufrufer, welche Werte für einen Parameter erlaubt sind. In C++ steht dafür pre zur Verfügung. Auch das Ergebnis einer Funktion lässt sich mit einem Contract auszeichnen. Er gibt eine Garantie für das Resultat und ist durch post angegeben.
Beides ist nicht neu, jede Funktion hat Anforderungen an ihre Daten. Bisher ließen diese sich in C++ jedoch nur durch Dokumentation mitteilen. Der Nachteil dieses Ansatzes ist, dass Dokumentation und Code auseinanderfallen können und dass Entwickler die Dokumentation finden und lesen müssen. In C++26 werden Contracts direkt in C++-Code dokumentiert, also der Sprache, in der auch entwickelt wird, und ein Programm prüft diese Anforderungen zur Laufzeit.
Nach dem Exportboom beginnt der Technologiekampf: Warum Japans Spiegelreflexkameras die deutsche Fotoindustrie verdrängten.
Mit dieser selbst gebauten Teams-Ampel wird dein Status schon vor der Tür im Büro sichtbar. Und das nur mit einem ESP32 und einem LED-Streifen.
Günstiger und robuster als NMC, mit Nachteilen bei Energiedichte und Kälte: Die Zellchemie LFP dominiert absehbar nicht nur den chinesischen E-Automarkt.
Seit Apple Kurzbefehle mit seinen KI-Modellen verbindet, holen Sie noch mehr aus ihnen heraus. Wir zeigen, wie Sie damit Zeit sparen.
Am 12. Juni geht SpaceX an die Börse – und könnte sofort zu den wertvollsten Unternehmen gehören. Was das für Anleger, ETFs und den Raumfahrtsektor bedeutet.
Am Sonntag starten die deutschen Fußballer ins WM-Turnier. Wer vor den Nachbarn jubeln möchte, braucht einen latenzarmen Empfang. Wir haben nachgemessen.