CppC++ Introduction

C++ Introduction

C++ is a compiled, statically-typed, multi-paradigm programming language. It gives you the low-level control of C — raw memory, pointers, predictable performance — while adding high-level tools like classes, templates, and a rich standard library on top. That combination is why C++ has remained one of the most important languages in computing for over four decades.

A quick origin story
C++ began life in 1979 as **“C with Classes”**, an experiment by Bjarne Stroustrup at Bell Labs to add object-oriented features to C. It was renamed C++ in 1983 — the name itself is a programmer’s joke, since ++ is the increment operator in C, hinting at “one step beyond C.” We cover the full history, including every major standard from C++98 to C++23, on the next page.
What kind of language is it?
  • Compiled — source code is translated directly to native machine code ahead of time, not interpreted line by line.

  • Statically typed — variable types are checked at compile time, catching many bugs before the program ever runs.

  • Multi-paradigm — supports procedural programming (like C), object-oriented programming (classes, inheritance, polymorphism), and generic programming (templates).

  • Zero-overhead philosophy — you shouldn't pay a performance cost for a feature you don't use, and hand-written equivalents rarely beat well-written C++.

Why C++ still matters

Despite being decades old, C++ sits underneath a huge share of the software you use every day. Whenever raw speed, predictable memory behavior, or direct hardware access matters, C++ tends to be the default choice.

Domain

Examples

Game engines

Unreal Engine, most AAA game studios, physics and rendering engines

Browsers & runtimes

Chrome/Chromium (Blink), Firefox (Gecko), the V8 and Node.js internals

Operating systems

Windows kernel components, parts of macOS/iOS, device drivers

Embedded systems

Firmware for cars, robotics, IoT devices, microcontrollers

Trading & finance

Low-latency trading systems where microseconds matter

Databases

MySQL, MongoDB, and many high-performance storage engines

A first taste
Every C++ journey starts with the same tiny program. Don’t worry about understanding every symbol yet — we’ll break this exact program down line by line in the Your First Program chapter.

hello.cpp

CPP
#include <iostream>

int main() {
    std::cout << "Hello, World!" << std::endl;
    return 0;
}
Where this tutorial is headed
In the chapters ahead you’ll set up a compiler, write and run real programs, and work through syntax, control flow, functions, object-oriented programming, templates, the Standard Template Library (STL), memory management, and modern C++ features like smart pointers and move semantics.