c++ golang

golang怎么调用c++库

小亿
347
2023-10-20 03:10:45
栏目: 编程语言

要在Golang中调用C++库,你需要使用CGo,它是Golang与C/C++代码交互的一种方式。下面是一个简单的示例,展示了如何调用一个C++库:

首先,创建一个名为example.cpp的C++源文件,其中包含需要调用的函数:

#include <iostream>
extern "C" {
int add(int a, int b) {
return a + b;
}
}

在这个例子中,我们定义了一个简单的函数add,将两个整数相加,并返回结果。

然后,创建一个名为example.go的Golang源文件,用于调用C++库:

package main
// #cgo CXXFLAGS: -std=c++11
// #cgo LDFLAGS: -L. -lstdc++
// #include "example.cpp"
import "C"
import "fmt"
func main() {
a, b := 3, 4
result := int(C.add(C.int(a), C.int(b)))
fmt.Printf("%d + %d = %d\n", a, b, result)
}

在这个例子中,我们使用了CGo的特殊注释来指定编译和链接选项以及要导入的C++源文件。然后,我们调用C++函数add,并打印结果。

在终端上执行以下命令来构建和运行这个示例程序:

$ go build
$ ./example

输出将会是:

3 + 4 = 7

这就是如何在Golang中调用C++库的基本步骤。请确保在编译和链接过程中提供正确的选项和路径。

0
看了该问题的人还看了