sách gpt4 ăn đã đi

chuỗi - Cách sử dụng chuỗi bản đồ [chuỗi]*

In lại 作者:IT王子 更新时间:2023-10-29 01:51:46 28 4
mua khóa gpt4 giày nike

我正在尝试使用 sarama(管理员模式)创建主题。没有 ConfigEntries 工作正常。但我需要定义一些配置。

我设置了主题配置(这里发生了错误):

    tConfigs := map[string]*string{
"cleanup.policy": "delete",
"delete.retention.ms": "36000000",
}

但是我得到一个错误:

./main.go:99:28: cannot use "delete" (type string) as type *string in map value
./main.go:100:28: cannot use "36000000" (type string) as type *string in map value

我正在尝试像这样使用管理模式:

err = admin.CreateTopic(t.Name, &sarama.TopicDetail{
NumPartitions: 1,
ReplicationFactor: 3,
ConfigEntries: tConfigs,
}, false)

这是 sarama 模块中定义 CreateTopic() 的行 https://github.com/Shopify/sarama/blob/master/admin.go#L18

基本上,我不明白指针字符串映射是如何工作的:)

câu trả lời hay nhất

sử dụng composite literal 初始化具有 sợi dây 指针值类型的映射,您必须使用 sợi dây 指针值。 sợi dây 文字不是指针,它只是一个 sợi dây giá trị.

获取指向 sợi dây 值的指针的一种简单方法是获取 sợi dây 类型变量的地址,例如:

s1 := "delete"
s2 := "36000000"

tConfigs := map[string]*string{
"cleanup.policy": &s1,
"delete.retention.ms": &s2,
}

为了方便多次使用,创建一个辅助函数:

func strptr(s string) *string { return &s }

并使用它:

tConfigs := map[string]*string{
"cleanup.policy": strptr("delete"),
"delete.retention.ms": strptr("36000000"),
}

试试 Đi đến Sân chơi 上的例子.

在此处查看背景和其他选项:How do I do a literal *int64 in Go?

关于string - 如何使用 map[string]*string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56663288/

28 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress