我想把我的编程视野扩展到Linux。一个好的、可靠的基本工具集很重要,还有什么比IDE更基本呢?

我可以找到这些SO主题:

轻量级IDE linux和 你使用什么工具来开发 Linux上的c++应用程序?

我并不是在寻找轻量级IDE。如果一个IDE值那么多钱,我就会为它付费,所以它不一定是免费的。

我的问题是:

Linux有什么好的c++编程IDE ?

最小值是相当标准的:语法高亮显示、代码完成(如智能感知或其Eclipse对应版本)和集成调试(例如basic 断点)。

我自己也搜索过,但是有太多了,几乎不可能手工区分好的和坏的,特别是对于像我这样在Linux中几乎没有c++编程经验的人来说。我知道Eclipse支持c++,而且我真的很喜欢Java的IDE,但是它对c++有什么好处吗?还有更好的吗?

第二篇文章实际上有一些很好的建议,但我遗漏的是,究竟是什么让建议的IDE对用户这么好,它的(缺点)优势是什么?

也许我的问题应该是:

根据您的经验,您建议使用哪种IDE,为什么?


当前回答

Konrad的建议非常棒,在经典的vi/cc/ld/db/make环境中,你应该可以轻松高效地工作。很多很多大学生在10-15周的课程中学习了这个工具链。

也就是说,另一个经典环境是走Emacs路线。我不会将其称为IDE,但它确实将两个重要的开发工具集成到编辑器中:编译器的输出和调试器。您可以让它压缩到文件中与编译器错误对应的行,您可以设置断点并从编辑器中使用步进。

其他回答

Code::Blocks很棒。

然后我注意到这根本不是你在那里工作的方式*,我把所有东西都扔了,花了几天时间阅读手册,设置我的shell (bash),设置一个GVIM环境,学习GCC/binutils工具链,make和gdb,从此过上了幸福的生活。

我在很大程度上同意这个观点,但问题也是一种认知:我们忘记了在任何选择的IDE(或其他环境)中变得高效是多么困难。我发现IDE (Visual Studio, NetBeans, Eclipse)在很多方面都非常麻烦。

作为一个老UNIX用户,我总是使用Emacs。但这是相当陡峭的 而且学习曲线很长,所以我不确定我能不能把它推荐给新人。

我同意;在Linux和MSW (XP2,W2K)上使用Emacs作为我的主要编辑器。 我不同意它有陡峭的学习曲线,但可以说,因为大量的功能,它有一个很长的学习曲线。你可以在短时间内变得富有成效,但如果你愿意,你可以在未来几年学习它的新功能。

但是,不要指望Emacs的所有功能都可以在下拉菜单中找到,因为下拉菜单中有太多的功能。

正如我提到的,我已经在MSW上使用GNU Emacs很多年了。在我“升级”到2008年之前,它总是能很好地与Visual Studio一起工作;现在,在从磁盘刷新文件之前,它有时会延迟许多秒。在VS窗口中编辑的主要原因是“智能感知”代码完成功能。

Checkout Netbeans,它是用Java写的,所以不管你的操作系统是什么,你都有相同的环境,它支持的不仅仅是c++。

我不会试图说服你,因为我认为ide可以是一个非常个人的选择。对我来说,它快速地提高了我的工作效率,支持我编写代码的语言,并具有您期望从IDE中获得的标准功能。

对我来说,Ultimate++似乎是编写跨操作系统程序的最佳解决方案

块代码: Eclipse CDT

很快您就会发现ide是不够的,无论如何您都必须学习GCC工具链(这并不难,至少要学习基本功能)。但在我看来,使用ide减少过渡痛苦并没有坏处。