Deklarowanie niejawnie wpisanych zmiennych lokalnych

Ukończone

Kompilator języka C# działa w tle, aby ułatwić pisanie kodu. Może ona wywnioskować typ danych zmiennej według zainicjowanej wartości. W tej lekcji poznasz tę funkcję o nazwie niejawnie wpisane zmienne lokalne.

Co to są niejawnie wpisane zmienne lokalne?

Niejawnie typizowana zmienna lokalna jest tworzona przy użyciu var słowa kluczowego, po którym następuje inicjowanie zmiennej. Przykład:

var message = "Hello world!";

W tym przykładzie utworzono zmienną ciągu przy użyciu słowa kluczowego var zamiast słowa kluczowego string .

Słowo var kluczowe informuje kompilator języka C#, że typ danych jest implikowany przez przypisaną wartość. Po określeniu typu zmienna działa tak samo, jak w przypadku użycia rzeczywistego typu danych do zadeklarowania jej. Słowo kluczowe var jest używane do oszczędzania stuknięć klawiszy, gdy typy są długie lub gdy są one oczywiste z kontekstu.

W przykładzie:

var message = "Hello world!";

Ponieważ zmienna message jest natychmiast ustawiona na string wartość "Hello World!", kompilator języka C# rozumie intencję i traktuje każde wystąpienie message typu string.

W rzeczywistości zmienna message jest typowana jako i string nigdy nie można jej zmienić. Rozważmy na przykład następujący kod:

var message = "Hello World!";
message = 10.703m;

Jeśli uruchomisz ten kod, zostanie wyświetlony następujący komunikat o błędzie.

CS0029: Cannot implicitly convert type 'decimal' to 'string'

Uwaga / Notatka

Inne języki programowania używają słowa kluczowego var inaczej. W języku C# zmienne są przypisywane typowi przez kompilator niezależnie od tego, czy używasz rzeczywistej nazwy typu danych, czy też zezwalasz kompilatorowi na sugerowanie typu danych. Innymi słowy, typ jest zablokowany w momencie deklaracji i dlatego nigdy nie będzie w stanie przechowywać wartości innego typu danych.

Zmienne używające słowa kluczowego var muszą być zainicjowane

Ważne jest, aby zrozumieć, że var słowo kluczowe jest zależne od wartości używanej do zainicjowania zmiennej. Jeśli spróbujesz użyć słowa kluczowego var bez inicjowania zmiennej, podczas próby skompilowania kodu zostanie wyświetlony błąd.

var message;

Jeśli spróbujesz uruchomić ten kod, gdy zostanie skompilowany, zobaczysz następujące dane wyjściowe:

CS0818: Implicitly-typed variables must be initialized

Dlaczego warto używać słowa kluczowego var ?

Słowo var kluczowe zostało powszechnie przyjęte w społeczności języka C#. Prawdopodobnie jeśli spojrzysz na przykład kodu w książce lub w trybie online, zobaczysz var słowo kluczowe użyte zamiast rzeczywistej nazwy typu danych, dlatego ważne jest, aby zrozumieć jego użycie.

Słowo var kluczowe ma ważne zastosowanie w języku C#. Często typ zmiennej jest oczywisty w wyniku jej inicjalizacji. W takich przypadkach łatwiej jest użyć słowa kluczowego var . Słowo var kluczowe może być również przydatne podczas planowania kodu dla aplikacji. Po rozpoczęciu tworzenia kodu dla zadania możesz nie od razu wiedzieć, jakiego typu danych użyć. Korzystanie z var może pomóc w bardziej dynamicznym rozwijaniu swojego rozwiązania.

Podczas rozpoczynania pracy zaleca się, aby podczas deklarowania zmiennych nadal używać rzeczywistej nazwy typu danych, dopóki nie będziesz bardziej komfortowo pracować z kodem. Użycie typu danych podczas deklarowania zmiennych pomoże Ci być celowe podczas pisania kodu.

Podsumowanie

Oto, co wiesz już o słowie var kluczowym do tej pory:

  • Słowo var kluczowe nakazuje kompilatorowi wnioskowanie typu danych zmiennej na podstawie wartości, do których jest inicjowana.
  • Podczas przeglądania kodu innych osób prawdopodobnie zobaczysz słowo kluczowe var; jednak należy używać typu danych, gdy tylko jest to możliwe.