我在努力学习网络编程。我一直在学习这门语言,最近我在go语言的官方网站上开始了这教程。
到目前为止,我还停留在数据结构部分。我已经逐字逐句地复制了代码。
下面是代码:
package main
import (
"fmt"
"io/ioutil"
)
type Page struct {
Title string
Body []byte
}
func (p *Page) save() (error) {
filename := p.Title + ".txt"
return ioutil.WriteFile(filename, p.Body, 0600)
}
func loadPage(title string) (*Page, error) {
filename := title + ".txt"
body, err := ioutil.ReadFile(filename)
if err != nil {
return nil, err
}
return &Page{Title: title, Body: body}, nil
}
func main() {
p1 := &Page{Title: "TestPage", Body: []byte("WHADDUP!")}
p1.save
p2, _ := loadPage("TestPage")
fmt.Println(string(p2.Body))
}运行$ go build wiki.go给我提供了以下内容:
# command-line arguments
./main.go:30: p1.save evaluated but not used我有什么错?在我看来,除了保存到文件中的字符串外,我似乎已经逐字复制了代码。
发布于 2014-04-26 04:11:56
p1.save是一个函数,像这样写的,它什么也不做,这就是编译器对您的“警告”(但是使用Go,警告实际上是错误并防止编译)。
您可能需要的是p1.save(),与p1.save不同的是,它实际上会运行该函数。
https://stackoverflow.com/questions/23306456
复制相似问题