Czytałem o nowych funkcjach zmiennych wyjściowych w C # 7 tutaj . Mam dwa pytania:
To mówi
Zezwalamy również na „discards” jako parametry out, w postaci a
_, aby pozwolić Ci zignorować parametry, które Cię nie interesują:p.GetCoordinates(out var x, out _); // I only care about xP: Wydaje mi się, że to tylko informacja, a nie nowa funkcja języka C # 7, ponieważ możemy to zrobić również w C # 7.0:
var _; if (Int.TryParse(str, out _)) ...czy coś mi tu brakuje?
Mój kod wyświetla błąd, gdy robię to, co wspomniano na tym samym blogu:
~Person() => names.TryRemove(id, out *);*nie jest prawidłowym identyfikatorem. Myślę, że przeoczenie Madsa Torgersena?
out __nie jest zmienną, nie deklarujesz jej i nie możesz jej używać z nazwy. Wint _tym jest zmienna.