假设我正在写一个扫雷游戏,并且我有一个结构来保存游戏领域,其中包含一个包含地雷的二维数组。假设,我想用一些地雷初始化它。有没有办法说gameField GameField = new(GameField, 30)
,类似于我在java中做什么?Go,init自定义类型
下面是一些代码来说明我的观点:
type GameField struct {
field [20][20] int
}
func (this *GameField) scatterMines(numberOfMines int) { //some logic to place the numberOfMines mines randomly }
我要的是调用一个初始化,并有scatterMines
FUNC自动执行。
当包只包含一个导出的类型时,我也看到了这种模式,只有新的形式。所以如果该软件包被称为“gamefield”,那么你可以只有一个新功能,并做gamefield.New() – jdi 2012-04-01 14:57:21