当前位置: > > > > 调用没有类型的类型函数
来源:stackoverflow
2024-04-20 13:00:33
0浏览
收藏
今天给大家带来了《调用没有类型的类型函数》,其中涉及到的知识点包括等等,无论你是小白还是老手,都适合看一看哦~有好的建议也欢迎大家在评论留言,若是看完有所收获,也希望大家能多多点赞支持呀!一起加油学习~
问题内容
我创建了某种类型的函数。一旦我做到了,我就可以按照预期的方式调用它,当我想调用它而不声明函数类型的变量时,问题就来了。
这是一个可以澄清一切的示例:
type MyStruct struct{ number1 int number2 int } func (input *MyStruct) declareValues(val1 int, val2 int){ input.number1 = val1 input.number2 = val2 } func (input MyStruct) add() int{ return number1 + number2 } var declared MyStruct declared.declareValues(2,3) fmt.Println(declared.add()) // Should return 5 fmt.Println(¿MyStruct?.add()) // If works, should return 0
重点是,如果我想用更复杂的方法来做到这一点,并且如果结构的字段是默认字段,它应该给我一个答案(所以我不必声明变量,我可以使用声明的类型调用它),如果字段更改则返回另一个值。 我必须这样做,因为我不想声明一个变量来调用该方法。
正确答案
您可以执行 MyStruct{}.add()
,在 上尝试一下。这仍然会分配该方法接收器的实例,但至少您不必将其存储在单独的变量中。
好了,本文到此结束,带大家了解了《调用没有类型的类型函数》,希望本文对你有所帮助!关注公众号,给大家分享更多Golang知识!