C++ 包括c++;C语言中的库

C++ 包括c++;C语言中的库,c++,c,boost,include,C++,C,Boost,Include,我有一个包含boost库的头文件,我需要在用C编写的源代码中包含这个头文件。可以这样做吗 谢谢不,在C程序中一般不能包含C++头。您需要将C程序可能使用的声明分离到一个单独的头中,并确保这些声明在C++中具有正确的语言链接: #ifdef __cplusplus extern "C" { #endif // C-compatible declarations here #ifdef __cplusplus } #endif 不,一般不能在C程序中包含C++头。您需要将C程序可能使用的声明分

我有一个包含boost库的头文件,我需要在用C编写的源代码中包含这个头文件。可以这样做吗


谢谢

不,在C程序中一般不能包含C++头。您需要将C程序可能使用的声明分离到一个单独的头中,并确保这些声明在C++中具有正确的语言链接:

#ifdef __cplusplus
extern "C" {
#endif

// C-compatible declarations here

#ifdef __cplusplus
}
#endif

不,一般不能在C程序中包含C++头。您需要将C程序可能使用的声明分离到一个单独的头中,并确保这些声明在C++中具有正确的语言链接:

#ifdef __cplusplus
extern "C" {
#endif

// C-compatible declarations here

#ifdef __cplusplus
}
#endif
使用适配器模式() 这篇文章已经讨论了类似的问题:)

使用适配器模式() 这篇文章已经讨论了类似的问题:)

您不能在
C
中使用库

但您可以找到许多类似和的替代方法。

您不能在
C
中使用库


<>但是你可以找到很多类似的./p>你需要在你的C++库上实现一个包装器来呈现一个你可以从C代码中调用的C API。@祖鲁,你可以确信Paul R.明白,他没有错。你需要包装它。你需要在你的C++库中实现一个包装器,以便呈现一个C API,你可以从C代码中调用。@祖鲁,你可以确信Paul R.明白,他没有错。你需要包装它。我如何包装包含诸如“β包含”的内容?@ ZuB:为C++类定义不完整类型(高级使用兼容布局的具体类),并在头文件中为需要调用的C++方法声明一个转发器。当然,这些都需要用C++实现。@祖鲁:只要按照重复的链接。Zuub:你不知道。您为您的库设计了一个与C兼容的API,并在C头中声明它。只包含C++源文件的Boost和其他C++的头文件。如何包装包含诸如“β包含”的内容?@ ZUB:为C++类定义不完整类型(高级应用的兼容布局的具体类),并在头文件中为需要调用的C++方法声明一个转发器。当然,这些都需要用C++实现。@祖鲁:只要按照重复的链接。Zuub:你不知道。您为您的库设计了一个与C兼容的API,并在C头中声明它。只包括来自C++源文件的Boost和其他C++的头文件。我认为你的Boost的URL被破坏了。我需要为卡桑德拉的C++驱动程序提供升力,没有其他方法可以使用其他的东西。@ ZUBS再次检查它。boost也是一个
C++
库的集合,可以帮助您避免编写自定义代码来解决常见问题。您不能修改它。我认为您的boost URL已被破坏。我需要为卡桑德拉的C++驱动程序提供升力,没有其他方法可以使用其他的东西。@ ZUBS再次检查它。boost也是一个
C++
库的集合,它可以帮助您避免编写自定义代码来解决常见问题,并且您不能修改它。