如何为变量分配默认回退值

2024年 2月 6日 90.8k 0

如何为变量分配默认回退值

问题内容

我的应用程序中有一个 struct 指针

type body struct {
a *string
b *string
}

登录后复制

我想将body中的ab的值传递给函数,这样如果指针a为空,则传递默认的空字符串值。像这样的东西:

sampleFunc(ctx,*A||"");

func sampleFunc(ctx Context,count string){
// ......
}

登录后复制

我该怎么做?

正确答案

使用您所需的逻辑声明一个函数,用于从指针计算值。我在这里使用泛型,因此函数适用于任何类型。

// value returns the value the value pointed
// to by p or the empty value when p is nil.
func value[t any](p *t) t {
var result t
if p != nil {
result = *p
}
return result
}

登录后复制

像这样使用:

samplefunc(ctx, value(a))

登录后复制

带有 *string 字段的 api 通常会为此目的提供辅助函数。例如,aws api 提供 stringvalue函数:

sampleFunc(ctx, aws.StringValue(A))

登录后复制

以上就是如何为变量分配默认回退值的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论