gpt4 book ai didi

c++ 库可以在 c 中运行吗?

转载 作者:太空宇宙 更新时间:2023-11-04 03:01:51 25 4
gpt4 key购买 nike

如果这是一个基本问题,我很抱歉(我是 c/c++ 的新手,但我对如何获得答案有点困惑。stxxl 是一个 c++ 库,但我的一些代码是在 c 中。我知道 c++ 可以使用 c 代码(我的 c 代码嵌入在 c++ 中),但它是否可以反过来工作,以便 c 可以运行 c++ 代码?

他们的网站只提到了 c++,但我想知道是否可以做一些特别的事情来在 c 中运行 c++ 库?

抱歉,我读过的书都在谈论在 C++ 中使用 C 代码,而我读的 C 书是在 C++ 出现之前写的。现在我的 c 函数正在将数据发送到使用 c++ 库的 c++ 代码,然后将结果发回,所以我想如果我切断中间人 (c++),我想测试性能。

最佳答案

只有当 C++ 库被设计为从 C 中使用时,您才能从 C 链接到 C++ 库。具体来说,库提供的函数需要使用 extern "C"{} block 以避免名称混淆,并且接口(interface)的设计方式应该可以从普通 C 中使用(即没有类或成员函数,只有无功能的结构和普通函数)。

值得一提的是,您可以使用 C++ 编译器编译您的 C 代码,并且大部分情况下都可以。这让您可以假装您的 C 代码是 C++ 代码,并自由混合通过 C++ 提供的功能 - 特定接口(interface)。

关于c++ 库可以在 c 中运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10645273/

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