Heim >Backend-Entwicklung >C++ >Ist das $-Symbol vor einem C#-String ein wörtlicher String oder eine String-Interpolation?

Ist das $-Symbol vor einem C#-String ein wörtlicher String oder eine String-Interpolation?

DDD
DDDOriginal
2025-01-04 22:07:38471Durchsuche

Is the $ Symbol Before a C# String a Verbatim String or String Interpolation?

Verbatim-String oder eine neue Funktion? Das Geheimnis von $ vor einem String lüften

Sie sind bei der Verwendung von Visual Studio 2015 CTP auf ein seltsames Ereignis gestoßen. Anstatt wörtliche Zeichenfolgen mit @ zu verwenden, haben Sie versehentlich $ eingegeben, der Compiler hat jedoch ohne Fehler geantwortet. Ziel dieses Artikels ist es, die Rolle von $ vor Strings in C# zu klären.

Das $-Zeichen dient als Abkürzung für String.Format, das eine wichtige Rolle bei String-Interpolationen spielt, einer neuen Funktion, die in C# 6 eingeführt wurde , in Ihrer spezifischen Verwendung wird es im Wesentlichen zu einem Platzhalter, der die Funktionalität von string.Format() widerspiegelt.

Die wahre Leistungsfähigkeit von $ entfaltet sich, wenn es die String-Konstruktion mit Verweisen auf andere Werte erleichtert. Stellen Sie sich ein Szenario vor, in dem Sie die folgenden Variablen haben:

var anInt = 1;
var aBool = true;
var aString = "3";

In der Vergangenheit hätten Sie sich auf String.Format() verlassen, um eine formatierte Zeichenfolge zusammenzustellen:

var formated = string.Format("{0},{1},{2}", anInt, aBool, aString);

Mit Zeichenfolge Durch die Interpolation wird dieser Prozess mühelos:

var formated = $"{anInt},{aBool},{aString}";

Darüber hinaus bietet C# eine alternative Interpolationssyntax mit $@. Dies ermöglicht eine nahtlose Integration wörtlicher Zeichenfolgenfunktionen und Zeichenfolgeninterpolation, ohne dass Escapezeichen erforderlich sind. Zum Beispiel:

var someDir = "a";
Console.WriteLine($@"c:\{someDir}\b\c");

Die Ausgabe für diesen Code lautet:

c:\a\b\c

Das obige ist der detaillierte Inhalt vonIst das $-Symbol vor einem C#-String ein wörtlicher String oder eine String-Interpolation?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn