Code::Blocks is a free, open-source, cross-platform C, C++ and Fortran IDE built to meet the most demanding needs of its users. It is designed to be very extensible and fully configurable.
Finally, an IDE with all the features you need, having a consistent look, feel and operation across platforms.
Built around a plugin framework, Code::Blocks can be extended with plugins. Any kind of functionality can be added by installing/coding a plugin. For instance, compiling and debugging functionality is already provided by plugins!
We hope you enjoy using Code::Blocks!
The Code::Blocks Team
The only advantage compared to Eclipse is that CodeBlocks is much faster to load and code. However, if you want to develop big projects such as Python or Moses, forget about it. Go Visual Studio or Eclipse. Design flaws: 1. cannot display data structure in a tree view, i.e., code outline; 2. cannot change hotkeys, it uses ancient Turbo/Borland C++ hot key assignment, e.g., Ctrl+F9 to compile, you need to install addition plugin to change hotkey, this shows it is immature; 3. cannot use Ctrl+Left click to go to declaration and definition; 4. cannot navigate forward and backward using Alt+Left and Alt+Right; 5. does not support nested macro expansion; 6. closed projects is not shown in the workspace, kind of s-t-u-p-i-d. Then what is the use of the workspace; 7. during debugging, mouse hover over can display variable values only for basic types such as float/int/double, but not for STL containers (e.g., vector<string>); watch window sometimes need to be opened manually every time, kind of buggy; 8. smart indent function is not so smart: close bracket indent is not adjusted automatically; upon a newline, in some cases, indent is not auto adjusted; 9. No undo/redo history, cannot go to Nth undo/redo step in the history; 10. program's output is shown in a popup console window but is not captured in the dialog window; during debugging, when the program exits , the console window closes immediately so you cannot see when the program's output; In conclusion, it is only usable for C/C++ beginners, you can use it only for tiny projects containing one or a few source code files, such as using the old Borland/Turbo C++ for programming competitions.