Sobes.tech
Junior — Middle

Czy można zaimplementować funkcję wewnątrz struktury danych i jak to zadziała?

sobes.tech AI

Odpowiedź od AI

W C#, struktura (struct) może zawierać metody, w tym funkcje. Pozwala to na enkapsulację zachowania razem z danymi. Metody wewnątrz struktury działają tak samo jak w klasach, ale należy pamiętać, że struktury są typami wartości, i podczas przekazywania struktury do metody tworzona jest kopia.

Przykład:

struct Point
{
    public int X, Y;

    public void Move(int dx, int dy)
    {
        X += dx;
        Y += dy;
    }
}

Wywołanie Move na instancji struktury zmienia kopię, jeśli struktura nie jest przekazywana przez referencję. Aby zmiany były trwałe, można użyć ref lub parametrów in.