2 回答
TA贡献1789条经验 获得超10个赞
Go 中的 switch 语句与 C 和相关语言的行为不同。所以
case "project_1":
case "project_2":
// do something
意味着对于 project_1 情况,什么都没有做,在其他语言中(我怀疑你很熟悉)就像:
case "project_1":
break;
case "project_2":
/* do something */
break;
这样做:
switch crmProject.Name {
case "project_1", "project_2":
crmRsrId = &mockedResourceId1
case "project_3", "project_4":
crmRsrId = &mockedResourceId2
default:
// maybe handle this by returning an error
}
TA贡献1719条经验 获得超6个赞
彼得是对的,您需要fallthrough关于案例project_1和project_3的陈述。示例: https: //play.golang.org/p/ts2CVoQfcc1
您还可以更改GetProjectOrganization函数以初始化局部变量,而不是默认情况下指向局部变量的指针。示例: https: //play.golang.org/p/iG3mLQA-vTG
- 2 回答
- 0 关注
- 305 浏览
添加回答
举报
