相关疑难解决方法(0)

将地图的所有元素复制到另一个元素中

特定

var dst, src map[K]V
Run Code Online (Sandbox Code Playgroud)

我可以复制所有项目srcdst

for k, v := range src {
    dst[k] = v
}
Run Code Online (Sandbox Code Playgroud)

有没有比较惯用的方法呢?

copy仅适用于切片(以及string作为源).

dictionary copy go

63
推荐指数
2
解决办法
3万
查看次数

gob:未注册接口的类型:map [string] interface {}

gob 无法编码 map[string]interface{}

gob: type not registered for interface: map[string]interface {}
Run Code Online (Sandbox Code Playgroud)

http://play.golang.org/p/Si4hd8I0JE

package main

import (
    "bytes"
    "encoding/gob"
    "encoding/json"
    "fmt"
    "log"
)

func CloneObject(a, b interface{}) []byte {
    buff := new(bytes.Buffer)
    enc := gob.NewEncoder(buff)
    dec := gob.NewDecoder(buff)
    err := enc.Encode(a)
    if err != nil {
        log.Panic("e1: ", err)
    }
    b1 := buff.Bytes()
    err = dec.Decode(b)
    if err != nil {
        log.Panic("e2: ", err)
    }
    return b1
}

func main() {
    var a interface{}
    a = map[string]interface{}{"X": 1}
    b2, err := …
Run Code Online (Sandbox Code Playgroud)

go gob

19
推荐指数
2
解决办法
1万
查看次数

标签 统计

go ×2

copy ×1

dictionary ×1

gob ×1