값으로 호출과 참조로 호출 간의 차이점을 이해하려고했습니다. 누군가가 참조로 실제 메모리 위치 값을 변경하는 반면, 값으로 호출하면 인스턴스 (가상 값)가 변경되지만 실제 값은 변경되지 않는다고 설명했습니다. 그래서 저는 그 프로그램이 어떻게 가치에 의해 참조 작업을하는지 확인하려고했습니다. 내 프로그램이 작동하지 않습니다. 논리를 올바르게 구현하고 있습니까?전달 값과 참조의 차이점
다음은 해결 된 코드와 수정 된 코드입니다.
static void Main(string[] args)
{
Program pro = new Program();
int i = 1;
Console.WriteLine("Call By Value: ");
pro.byVal(i);
Console.WriteLine(i);
Console.ReadKey();
Console.WriteLine("\n\n\nCall By Reference: ");
pro.byRef(ref i);
Console.WriteLine(i);
Console.ReadKey();
}
public void byVal(int i) //******* Call by Value *******//
{
i = 2;
}
public void byRef(ref int i) //******* Call by Refrence *******//
{
i = 3;
}
이 코드는 실제로 컴파일됩니까? –
"내 프로그램이 작동하지 않습니다"라는 의미는 무엇입니까? 달성하고자하는 것은 무엇입니까? 이 문서를 참조하십시오 : https://msdn.microsoft.com/en-us/library/0f66670z.aspx –
그렇습니다. @MongZhu – smnizamani