C++ is a general-purpose programming language that combines features of both high-level languages (allowing powerful information management) and low-level languages (permitting great control over the details of the program execution and operations). It has no memory management, which can be a disadvantage for novice programmers, but problems can easily be avoided and/or detected.


  • Allows high-level abstractions, such as object-oriented programming
  • Very high execution performance, rivaled only by assembly language
  • Very low resource usage
  • Can access virtually any software and hardware components
  • Allows the use of template functions and template classes (solved at compile-time, no performance penalty is induced)


  • Low-level capabilities often result in unintended programming errors
  • More difficult to maintain due to source code organization (headers / source)


  • Standard C++ Library (headers without an extension: iostream, fstream, algorithm, vector etc.)
  • Standard C Library (headers ending in .h: stdio.h, stdlib.h, math.h, time.h etc.)

Development tools

  • Microsoft Visual Studio
  • CodeBlocks
  • Eclipse
  • NetBeans
  • other

Most IDEs can be configured to use any compiler with a bit of extra work, the most common ones being the Visual C++ compiler, MingW, LLVM and GCC. Or, if you feel like an IDE is slowing you down, simply use a text editor and your favorite compiler 🙂

Scroll to Top