이동 언어 변수 매개 변수 (다양한 함수 매개 변수)

  적합한 매개 변수 코드는 로그 함수 등으로 사용하는 것이 간단하고, 특히 입출력 클래스 기능을 할 수 있도록하는 것이 사용.

  실시 예 4에서이 문서에서는 가변 파라미터의 사용을 설명한다.

  프로그램 코드 :

주요 패키지 

가져 오기 ( 
    " 바이트 " 
    " FMT " 
) 

/ * ********************************************************. 1 **************** 
정의 매개 변수 변수 기능 
에만 유형이 존재하는 매개 변수의 함수로 폼 ... 형 타입 형식의 
마지막 인수 여야가, 그것은 문법 설탕 (문법 설탕)이다 
즉, 언어의 구문은, 기능에 영향을주지 않지만 프로그래머는,보다 편리하게 사용하는 것이 
일반적으로, 문법 설탕의 사용은 가독성을 높일 수 있습니다, 프로그램이 가능한 오류 줄이기 위해 
* / 
FUNC의이 myfunc (인수 ... 지능 ) {
     위해 =, V _ 범위 인수 { 
        FMT. 에 println (V) 
    } 
} 

/ * ******************************************************** 2 **************** 
변수 패러미터 임의의 유형 
의 계면으로 {} 모든 유형의 데이터가 이동 언어 사용의 연습 통과는 인터페이스의 사용은 {} 여전히 안전 타입 
* / 
FUNC의 myprintf (인수 ...인터페이스 {}) {
     위해 _, ARG =는 인수 {범위
         스위치 . ARG를 (형태) {
         경우  INT는 : 
            fmt.Println은 (ARG는 " int 값이다. " )
         의 경우  문자열 : 
            fmt.Println는 (ARG는 " 은 문자열 값입니다. " )
         의 경우 INT64 : 
            fmt.Println (ARG는, " Int64 값입니다. " )
         기본 : 
            fmt.Println (ARG, " 알 수없는 값입니다. " ) 
        }

    } 
} 

/ * ******************************************************** 3 **************** 
가변 파라미터의리스트를 횡단 - 각 파라미터 취득 값 
* / 
FUNC JoinStrings (SLIST ... 캐릭터 ) 캐릭터 {
     // 바이트 버퍼의 정의는, 빠른 연결 문자열 
    var에 bytes.Buffer 대 B는 상태
     에 대한 _, S = 범위 SLIST {
         //를 바이트 스트링 라이트를 통과 할 바이트 어레이로 
        b.WriteString (S) 

    } 
    // 문자열로 결찰 바이트 배열 
    복귀 b.String () 
} 

FUNC rawPrint (SLST ... 인터페이스 {}) {
     위한 _, V = 범위 {SLST 
        fmt.Println (V) 
    } 
} 

/ ***************** ***************** 4 
함수의 변수 파라미터의 복수의 패스 매개 변수 
이 포함하려는 경우 ... 통과 할 때, 다음 함수 변수 파라미터 변수 가변 전송 파라미터는, 가변 매개 변수를 다시 첨가 할 수 
* / 
FUNC personPrint (SLST ... 인터페이스 {}) { 
    rawPrint (SLST ...) 
} 

FUNC을 주 () { 

    // 파라미터의 함수 변화 정의 
    에서 myfunc을 ( . 1 , . 7 , . 5 ) 

    VAR V1 INT = . 1 
    VAR V2 INT64 = 234 
    VAR V3 스트링 = " 안녕하세요 " 
    var에 V4 float32 = 1.23 
    // 변수 패러미터의 어떤 유형 
    MyPrintf (V1, V2, V3, V4
     )// 대하여 반복 가변 인수 목록 - 각 매개 변수에 대한 값을 획득 
    fmt.Println (JoinStrings ( " 여자 " , " " , " 여러분 " ))
     // 변수 패러미터의 복수의 기능의 파라미터를 전달 
    (personPrint . 1 , 3 , 5 ) 
}

 

  프로그램 출력 :

1 
7 
5 
1  이다 INT의 값.
234  이다 Int64 값. 
안녕하세요 입니다 문자열 값.
1.23  입니다 알 수없는 값입니다. 
신사 숙녀 여러분 
1 
3 
5

 

추천

출처www.cnblogs.com/personblog/p/12319366.html