gpt4 book ai didi

C++ 代码和来自 C 的对象?

转载 作者:可可西里 更新时间:2023-11-01 18:12:16 26 4
gpt4 key购买 nike

是否有直接从 C 中使用 C++ 对象的简单方法?我想将一些类从 C++ 公开到 C 或 FFI(外部函数接口(interface))。当然,我可以写这样的东西:

class Foo{
....
};

void *make_foo(...){
Foo *ptr = new Foo(..)

return static_cast<void *>(ptr);
}

..

int *foo_method1(void *fooptr, ...){
Foo *ptr = static_cast<Foo*>(fooptr);
}

但是有更简单的方法吗?

最佳答案

一般来说,这是最简单的方法。

还要记住,您还需要在所有 C“包装器”方法上使用 extern "C"

关于C++ 代码和来自 C 的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1059372/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com