代码之家  ›  专栏  ›  技术社区  ›  Frank

跨平台的C++ IDE?[关闭]

  •  5
  • Frank  · 技术社区  · 15 年前

    我正在寻找一个好的IDE,它具有最多或全部以下属性(第一,4个或5个是强制性的):

    1. 跨平台(至少是Mac、Linux)

    2. 当然,语法突出显示和其他基本的编码编辑器功能

      • 响应合理的图形用户界面,在中型(比如100个文件)项目上不会太慢(我的Linux和Mac电脑都有5年的历史)

      • 代码完成

      • 与集成 gdb

      • SVN集成也不错

      • 重构(在整个代码库中半自动重命名变量等)

      • 可以显示类层次结构

      • 可以向代码添加超文本样式的链接(这样您就可以单击一个函数/类名并将其带到声明中)。

      • 可以显示代码部分(可能)调用我的函数(我知道这很难做C++)所以我添加了 潜在地 )

    到目前为止,我一直在使用 Emacs 对于所有的东西,但是我认为高级的功能可以给我更多的概述和搜索功能,就像前三个功能一样。我厌倦了仅仅使用 grep find 我的代码库。

    基本上,我希望JavaIDE通常所做的大部分事情都用于C++开发。

    我懂了 Netbeans 既可以用于C++,也可以用于 Eclipse .我认为它们符合我的要求。是否有人将其用于日常编码?有什么区别?你的经历是什么? Code::Blocks 更轻,不会做上面列出的很多事情,对吗?

    注意:我不需要一个GUI生成器。

    更新: 对于要点10,我的意思是我可以给它一个函数名(例如 Foo::setValue ,它显示了这个特定函数(而不是其他同名函数,如 Bar::setValue )在我的代码库中调用。

    12 回复  |  直到 15 年前
        1
  •  7
  •   anon    15 年前

    代码::blocks执行前5个操作,它还具有类方法浏览功能(尽管不是继承显示)。这是一种比Eclipse或Netbeans轻得多的孤子,但是如果你喜欢极简的方法,那就很好了。

    总结CB与您的要求:

    1. 是的
    2. 是的
    3. 是的
    4. 是的
    5. 是的
    6. 不-但是你可以很容易地添加它
    7. 没有,但功能相似
    8. 可以从定义转到decl,反之亦然,但没有呼叫者列表

    由于您提到的所有解决方案都是免费的,所以您可以尝试所有解决方案,然后决定采用哪一种解决方案。我就是这么做的。

        2
  •  3
  •   gbjbaanb    15 年前

    除了上面提到的,还有 QTCreator 它有“快速代码导航工具”,尽管我没有使用它。

    我认为,尽管非必需的需求不是那么好,但是您可以很容易地看到使用搜索调用方法的位置!(当然,如果您有一个庞大的类层次结构,其中每个类都有相同的命名方法,那么只能怪您自己:)如果您没有以一种易于理解的方式布局类的话)

        3
  •  2
  •   Jakub Arnold    15 年前

    我建议netbeans在6.5中使用,它的IDE速度非常快,并且提供了您所有的10个需求。

        4
  •  2
  •   Jack BeNimble    15 年前

    我最近也问了这个问题。我最终选择了Eclipse和CDT插件以及Cygwin库。我对它非常满意,只是我还没有完全掌握调试器的窍门。在Debug透视图上浏览源代码的窗口非常小,因为某些原因,我还没有弄清楚如何查看数组,我想我敲掉了一个显示变量的窗口,不知道如何返回。我最终放弃了调试器的透视图,只在普通透视图中遍历调试。

    此外,我使用Eclipse作为Java,因此有助于最小化学习曲线。它可以进行重构,也可以集成SVN。

        5
  •  2
  •   amit kumar    15 年前

    基于Java的IDE(NETBeaS和Eclipse)有时有点慢。他们的主要焦点是Java。Eclipse的一个问题是很难用于小屏幕,比如笔记本电脑。我喜欢通常在vim+ctags中工作(执行grep和find的函数),当我有一些高级操作(比如比较两个目录层次结构)时,我使用eclipse。我没有使用过很多代码::块,但我听到了一些关于它的好消息。

    来自Emacs,我想你更喜欢轻而不重的东西。我会考虑将code::blocks作为一个很好的探索候选。

        6
  •  1
  •       15 年前

    代码块是开源的!!

    http://www.codeblocks.org/

        7
  •  1
  •   Kazimieras Aliulis    15 年前

    去看日蚀。如果你有一台像样的电脑,它的速度足够快,而且它的插件有最好的可能性。

        8
  •  1
  •   Hannoun Yassir    15 年前

    代码块有很多 features 检查一下! 它是免费的!

        9
  •  1
  •   Ken    15 年前

    如果您已经了解了Emacs,那么仅仅使用更多的软件包可能比学习一个全新的IDE更容易。

    例如,您可以轻松地使用emacs执行9:只需运行一次标记,然后运行m-。任何地方都可以。

    您还必须权衡IDE的特性与您丢失的特性。例如,大多数IDE往往不具有Emacs的简单宏功能或数字前缀,这通常类似于更一般的重构形式。

        10
  •  1
  •   siddhadev    15 年前

    重要的不仅仅是IDE——您可能需要能够在IDE之外构建应用程序(即持续集成)。

    考虑使用 CMake 创建构建脚本的跨平台描述。一旦您有了cmake脚本(这很简单),您就可以从它为您选择的IDE生成项目文件——Eclipse、kdevelop、Visual Studio、代码块等。

    我建议使用Eclipse作为IDE。对于如何在Eclipse中使用cmake,有几个选项。四处游玩,找到最适合你的。

    再来一次-cmake不仅是 跨平台 它也是 交叉ide . 而cmake脚本非常可读,一个简单的make文件如下:

    project(hello) 
    add_executable(hello hello.cpp)
    

    现在将其与makefiles进行比较,或者在您最喜欢的IDE中设置项目!

        11
  •  0
  •   happy coder    11 年前

    我的两分钱(没有特别的顺序…并不是所有这些选项都是C++的:

    1. QT…我的第一个高效图形用户界面构建框架
    2. Lazarus…多么酷的名字,很有成效的工具(虽然不是C++)
    3. 单体发育…我爱上C语言开发(非常像C++)
    4. 爪哇…无所不在(有点像C++)

    干杯!

        12
  •  0
  •   Arunprasad Rajkumar    11 年前

    Sublime文本编辑器是迄今为止我所见过的最好的跨平台编辑器。尝试使用它 http://www.sublimetext.com/ .它具有无限的演示周期,不会抑制任何功能。但如果你对此满意,请购买并使用它来赞扬作者。