[GO] 구덩이를 밟기 쉬운 내외 변수 차단 문제

4221 단어
 1 package main
 2 
 3 import (
 4     "errors"
 5     "fmt"
 6 )
 7 func et()(string,error){
 8     return "",errors.New(" ERROR !")
 9 }
10 func getErr()(string,error){
11     var flag int
12     flag=0
13     var err error
14     // , err , err 
15     var printErr = func(errInfo string) {
16         // err 
17         err = errors.New(errInfo)
18     }
19     if flag==0{
20         result,err:=et()
21         if err != nil{
22             printErr(" ERROR !")
23             return "",err
24         }else{
25             return result,nil
26         }
27     } else{
28         return "",nil
29     }
30 }
31 func main() {
32     _,error:=getErr()
33     fmt.Println(error)
34 }     

이 프로그램은 무엇을 출력해야 합니까?

좋은 웹페이지 즐겨찾기