Other Free C/C++Development Tools
Beyond that, if you want to develop large and complex sofware systems however, you will find that other tools will make your job easier. The free development tools below have been selected for their usefulness, ease of use, and the quality of their implementation.
Memory Leak Detection:
With MemProof you can check relatively easily whether your program leaks, and more importantly where it leaks. MemProof is free, and it supports many compilers. Look it up at:
The answer is "Version Control". Off-the-shelf tools for version control
have been used on industry-grade operating systems (like UNIX) for a long
time. They have taken longer to appear on Windows.
Cross-Platform GUI (Graphical User Interface):
To develop Windows programs, you can use the "native Windows interface" (using
mostly C), or use a variety of class systems (in C++) that make you
more productive and enable the use of RAD tools (rapid application development).
The best known of the those C++ Windows GUI systems is the MFC -Microsoft
Foundation Classes (for which you will need to purchase Microsoft Visual
C++). Inprise/Borland have their own system that comes vith Borland C++ builder,
as have other vendors. All claim theirs is superior.
With the growth in popularity of alternative operating systems, you are likely to sooner or later want to capitalise on your past work by distributing your software on other platforms (Apple, UNIX, Linux, OS2, BeOs..), or to use libraries produced for another compiler system. If you have tied yourself to a proprietary GUI system, you might as well forget it.
An alternative is to use a cross-platform GUI library for development. There
are many around, proprietary and expensive (out of reach of most people in
poorer countries, and out of reach for most students), or free and open-source.
They offer C++ graphical class system which can be easily ported across operating
systems... Simply re-compile (at least this is the theory).
One of the most solid such cross-platform GUI libraries, and one with possibly fewer of the disadvantages above is WxWindows. It is free, open-source, and supports most free compilers. Check it out at:
Click on file "
Such setup sessions are usually prepared with the help of
"installer" software. There are many such systems around. One
which is simple to use is Install-Maker. Find it at
Your program is too large to fit on a floppy? Are you running out of space on your web site? Compress your executable file. It can be shrunk to between 30% and 40% of its original size. Once compressed, it will load and run just as before.
Advantages: The file will load more quickly on networks and will use less bandwidth.
Disadvantages: Your program will (under Windows) use more computer memory during execution.
One of the best is UPX, the Ultimate Packer for eXecutables. You get it for free from http://upx.sourceforge.net.
It is published as open source, works with Windows, Linux, Atari... executables. It has a good compression ratio, and does its job quickly.
Last revision: July 2001 - Maintained by email@example.com