Quiz Entry - updated: 2026.07.14
What are the main differences between C++ and C?
C++ keeps all of C but adds classes/OOP, exceptions, templates, namespaces, and the STL — it began as "C with Classes".
* C++ wraps around C: everything C can do still works, with five big features layered on top. *
C++ is a superset-in-spirit of C: ordinary C code still compiles and runs, and the new machinery sits on top.
| Feature | C | C++ |
|---|---|---|
| Paradigm | Procedural | Multi-paradigm (OOP, generic, procedural) |
| Classes | No | Yes (with inheritance, polymorphism) |
| Exception handling | No | Yes (try/catch/throw) |
| Templates | No | Yes (generic programming) |
| Namespaces | No | Yes (namespace, using) |
| Standard library | libc | STL (containers, algorithms, iterators) |
What stays the same:
- All C constructs work (loops, conditionals, pointers)
- The same basic data types
- The same low-level memory model
Tip: C++ was originally called "C with Classes" — OOP was its first and defining addition.
Go deeper:
C++ — Wikipedia — history and a full tour of the features layered on top of C.
Bjarne Stroustrup's C++ FAQ — the language's creator on why C++ is the way it is.