텐, 값, 참조 (RET 의해 차이 입출

 정의 :

      심판 키워드 매개 변수를 참조에 의해 전달. 효과는 컨트롤이 호출 방법으로 다시 통과 할 때, 상기 방법은 파라미터에서 변경이 변수에 반영되어있다. REF 파라미터를 사용하려면 메서드 정의와 호출하는 방법은 명시 적으로 심판 키워드를 사용해야합니다.

      밖으로 키워드는 참조로 전달 된 매개 변수로 이어질 것입니다. 그 심판이 변수가 전달되기 전에 초기화해야합니다 필요 제외하고 이것은 심판의 키워드와 유사하다. 매개 변수를 사용하려면 메서드 정의와 호출하는 방법은 명시 적으로 밖으로 키워드를 사용해야합니다.

 

값으로 :

  실제 데이터 전송에 들어오는 값을 변경하지 않고, p = 9 X = 8, 즉, X가 새로운 값을 할당하는 P에서 값 P에 의해 영향을받지 않으므로 X의 내용을 변경하지 않고, X가 P로서 존재 메모리 내의 다른 위치.

클래스 테스트
{
  정적 무효 메인 (문자열 []에 args)
  {
    INT (X) = 8;
    여우);
    Console.WriteLine ( "X = {0},"X);
  }

  정적 무효 FO (INT의 P)
  {
    p = P + 1;
    Console.WriteLine ( "p = {0}", P);
  }
}

실행 결과 p = 9 X = 8;

참조로 전달합니다 심판 수정이 호출하는 함수에 표시하고 함수를 작성 확실하다

  함수 FO 값 P의 변화는, 값 X가 변경됩니다

정적 무효 메인 (문자열 []에 args)
{
  INT (X) = 8;
  FO (심판 X);
  Console.WriteLine ( "X = {0},"X);
}

정적 무효 FO (심판의 INT P)
{
  p = 10;
  p = P + 1;
  Console.WriteLine ( "p = {0}", P);
}

실행 결과 : P = 11, X = 11;

 

주요 방법은 교환을 달성하기 위해 수정을한다 심판

정적 무효 스왑 (a 심판 캐릭터, 심판 캐릭터 b)
{
  문자열 온도 = A;
  A = B를;
  B = 온도;
}
정적 무효 메인 ()
{
  문자열 X = "안녕하세요";
  문자열 Y = "세계";
  스왑 (REF의 X, Y의 REF);
  콘솔 .WriteLine (X);
  Console.WriteLine (Y);

}

영업 실적 : 세계 안녕하세요

밖으로 수정 : 쓰기 기능과 함수 호출 확신하는 아웃 수정이 나타납니다하기

출력 및 심판 수정 수정은 다음 두 가지 사항을 제외하고 매우 유사합니다 :

함수를 호출 할 때 첫째, 할당이 필요하지 않습니다

둘째,이 함수가 종료하기 전에 할당해야합니다.

요약 :

1, REF 참조 호출 방법과 기능이 심판으로 로그인해야

2 전달 파라미터의 값에 영향을 미칠 것이다 REF 참조를 전달

3, 값에 의해 전달 된 매개 변수 값을 수정하지 않습니다

도 4는, 호출 방법으로 다시 제어를 전달 (입력 변수이 변수로 복귀해야 함) 할 때 사용되는 기준 (REF) 밖으로 통과, 상기 방법의 파라미터에 대한 변경은 변수에 반영 될

5, 초기화하는 데 필요한 심판 들어오는 타임 아웃이 필요하지 않습니다

도 6에서, 아웃 기능이 종료되기 전에 할당해야

추천

출처www.cnblogs.com/zhangne/p/11540957.html