golang中等效的结构数组

时间:2015-07-29 12:49:40

标签: c arrays struct go

我正在寻找与结构数组相当的东西。或者等同于golang中以下代码的东西:

DECLARE @STR VARCHAR(MAX) = ''

DECLARE @ID INT

SET @STR = 'SELECT * FROM STUDENT WHERE STUDENT_ID=@ID'

SET @STR = REPLACE(@STR, '@ID', COALESCE(CAST(@ID AS varchar(31)),''))

任何一个例子,我如何在golang中为这些值提供/赋值?

2 个答案:

答案 0 :(得分:1)

您可以在阵列上找到一些基本信息:http://golang.org/doc/effective_go.html#arrays

package main

import (
    "fmt"
)

var s [10]MyStruct //initializes to 0

func main() {
    for k, v := range s {
        fmt.Println(k, v.a)
    }
}

type MyStruct struct {
    a int64
}

答案 1 :(得分:0)

// define structure type
type my_struct struct {
  a int
  b rune
}

// declare slice of my_struct
var a []my_struct

// declare and initialise struct with one element 
b := make([]my_struct, 1)

// create structure and save it
b[0] = my_struct{1, 'a'}

// append a new one
b = append(b, my_struct{2, 'b'})

你必须阅读https://golang.org/doc/effective_go.html,特别是关于结构和切片的内容,如果你想了解更多关于结构和切片的话。