c++ - 是否可以将 C++ 实现为带有宏的 C 库?

标签 c++ c macros

<分区>

理论上是否可以使用带有正确宏的 C 库来实现 C++ 关键字、类语法等? (即准备一个可以使用 C 编译器编译任何 C++ 代码的库)。我想答案很可能是“不”,但我想知道你是否能证明这一点。

最佳答案

C 没有函数重载,但 C++ 有。

在我看来,用 C 编译这个简单的 C++ 代码可能是不可能的:

bool Add(int a, int b);
bool Add(string a, string b);

(两个重载函数:同名,不同参数,不同实现)

C 会报告类似于“重新定义现有函数”的错误。
C++ 可以毫无问题地编译它。

关于c++ - 是否可以将 C++ 实现为带有宏的 C 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36753431/

相关文章:

macros - 为什么 define-values 没有绑定(bind)在带有#lang racket/base 的 Racket 宏中?

c++ - 如何检测强度梯度方向

c++ - 我可以将 MSVCRT 静态链接到 mingw 吗?

c++ - 可以禁用使用 SetWindowsHookEx 运行时创建的 Hook 吗?

c - 当我使用句子时,我无法将元素连接到字符串

c - 警告 : comparison between pointer and integer, 赋值从指针生成整数而不进行强制转换?

c++ - 我可以注释多行宏吗?

c++ - 在 msgbox 中显示当前系统时间

c - 登录 C 的问题

javascript - 有哪些学习如何实现方案宏的好资源?