【发布时间】:2011-03-05 01:33:30
【问题描述】:
我需要为一个学校项目编写一个 Linux shell。我们可以使用 C 或 C++。我对 C++ 更熟悉一点,而且由于我与合作伙伴一起工作,因此它的面向对象方面很有帮助。但是,我怀疑由于某种原因 C 更好,而且大多数(如果不是全部)Linux shell 都是用 C 而不是 C++ 编写的。使用其中一种的优缺点是什么?
【问题讨论】:
-
对于这样的项目,我倾向于说哪个你更舒服
-
这是一个非常主观的问题,因为您应该使用您和您的伴侣最喜欢的任何东西。几乎所有(如果不是全部)Unix/Linux shell 都是用 C 编写的一个原因是因为符合 POSIX 的系统保证系统上存在 libc(标准 C 库)(并且因为许多 shell 基于编写的旧 shell在原始 Unix 时代),而不能保证运行已编译的 C++ 代码所必需的标准 C++ 库。
-
大多数 Linux shell 使用 C 编写的原因是因为它们是多年前编写的,那时 C++ 还没有流行甚至存在。
标签: c++ c linux shell programming-languages