令我惊讶的是这个街区
type Object *struct{
X int
}
在golang中编译。但是,我不知道如何创建基础结构的实例。
从功能上讲,我想要实现的是从所有类型签名中删除所有星星,而不会被黑客入侵(重新定义类型和其他技巧)。这将使类型/结构非常类似于Java类。
问题是-golang支持此构造吗?还是我应该坚持到处都放星星?
答案 0 :(得分:0)
如果您不想在各处传递指针,则不必这样做。您可以按值传递结构。
例如
将结构定义为:
type Object struct{
X int
}
然后将您的函数定义为:
func DoStuffToObject(obj Object) {
// Do things with obj here
}
如果您希望这样做,则按值传递对象没有任何问题。