package main
import (
"fmt"
)
type A struct {
C int
}
func (this *A) F() {
// this.C = 10
fmt.Println("from a.F()")
}
func (this *A) F2() {
// fmt.Println(this.C)
}
var a *A // a == nil
func main() {
a.F() // 输出from a.F()
}a.F()竟然不报错, a == nil啊
但是如果这样再调用 a.F()就会报空指针问题, 因为传到F()里面的this是nil, 不能引用C
func (this *A) F() {
this.C = 10
fmt.Println("from a.F()")
}这是个坑
为什么leanote的service可以不实例化? 因为leanote的service没有属性!!
life
life