Witam
Co oznacza znak @ w c# i do czego sluzy?
pozdrawiam
Witam
Co oznacza znak @ w c# i do czego sluzy?
pozdrawiam
Hmm… szczerze to nie wiem, ale wydaje mi się, że to samo co w PHP, czyli “tłumienia błędów” tzn. nie wyświetlania błędu jeżeli coś pójdzie nie tak w funkcji
A więc znak @ służy do wprowadzania tzw Verbatim String. Obrazowo jest to string który nie zwraca uwagi na żadne ‘znaki specjalne’ w stylu tabulatory czy przejścia do nowej linii.
Najlepiej zilustrować to na prostym przykładzie. Wywołaj sobie te prosta funkcje:
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Test \t Test");
Console.WriteLine(@"Test \t Test");
Console.ReadKey();
}
}
w pierwszej funkcji do WriteLine wysłany zostaje zwykły string, zawierający “\t”, czyli tabulator. w drugiej funkcji jest to taka sama treść, lecz znaczek @ sygnalizuje, iż jest to Verbatim String. Wydruk programu będzie taki:
Test Test
Test \t Test
A więc w drugim przypadku “\t” został potraktowany jako najzwyczajniejszy ciąg znaków a nie jako znak tabulatora.
Bardzo przydaje się to np kiedy chcesz przesłać do jakiejś metody np. lokalizacje pliku, bądź adres internetowy. Dużo tam “” i o pomyłkę nietrudno.
A zwłaszcza do formułowania wyrażeń regularnych, w których backslashy i różnych znaków specjalnych potrafi być naprawdę wiele.
Zgadza się. Podświadomość wypiera mi z pamięci tę katorgę jaką przeżywałem używając wyrażeń regularnych w C++ QT4. ale to było dawno i nieprawda…