【问题标题】:changing a c program to a c++ program - compile errors [closed]将c程序更改为c ++程序-编译错误[关闭]
【发布时间】:2018-10-18 03:52:56
【问题描述】:

我正在使用RabbitMQ C library。它是用 C 语言编写的并使用 CMake。我正在使用基本的 amqp_sendstring 客户端示例。我的问题是我需要集成一些c++代码来使用opencv拍照。是否可以甚至建议将示例客户端更改为 .cpp 文件并包含我的 c++ 代码。我已经尝试过了,我得到了很多编译错误。

【问题讨论】:

  • 如果它是一个示例客户端,当然,如果需要,继续将其移植到 C++。这是一种不同的语言,所以这将是一些工作。不要尝试转换 library。如果您包含 C++ 代码,这将是一个更好的问题,显示您遇到问题的确切位置。
  • 离题?真的吗?

标签: c++ c opencv rabbitmq


【解决方案1】:

您可以使用 g++ 编译您的代码,将您的 C 库导入为 extern "C" {}。

相反,将 C++ 代码导入您的 C 代码并使用 gcc 编译它可能非常困难,甚至是不可能的,因为您的 C++ 库可能包含特定的 C++ 内容,例如类、模板等...

【讨论】:

  • C 库可以包含 C 特定的东西。在任何一个方向上都不太可能很好地工作。
  • 显然,完美的解决方案是包含 C 代码的 C,但据我了解,问题是将 C 代码包含到 C++ 代码中,这是可能的(甚至很常见,例如使用 gtest 工具测试您的 C 代码)。然而,另一种方式(C 中的 C++)是一种嵌合体。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-03
  • 2016-06-01
  • 2017-02-19
  • 1970-01-01
相关资源
最近更新 更多