C++ Grundkurs

Raw-String-Literale

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Raw-String-Literale dienen in C++ dazu, die Interpretation von Fluchtsequenzen zu unterbinden.
02:53

Transkript

In dieser Lektion möchte Ihnen Raw-String-Literale vorstellen. Raw-String-Literale sind natürlich keine fundamentalen Datentypen. Sie sind aber Zeichenliteralen sehr ähnlich und sie lösen das Problem von Zeichenliteralen. Das Problem, dass Sie durch Raw-String-Literale das Interpretieren von Fluchtsequenzen unterbinden können. Das ist in zwei Kontexten extrem praktisch, bei Pfadangaben unter Windows und bei regulären Ausdrücken. Aber zuerst zur Syntax. Hier wird ein Raw-String-Literal definiert. Raw-String: hier auch eine Definition des Raw-Strings. Sie sehen, das in rot definiert ein Raw-String-Literal r"()", und das Gleiche noch einmal mit dem großen R. Statt der Klammern können Sie auch Trennerklammer verwenden und Klammertrenner. Wobei Trenner maximal 16 Zeichen enthalten darf, keine Leerzeichen, keinen Backslash und keine Klammern enthalten darf. Wenn Sie sich diesen String hier genauer ansehen, sehen Sie natürlich: das ist eine Pfadangabe unter Windows. Wenn Sie \t betrachten und \n sind es natürlich besondere Zeichen. \t steht für einen Tabulator und \n für einen Zeilenumbruch. D. h. natürlich, wenn Sie eine Datei mit diesen Pfadbezeichnungen öffnen, dann wird das nicht klappen, weil das falsch interpretiert wird. Jetzt werde ich Ihnen das Ganze noch in der Anwendung zeigen. Zuerst der Bösfall. D. h., ich verwende hier einen normalen String, indem ich \t \n verwendet habe, da das File newFile.txt im Verzeichnis "temp" heißt. Wenn ich diesen String jetzt ausgebe, das ist das Gleiche, was passieren wird, wenn Sie versuchen würden, diese Datei einzulesen, müssen Sie auch einen String interpretieren. Dann wird das \t und \n interpretiert und was dann passiert, ist das hier. \t wird zu diesen vier Leerzeichen und \n wird zum Zeilenumbruch. Sie sehen, Sie haben keine Chance, diese Datei zu öffnen. Wenn Sie ganz genau hinsehen, sehen Sie auch, dass \t hier bei mir durch den Editor und \n besonders interpretiert wird. D. h., mein Editor weiß schon, dass es besondere Zeichen sind. Viel besser wird es aber durch Raw-Strings. Hier definiere ich ein Raw-String. R‘‘( )‘‘. Durch das wird dieses Teil hier zum Raw-String. Insbesondere heißt es, \t wird hier nicht interpretiert, und \n wird hier auch nicht interpretiert. Wenn ich jetzt den String raw1 ausgebe, sehen Sie genau das, was ich wollte. Ich kann natürlich auch einen anderen Trenner verwenden. In diesem Fall Trenner. Da hatte ich natürlich nicht viel Fantasie. Aber Sie sehen, der gleiche String kommt heraus. Die Mächtigkeit von Raw-Strings geht soweit, dass Sie im String selbst ein doppeltes Anführungszeichen verwenden können und diese Sache wird richtig interpretiert. Sie sehen hier, hier ist in meinem String das doppelte Anführungszeichen enthalten. D. h., dieses Anführungszeichen beendet nicht meinen String, sondern das doppelte Anführungszeichen ist Teil des Strings. In dieser Lektion habe ich Ihnen Raw-String-Literale vorgestellt und Ihnen vor allem gezeigt, dass sie sehr wichtig sind, wenn Sie unter Windows einen Dateipfad öffnen wollen.

C++ Grundkurs

Steigen Sie in die mächtige Programmiersprache C++ ein und lernen Sie dabei alle wichtigen Funktionen mit Anwendungsbeispielen kennen.

8 Std. 14 min (147 Videos)
Derzeit sind keine Feedbacks vorhanden...

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!