C++ is one of the most popular programming languages in the world and was created by Bjarne Stroustrup.
Unlike some other languages that have only one official compiler there are a number of different implementations of C++ available. A few of the better known ones:
- Microsoft Visual C++ Compiler – A free compiler from Microsoft which can be used as a stand-alone or integrated with Microsoft’s product line including Visual Studio and Visual Studio Code.
- Clang / LLVM – A free and open source compiler, Clang is the front-end for the LLVM back-end, neither of which is C++ specific.
- GNU Compiler Collection (GCC) – The best known free and open source C++ compiler, it has long been the standard on non-Windows operating systems although Clang / LLVM has begun to encroach on GCC’s territory. Again, not limited to C++ only.
These are the three main options that are available. However it is worth noting a few other common ways you may see C++ compilers referenced:
- Cygwin – Implements many *nix tools, including GCC, on Windows.
- MinGW – Also implements many *nix tools, including GCC, on Windows.
- Note: This one hasn’t been updated since 2013 but is still popular.
- Mingw-w64 – Forked from MinGW in 2007 and continues to release new versions for 32-bit and 64-bit architectures.
- Xcode – A set of development tools which includes LLVM to provide C++ compilation.
If you want to learn about even more options here are some places to look.
- The C++ section of Wikipedia’s List of Compilers article.
- Bjarne Stroustrup’s C++ Compilers article.
- TheFreeCountry’s list of free C / C++ compilers and interpreters.
Integrated Development Environments (IDEs)
There are a number of IDEs available for C++, we’ll cover only a few of the most popular.
- JetBrains’ CLion – For both C and C++, cross-platform. – $
- Microsoft’s Visual Studio with C++ – A full-featured version is available for free, there are also professional and enterprise levels which cost.
- Microsoft’s Visual Studio Code – Completely free and open source, VSC has taken the development world by storm and supports C++ along with many other languages.
- Eclipse C/C++ Development Tooling (CDT) – A free and open source IDE for C/C++ built on top of the popular Eclipse IDE.
- NetBeans IDE – A free and open source IDE which includes tooling for C/C++.
- Code::Blocks – Another popular IDE which supports C/C++.
- CodeLite – Free, open source C/C++, PHP, and Node IDE.
For more comprehensive coverage of C++ IDE options see the following:
- Davide Coppola. “Market share of the most used C/C++ IDEs in 2018, statistics and estimates.” 2/2018.
For other articles which provide an overview of C++ see the following: