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/route53"
)
func main() {
sess := session.Must(session.NewSession())
client := route53.New(sess)
zones, err := client.ListHostedZones(&route53.ListHostedZonesInput{
MaxItems: aws.String("100"),
})
if err != nil {
fmt.Printf("Error occurred")
}
fmt.Printf("%v", zones)
if zones.IsTruncated {
fmt.Printf("%v", zones.NextMarker)
}
}
上記のコードは、以下の条件で失敗します。レギュラータイプ(ブール値)とタイプ(*ブール値)との間に差がある理由は、私が知りたいのは何boolと* boolの相違点
non-bool zones.IsTruncated (type *bool) used as if condition
の結果に
if zones.IsTruncated {
fmt.Printf("%v", zones.NextMarker)
}
です。私は1つがポインタ値であることを理解していますが、条件はまだ有用であるはずです。ここで
あなたは構造体への間接参照に必要な場所に条件なし
IsTruncated: true,
MaxItems: "100",
NextMarker: "Wouldn'tYouLikeToKnow"
}
ではないことを確認しますが。 – user2357112
@ user2357112私が理解していないことは、ポインタがブール値を指しているかどうかを真偽チェックする方法です。 * boolが '真'である 'bool'を指している場合は、それをどのようにチェックしますか? –
ポインタを参照解除します。 – user2357112