swig官方go Examples 源码勘误

勘误

在官网下载页面(http://www.swig.org/download.html )下载的swigwin-3.0.12包中go示例源码有个错误(swigwin-3.0.12\Examples\go\callback)。示例callback是一个c++调用go回调函数的例子,编译下载的源码输出不正确,runme.go设置go callback,执行时仍然调用了c++回调。

caller.SetCallback(go_callback)

caller.Call()

 

 

 

 

看了下文档 23.4.7 Go Director Classes、分析了示例源码,

Gocallback.go源文件中存在如下错误

 

func (p *goCallback) Run() {

fmt.Println("GoCallback.Run")

}

 

接受者类型应该为 overwrittenMethodsOnCallback

func (p *overwrittenMethodsOnCallback) Run() {

fmt.Println("GoCallback.Run")

}

posted @ 2017-03-22 12:17  majianguo  阅读(436)  评论(0编辑  收藏  举报