可以看到正确输出了分词。
中华人民共和国国家主席于今年10月对美国进行了访问。 Segment status : 0 中华 人民 共和国 国家 主席 于 今年 10 月 对 美国 进行 了 访问 总结及扩展阅读本文第二部分简述了Go如何通过Cgo调用C接口,其他细节可以参考Cgo文档。本文第二部分简述了SWIG的使用,及SWIG的Go特性,详细内容可以参考SWIG文档及SWIG文档中关于Go的部分。第三部分是一个示例工程,用来测试实际使用中用到的特性,l2.cpp的实现在下面给出,可以手动生成libl2.so来进行测试,但测试编译go模块的时候,需要将l2.cpp从$GOPATH/src/compare_length/目录中移出,否侧Cgo会自动编译它。第四部分是在实际工程中的使用。
#include <vector> #include <math.h> #include "l2.h" using namespace std; int l2(const vector<int>& elements) { int sum = 0; for (vector<int>::const_iterator iter = elements.begin(); iter != elements.end(); iter++) { sum += (*iter) * (*iter); } float sq = sqrt(sum); int l2 = (int)sq; return l2; }通过下面命令可以生成用来测试的libl2.so。
g++ -g -o libl2.so -shared -fPIC -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H l2.cpp