C++


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.

Advantages

  • 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)

Disadvantages

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

Components

 

  • 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 :)

Versions

  • C++98 (ISO/IEC 14882:1998)
  • C++03 (ISO/IEC 14882:2003)
  • C++07/TR1 (ISO/IEC TR 19768:2007)
  • C++11 (ISO/IEC 14882:2011)
  • C++14 (ISO/IEC 14882:2014)

 


Have a project in mind?

Get in touch with us for your C++ development needs!