Call by Value, Call by Reference

less than 1 minute read

public void Add1(int a, int b) { a=a+b; }

public void Add2(ref int a, ref int b) { a=a+b; }

main() { int a=3; int b=2;

Add1(a,b); Console.WriteLine(“a:{0} b:{1}”,a,b); //a:3 b:2 //변화가 없다. 리턴도 없고.. Add2(ref a,ref b); Console.WriteLine(“a:{0} b:{1}”,a,b); //a:5 b:2 //콜바이레퍼런스 값을 복사해가는게 아닌 주소를 가져가는거라서… 값이 변한다. }