Rumah >pembangunan bahagian belakang >C++ >Adakah Simbol $ Sebelum Rentetan C# Rentetan Verbatim atau Interpolasi Rentetan?
Rentetan Verbatim atau Ciri Baharu? Membongkar Misteri $ Before a String
Anda terjumpa kejadian pelik semasa menggunakan Visual Studio 2015 CTP. Daripada menggunakan rentetan verbatim dengan @, anda secara tidak sengaja menaip $, namun pengkompil bertindak balas tanpa ralat. Artikel ini bertujuan untuk menjelaskan peranan $ sebelum rentetan dalam C#.
Watak $ berfungsi sebagai jalan pintas untuk String.Format, yang memainkan peranan penting dalam interpolasi rentetan, ciri baru yang diperkenalkan dalam C# 6. Walau bagaimanapun , dalam penggunaan khusus anda, ia pada asasnya menjadi pemegang tempat, mencerminkan kefungsian rentetan.Format().
Kuasa sebenar $ terbentang apabila ia memudahkan pembinaan rentetan dengan rujukan kepada nilai lain. Pertimbangkan senario di mana anda mempunyai pembolehubah berikut:
var anInt = 1; var aBool = true; var aString = "3";
Pada masa lalu, anda akan bergantung pada String.Format() untuk memasang rentetan berformat:
var formated = string.Format("{0},{1},{2}", anInt, aBool, aString);
Dengan rentetan interpolasi, proses ini menjadi mudah:
var formated = $"{anInt},{aBool},{aString}";
Selain itu, C# menyediakan alternatif sintaks interpolasi menggunakan $@. Ini membolehkan penyepaduan lancar bagi ciri rentetan kata kerja dan interpolasi rentetan tanpa memerlukan aksara yang melarikan diri. Contohnya:
var someDir = "a"; Console.WriteLine($@"c:\{someDir}\b\c");
Output untuk kod ini ialah:
c:\a\b\c
Atas ialah kandungan terperinci Adakah Simbol $ Sebelum Rentetan C# Rentetan Verbatim atau Interpolasi Rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!