【发布时间】:2014-11-04 04:16:48
【问题描述】:
我知道我可以使用 extern "C" 东西在 C++ 项目中包含 C 方法。但是现在让我们假设我正在考虑创建一个 C++ 项目,该项目将使用大量 C 方法,这些方法来自我制作的库以及其他人/公司制作的库,其开发细节和编译规范我是根本不知道。
C 库的某些方法是否有可能无法包含在我的 C++ 项目中,其编译和配置细节未知,extern "C"?或者在使用extern "C" 的情况下,是否所有的 C 方法都必须 100% 兼容 C++ 代码?
【问题讨论】:
-
顺便说一句,C 有“功能”,而不是“方法”。
-
我遇到的唯一问题是,如果您有名称是 C++ 保留字的 C 函数,例如
class()或new()。否则它应该会按预期工作。 -
@Momergil 谁在谈论数学?
-
@Momergil 您如何看待 C 和 C++ 中的
int变量仅支持有限的位数,即使类型名称显然是“整数”的缩写形式? :) -
C++ 标准中使用的术语是函数。 C++ 根本不使用术语“方法”——甚至类内部的东西也称为成员函数。