go - *golang 中的 bool 值

标签 go

在使用 Mongo 进行 CRUD 操作时,我遇到了以下代码。查找查询选项需要传入查找 功能

据我了解,这只是一面旗帜。我们怎样才能通过 指针 它是什么意思?

type FindOptions struct {
    AllowPartialResults *bool
}

使用下面的 func 解决了它,但它没有任何意义。
options.FindOptions{
    AllowPartialResults: func() *bool {
        var a bool = true
        return &a
    }(),
}

最佳答案

该库使用指向 bool 的指针来区分以下三种情况:

  • 应用程序未设置选项(字段为零)
  • 应用程序将选项设置为真(字段是指向真的指针)
  • 应用程序将选项设置为 false(字段是指向 false 的指针)。

  • mongo 包提供了用于初始化选项的辅助函数和方法。以下是如何使用这些帮助程序来创建问题中显示的 FindOptions:
    options.Find().SetAllowPartialResults(true)
    

    关于go - *golang 中的 bool 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58646667/

    相关文章:

    go - 通过 Makefile 使用代理

    go - 如何检查具体类型由哪些嵌入类型组成?

    json - Flutter 使用来自 Golang RFC3339 的 DateTime 解析 json : FormatException: Invalid date format

    JSON 解码器忽略结构字段标签?

    url - 如何使用 gorilla/mux 将 URL 拆分为多个文件?

    go - LiteIDE GDB 与 Golang

    GOPATH 变量不持久

    web - Revel 框架缓存静态文件?

    go - 此代码使用类型的地址?

    go - Go 中的相同算法、多种输入和输出类型的可能性?