如何快速测试C或C++代码段?

8 c c++ compiler-construction editor code-snippets

我使用Ubuntu和Eclipse作为C/C++的IDE.

我目前在Eclipse中有一个大项目.有时,我想测试一些用C/C++编写的小函数,但我不想在Eclipse中重新创建一个新项目.这是非常耗时和缓慢的.我想问一下,有没有更好的办法呢?

(过去,我通常使用来自shell的GEDIT和GCC的组合,但我真的很喜欢Eclipse中的自动完成或智能感知功能,GEDIT没有.我也尝试过Scribes,但它没有完整的像Eclipse这样的intellisense功能)

Alo*_*ave 10

使用在线编译器像Ideone键盘.
当然,他们没有为您提供自动代码完成功能和其他花哨的功能,但这是您为快速简便地检查独立功能所付出的代价.


Seb*_*ach 6

此方法无需Internet连接即可运行,无需暴露您的代码.

<ctrl>+<alt>+T                        <-- 0) opens a terminal

vi test.cc                            <-- 1) hackery
...
g++ -Wall -Wextra test.cc && ./a.out  <-- 2) compile + run
rm test.cc                            <-- 3) clean up (optional)
Run Code Online (Sandbox Code Playgroud)

替换vi为您喜欢的编辑器或cat.不能少突兀.

SciTE这样的编辑有一些非常基本的代码完成(顺便说一句:sciTE有快捷方式直接编译和运行编辑器中的代码).

顺便说一句:QtCreator提供了一些体面的"intellisense",项目文件很少.对于这样的单功能测试,单个项目文件行就足够了.


unkulunkulu指出你也可以像这样替换第2步(在你的试用文件夹中最好不Makefile要这样做;可能与现有的目标冲突):

<ctrl>+<alt>+T                  <-- 0) opens a terminal

vi test.cc                      <-- 1) hackery
...
make test && test               <-- 2) compile + run
rm test.cc                      <-- 3) clean up (optional)
Run Code Online (Sandbox Code Playgroud)

它有一个很小的缺点,就是告诉g ++关于额外的参数(比如-Wall或者-std=c++0x更突然).