kazber95 kazber95 27.04.2021, 17:43:22 0 + Mam taki kod:string pies = "Alex";string pies2 = pies;Pytanie: jak to się rozlokuje na stercie i stosie? Na stercie umieszczona zostanie zmienna pies, a na stosie dwie zmienne wskazywać będą na to samo miejsce na stercie?#naukaprogramowania #csharp
budyn budyn 27.04.2021, 17:56:02 2 + @kazber95: Nie jestem pewien w 100% ale stringi takie zahardcodowane jak ten nie są ani w stercie ani w stacku.https://stackoverflow.com/questions/2628410/memory-allocation-for-const-in-c-sharpTo nie jest const, ale raczej tak będzie traktowany przez kompilator.Po prostu będzie referencja do specjalnego miejsca w pamięci na compile time constantsBędziesz miał dwie referencje na to samo miejsce w pamięci.
WielkiElektronig WielkiElektronig 27.04.2021, 18:24:45 1 + @kazber95: wewnątrz metody najcześciej stosale jeśli metoda będzie np. asynchroniczna, to na sterciejeśli to pole klasy, to zwykła referencja, czyli stertai ogólnie to nie jest coś, czym się powinieneś przejmować
string pies = "Alex";
string pies2 = pies;
Pytanie: jak to się rozlokuje na stercie i stosie? Na stercie umieszczona zostanie zmienna pies, a na stosie dwie zmienne wskazywać będą na to samo miejsce na stercie?
#naukaprogramowania #csharp
https://stackoverflow.com/questions/2628410/memory-allocation-for-const-in-c-sharp
To nie jest const, ale raczej tak będzie traktowany przez kompilator.
Po prostu będzie referencja do specjalnego miejsca w pamięci na compile time constants
Będziesz miał dwie referencje na to samo miejsce w pamięci.
wewnątrz metody najcześciej stos
ale jeśli metoda będzie np. asynchroniczna, to na stercie
jeśli to pole klasy, to zwykła referencja, czyli sterta
i ogólnie to nie jest coś, czym się powinieneś przejmować