我有两个文件 main.go room.go 都在同一级目录下,
room.go里有个变量
import ("container/list")
var MsgList = list.New()
在main.go的方法里调用到了MsgList变量
for {
if MsgList.Len() == 0 {
msg := fmt.Sprintf("%v", MsgList.Front().Value)
MsgList.Remove(MsgList.Front())
if err = c.WriteMessage(1, []byte(msg)); err != nil {
return
}break
}
}
用 go run . 跑没有问题 但是用vscode debug 报错
Build Error: go build -o /Users/dozenx/Documents/workspace-go/douyin-live-go/__debug_bin -gcflags all=-N -l ./main.go# command-line-arguments./main.go:33:8: undefined: MsgList
./main.go:34:31: undefined: MsgList
./main.go:35:6: undefined: MsgList (exit status 2)
为什么
lunch.json为
{// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"name": "Launch","type": "go","request": "launch","mode": "auto","program": "${workspaceRoot}/main.go","env": {},"args": [],}]}
room.go里有个变量
import ("container/list")
var MsgList = list.New()
在main.go的方法里调用到了MsgList变量
for {
if MsgList.Len() == 0 {
msg := fmt.Sprintf("%v", MsgList.Front().Value)
MsgList.Remove(MsgList.Front())
if err = c.WriteMessage(1, []byte(msg)); err != nil {
return
}break
}
}
用 go run . 跑没有问题 但是用vscode debug 报错
Build Error: go build -o /Users/dozenx/Documents/workspace-go/douyin-live-go/__debug_bin -gcflags all=-N -l ./main.go# command-line-arguments./main.go:33:8: undefined: MsgList
./main.go:34:31: undefined: MsgList
./main.go:35:6: undefined: MsgList (exit status 2)
为什么
lunch.json为
{// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"name": "Launch","type": "go","request": "launch","mode": "auto","program": "${workspaceRoot}/main.go","env": {},"args": [],}]}