언어 / 엔진/C#
[C#] 매개변수로 클래스를 넘길 때 ref 키워드에 대해
들어가며 C#에서는 클래스가 참조 타입이기 때문에 매개 변수로 넘길 때도 힙 메모리를 가리키는 포인터를(주소값) 넘기는 것으로 알고있다. 그러면 ref 키워드를 안써도 원본의 값을 변경할 수 있는데 왜 ref 키워드를 쓰는거지? 궁금해서 찾아보다가 정리하게 되었다. 클래스의 멤버 변수는 바꿀 수 있다. using System.Collections.Specialized; using System.Linq.Expressions; namespace Test { class Program { class Point { private int x; private int y; public Point(int _x, int _y) { x = _x; y = _y; } public void AddPoint(Point pos) /..