我目前正在开发一些高性能、对稳定性至关重要的框架,这些框架可能会部署在 x86_64、ia64 和潜在的 ARM 平台上。到目前为止,该库是用 C 语言完成的。当前的标准是 C99,尽管我们有兴趣尝试 C11 的特性。
最初,选择避免使用 C++ 是因为我们希望阻止开发人员使用类,因为它们固有的低效率,例如更大的内存占用、vtables 和继承。我们还希望结构没有成员函数。换句话说,故意选择 C 而不是 C++,以防止使用 C++ 中的某些功能。
然而,在进一步研究了 C++ 的一些特性之后,我们最近做了一个双重考虑。它当然似乎有一些好处,主要是类型安全和泛型。
我想知道的是:
1-这种类型安全对程序员和编译器究竟意味着什么?
2- C++ 的类型安全有什么好处,我们如何避免使用 C 进行不安全类型的陷阱?