swig官方go Examples 源码勘误

Posted majianguo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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")

}

以上是关于swig官方go Examples 源码勘误的主要内容,如果未能解决你的问题,请参考以下文章

编写一个go gRPC的服务

用 go + swig 替换 c++

如何在 SWIG 生成的 Go 包装器中添加导入语句

通过 SWIG 从 C++ 调用 Go 回调函数

Ubuntu安装exa

Ubuntu安装exa