저는 C# 전문가가 아니므로 엉망이라도 누군가 제발 저를 시정 해 주시겠습니까?
매개 변수를 값과 참조로 전달하는 두 가지 방법이 있습니다. 큰 차이점은 함수 내부에서 매개 변수를 수정하면 호출하는 데 사용 된 변수가 수정되는지 여부입니다. 이것은 내가 컴파일러가 스스로 결정할 것이라고 믿을만한 것이 아닙니다.
oDate를 호출자에게서 전달 된 변수로 변경하고 참조로 전달하려고합니다.
다른 질문은 초기화해야하는지 여부입니다. C#은 변수가 초기화되지 않은 상태에서 사용되는 경우를 잡아내는 것을 좋아하는데, 그 이유는 거의 항상 오류이기 때문입니다. 이 경우에는 전달하려는 것을 선언하고 TryParse()를 사용하여 첫 번째 값을 부여 할 수 있습니다. 이것은 완벽하게 합법적 인 기술이므로 컴파일러가 허용해야합니다. 이것은 컴파일러가 옳다고 믿지 않는 또 다른 것입니다. (나는 또한 컴파일러가 TryParse()에서 사용하기 전에 out 매개 변수가 초기화되었는지 확인합니다.)
따라서 "out"은 두 가지 용도로 사용됩니다. 매개 변수가 참조로 전달되고 함수 내부에서 초기화 될 것으로 예상됩니다. 이들 중 어느 것도 컴파일러에 의해 결정될 수 없습니다.
그들은 사용을 꺼려하기 위해 가능한 한 고통스럽게 만들고 싶었 기 때문에 아마도 그것을 사용하기로 결정했을 것입니다. –
이것은 최고의 대답이었습니다. 감사합니다 :) – GateKiller
"Anders Hejlsberg가" – BCS