golang 實現多型的賦值問題

zhangxxxww發表於2017-10-13
package main

import (
    "fmt"
)

type TokenType uint16

type Token interface{
    Type() TokenType
    Lexeme() string
}

type Match struct{
    toktype TokenType
    lexeme string
}

func (m *Match)Type() TokenType{
    return m.toktype
}

func (m *Match)Lexeme() string{
    return m.lexeme
}

func main(){
    m := Match{16, "sixteen"}
    //t := map[int]Token{}
    //t[0] = &m
    //fmt.Println(t[0].Type())
    //fmt.Println(t[0].Lexeme())

    t :=Token{}
    t = &m
    fmt.Print(t.Type())
}

出現錯誤:

invalid type for composite literal: Token

請問一下這是什麼問題?

更多原創文章乾貨分享,請關注公眾號
  • golang 實現多型的賦值問題
  • 加微信實戰群請加微信(註明:實戰群):gocnio

相關文章