What is C++ and Where It's Used
Most programming courses skip straight to “here’s your first program.” Before you do that, it’s worth spending a few minutes understanding what you’ve just picked up.
If you’ve touched Python, JavaScript, or Scratch, you’ve used languages that hold your hand quite a bit. They manage memory for you and generally try to stop you from hurting yourself. The tradeoff is that they make certain decisions on your behalf, and those decisions cost speed, and sometimes control.
C++ hands those decisions back to you. You’re in charge, which is what makes it powerful and worth learning carefully.
A short history (just the useful parts)
C++ was created by Bjarne Stroustrup starting around 1979. The language has been updated several times since: C++11, C++14, C++17, C++20, and so on.
When people say “modern C++,” they usually mean C++11 and later, which added enough that it feels like a meaningfully improved language. This course teaches modern C++.
What C++ is, precisely
This is going to be a mouthful, but worth stating: C++ is a compiled, statically-typed, general-purpose programming language that gives you direct control over hardware resources.
Here’s what each part actually means:
Compiled means your code (the text you write) isn’t what runs on your computer directly. Before it runs, a program called a compiler translates your C++ into binary instructions your CPU understands.
Statically-typed means it checks the kinds of data you’re working with before your program ever runs. You’ll understand exactly what that means in Chapter 2.
General-purpose means it isn’t specialized for any particular domain. You can write a game, a scientific simulation, or an operating system. All in C++.
Where C++ is actually used
C++ shows up wherever performance, memory layout, or low-level control matters.
Game engines run on it. Unreal Engine is C++ from top to bottom. The rendering engines behind Chrome (Blink) and Firefox (Gecko) are written in C++. Performance matters enormously here as slow rendering drives users away. Many databases like MySQL have C++ at their core because they need to handle millions of queries per second.
High-frequency trading firms write in C++ because microseconds translate into money. Embedded systems used in cars, drones, medical devices, and industrial controllers run on C++ because every kilobyte of RAM matters. Audio plugins, 3D modeling software, lab simulations: C++ shows up everywhere there’s a serious need for performance or hardware control.
What you walk away with
C++ has a reputation for being a hard language. The reputation is partly earned and partly inherited from a version of the language that was rougher than today’s. You’ll learn things your previous language may have insulated you from. The payoff is that once you understand how they work, you understand computers a layer deeper, and that knowledge transfers to every other language you’ll ever write.
One more thing: the setup
To write and run C++ in the real world, you’d need a text editor and a compiler. For this course, both are built into the platform, so you can get started immediately.
A note about this platform: when you see a code snippet, feel free to edit before running it. The very first time you run a program, it’ll take a moment longer while the compiler loads in your browser.