Die Notwendigkeit für benutzerdefinierte Literale (UDLs) in C ++

Der ganze Sinn von Literalen ist, um Code besser lesbar und leichter zu pflegen machen. Allerdings Einbau-Literale sind auf wenige Datentypen beschränkt, wie folgt zusammengefasst:

  • Ganze Zahl

  • Gleitkommaoperationen

  • Charakter

  • Schnur

  • Boolean

  • Zeiger

  • UDL

Manchmal braucht man eine wörtliche von einem anderen Typ als diese eingebauten Typen und das ist, wo UDLs ins Spiel kommen. Anders als Variablen wird der Wert eines UDL immer zum Zeitpunkt der Kompilierung bekannt. Der Compiler ersetzt, was auch immer Wert, den Sie mit dem Ist-Wert in dem Code für die UDL definieren.

Der Zweck der UDL ist der Code leichter für den menschlichen Entwickler zu machen zu lesen und zu verstehen. Sobald dieser Vorgang abgeschlossen ist, ist der Compiler frei, den tatsächlichen Wert der UDL in der kompilierten Code verwiesen zu verwenden, so dass die Anwendung muss sie nicht während der Laufzeit zu konvertieren. Was dies bedeutet, ist, dass Ihre Anwendung läuft schneller und weniger Ressourcen verbraucht, während die übrigen leicht zu lesen.

Built-in-Literale sind einfach, weil sie sich auf Kerntypen basiert sind. Eine UDL kann so komplex sein, wie Sie es brauchen einen realen Datentyp zum Ausdruck bringen zu können. Zum Beispiel, wenn Sie in einem Feld beteiligt sind, die imaginären Zahlen verwendet, können Sie eine UDL schaffen diesen Bedarf zu erfüllen.

Sie können auch Datenumwandlungen und andere Aufgaben, die auf andere Weise wäre zeitaufwändig durchzuführen. Es ist sogar möglich, Nebenwirkungen zu erzeugen, wie eine Art von Ausgabe durchgeführt wird, eine UDL verwenden.

Menü