static void PrzekazywanieZmiennychhDoFunkcji() { Olowek olowek = new Olowek(); // Do zmiennej PrzekazReferencje trafia referencja do okiektu ołówek, a nie cały obiekt. Następnie funkcja stworzy kopie obiektu na podstawie przekazanego argumentu. (wiecej niżej w ParametryRefOut()) Szuflada.PrzekazReferencje(olowek); // Note: Do funkcji zawsze trawia wartość ze stosu. }
static void OperatorWarunkowyNull() { /* Operatory warunkowe wartości null '?'. * Umożliwiają sprawdzenie czy wartość zmiennej == null przed użyciem metody instancji. Gdy obiekt jest nullem to metoda nie zostanie wykonana, nie zostanie również zgłoszony wyjątek 'NullReferenceException'. * Poprostu bedzie nullem. (bool true = p?.ToString() == null;) */ Szuflada szuflada = null; szuflada?.PokazCoMaszWSrodku(); Console.WriteLine($"p value is: {szuflada.ToString()}"); // Wyswietli się "p value is:" | Console.WriteLine($"p value is: {null}"); string wartoscTekstowa = szuflada?.ToString(); // Nie zostanie zgłoszony wyjątek. Do zmiennej wartoscTekstowa przypisze nulla }