对不起,我对golang很陌生。我正在努力理解变量的范围。我试图创建一个全局变量来从局部函数中获取变量,但是我一直收到一个错误,它没有被声明。我也尝试做一个 return 语句,但是我不断收到一个语法错误,即没有足够的参数并且没有返回值。
我添加了类似的东西
func main() string { return Test2 }
但是我做错了什么,无法解决这个问题
我尝试创建一个全局变量来将值存储在本地函数之外。我还尝试创建一个返回函数来获取变量。
package main
import (
"fmt"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/dynamodb"
)
var Test2 string
func main() {
sess, _ := session.NewSession(&aws.Config{
Region: aws.String("us-east-1")},
)
svc := dynamodb.New(sess)
input := &dynamodb.GetItemInput{
Key: map[string]*dynamodb.AttributeValue{
"id": {
S: aws.String("ami-xxxxx"),
},
},
TableName: aws.String("table"),
}
result, _ := svc.GetItem(input)
Test := result.Item["id"].S
Test2 := *Test
fmt.Println(Test2)
}
fmt.Println(Test2)
语法错误:函数体外的非声明语句