当前位置: 首页 > 面试题库 >

如何检查是否在结构中设置了属性

诸葛卜霸
2023-03-14
问题内容

我试图找到如何检查是否设置了结构属性,但找不到任何方法

我期待这样的事情,但实际上这是行不通的:

type MyStruct struct {
    property    string
}

test := new(MyStruct)
if test.property {
    //do something with this
}

问题答案:

就像dyoo所说的,nil如果您的struct属性是指针,则可以使用。如果您想将它们保留为字符串,可以与进行比较""。这是一个示例:

package main

import "fmt"

type MyStruct struct {
    Property string
}

func main() {
    s1 := MyStruct{
        Property: "hey",
    }

    s2 := MyStruct{}

    if s1.Property != "" {
        fmt.Println("s1.Property has been set")
    }

    if s2.Property == "" {
        fmt.Println("s2.Property has not been set")
    }
}

http://play.golang.org/p/YStKFuekeZ



 类似资料:
  • 问题内容: 如何检查核心数据对象中是否设置了属性? 我将所有核心数据对象加载到目录中: 我的核心数据NSManagementObject是: formQuestions [indexPath.row] .noticeText //加载: 我的属性“ noticeText”可以为空,因此,当我创建核心数据对象时,可能无法设置某些值。(该属性在核心数据中设置为可选) 当我现在尝试证明是否有值时,它总是

  • 给定一个非常简单的类: 要检查是否尚未赋值,只需执行是?

  • 问题内容: 如何检查是否设置了项目?目前我正在使用 问题答案: 如果该项不存在,则WebStorage规范中的方法显式返回: …如果给定键在与对象关联的列表中不存在,则此方法必须返回null。… 所以你可以:

  • 问题内容: 原谅我,我来自ac#背景! 我在Go中有以下结构。我们通过从文件中读取配置来填充此结构,效果很好。但是我试图找出一种方法来告诉结构中的某个特定属性(通过配置文件传递时是否为null)。如图所示,完全没有设置。 我为此奋斗了大约3个小时。我可以针对类型字符串等执行此操作,但无法找到针对所有类型的通用方法? 问题答案: 在执行过程中,值的默认值为其零值。您可能要使所有类型的指针成为指针(例

  • 问题内容: 在Python中,有没有一种简单的方法来检查可选参数的值是否来自其默认值,或者是因为用户已在函数调用中显式设置了它? 问题答案: 很多答案都没有完整信息的一部分,因此我想将所有信息与我最喜欢的模式结合在一起。 默认值是一种类型 如果默认值是可变对象,那么您很幸运:您可以利用以下事实:在定义函数时,Python的默认参数将被评估一次(上一节答案末尾的更多信息) 这意味着您可以轻松地使用来

  • 如何检查字节中的某个位是否被设置?