Hackerthink logo


C++ Introduction

C++ is a statically typed, compiled, general, case-sensitive, and irregular programming language that supports procedural programming, object-oriented programming and generic programming.

C++ is considered to be an intermediate language, which combines the characteristics of high-level and low-level languages.

C++ was designed and developed by Bjarne Stroustrup in 1979 at Bell Labs in Murray Hill, New Jersey. C++ further expanded and improved the C language, originally named C with classes, and later renamed C++ in 1983.

C++ is a superset of C. In fact, any legal C program is a legal C++ program.

Note: Programming languages that use static types perform type checking at compile time, not at runtime.

Object-oriented programming

C++ fully supports object-oriented programming, including four major features of object-oriented development:

  • Package
  • abstract
  • inherit
  • Polymorphism

Standard library

Standard C++ consists of three important parts:

  • The core language provides all building blocks, including variables, data types and constants, etc.
  • The C++ standard library provides a large number of functions for manipulating files, strings, etc.
  • The Standard Template Library (STL) provides a large number of methods for manipulating data structures.

ANSI standard

The ANSI standard is to ensure the portability of C++-the code you write can be compiled on Mac, UNIX, Windows, and Alpha computers.

Since the ANSI standard has been used stably for a long time, all major C++ compiler manufacturers support the ANSI standard.

Learn C++

The key to learning C++ is to understand the concepts and not to delve too deeply into the technical details of the language.

The purpose of learning a programming language is to become a better programmer, that is, to design and implement new systems more efficiently, and to maintain old systems.

C++ supports multiple programming styles. You can use the programming style of Fortran, C, Smalltalk, etc. to write code. Each style can effectively ensure runtime efficiency and space efficiency.

Use of C++

Basically, programmers in every application field use C++.

C++ is usually used to write device drivers and other software that directly manipulates hardware that requires real-time performance.

C++ is widely used in teaching and research.

Anyone who uses an Apple computer or a Windows PC is indirectly using C++, because the main user interface of these systems is written in C++.


release time Generic name Remarks
2017 C++17 Fifth C++ Standard
2017 coroutines TS Coroutine library extension
2017 ranges TS Provide scope mechanism
2017 library fundamentals TS Standard library extension
2016 concurrency TS Extensions for concurrent computing
2015 concepts TS Concept library for optimizing compile-time information
2015 TM TS Transactional memory operations
2015 parallelism TS Extension for parallel computing
2015 filesystem TS File system
2014 C++14 The fourth C++ standard
2011 Decimal floating point expansion
2011 C++11 The third C++ standard
2010 Math function extension
2007 C++TR1 C++ Technical Report: Library Extension
2006 C++ Performance Technical Report
2003 C++03 The second C++ standard
1998 C++98 The first C++ standard