Bjarne Stroustrup

The Design and Evolution of C++

Manage complexity without sacrificing speed. Bjarne Stroustrup explains the core C++ design principle of zero-overhead abstractions.

The Design and Evolution of C++
#1about 6 minutes

The origins and motivation behind creating C++

C++ was created to combine low-level system control with high-level abstraction for building complex systems like a Unix cluster.

#2about 7 minutes

Core design principles and the language evolution trilemma

C++ is guided by principles like zero-overhead abstraction and direct hardware mapping, while balancing the conflicting demands of simplification, new features, and backward compatibility.

#3about 4 minutes

How the ISO committee standardizes and evolves C++

The C++ language is evolved through a large, consensus-driven ISO committee composed of industry representatives and national bodies.

#4about 5 minutes

Guaranteed resource management using RAII and destructors

The RAII pattern uses constructors and destructors to ensure resources like memory, locks, and file handles are automatically and predictably released.

#5about 5 minutes

Core strategies for achieving high performance

C++ achieves efficiency through a compact memory model, value semantics, inlining, and moving computations to compile-time with `constexpr`.

#6about 5 minutes

Concurrency support from memory models to coroutines

C++ provides robust concurrency support through a formal memory model, threads, locks, lock-free programming, and high-level features like coroutines.

#7about 11 minutes

Evolving the type system for generic programming with concepts

C++ generic programming evolved from unconstrained templates to type-safe concepts, enabling more expressive and safer code with better error messages.

#8about 5 minutes

Faster compile times and better organization with modules

C++20 modules replace the slow and fragile header inclusion system, offering strong encapsulation and dramatically faster compilation speeds.

#9about 3 minutes

Adopting modern C++ with the core guidelines

The C++ Core Guidelines project helps developers write modern, safe, and efficient code by promoting best practices and avoiding outdated patterns.

#10about 9 minutes

Q&A on language design, Rust, and the future of C++

Bjarne Stroustrup answers audience questions about giving advice to his past self, the evolution of other languages like Rust, and his ongoing role in guiding C++.

Related jobs
Jobs that call for the skills explored in this talk.

Software Engineer

tree-IT GmbH
Bad Neustadt an der Saale, Germany

Intermediate
Senior

Featured Partners

Related Articles

View all articles
CH
Chris Heilmann
All the videos of Halfstack London 2024!
Last month was Halfstack London, a conference about the web, JavaScript and half a dozen other things. We were there to deliver a talk, but also to record all the sessions and we're happy to share them with you. It took a bit as we had to wait for th...
All the videos of Halfstack London 2024!
BR
Benjamin Ruschin
What Developers Really Need to Create Great Code Demos
Every developer on earth has, at some point, had another developer to thank for a breakthrough, a success, an aha moment they wouldn’t have had without coming across that blog post, that open-source contribution, that reply on socials or that humble ...
What Developers Really Need to Create Great Code Demos
AP
Anto Pranjić
That was WeAreDevelopers World Congress 2022
Thank you, danke, hvala, merci, gracias, Дякую – we don’t know yet exactly how many languages were spoken here at the City Cube Berlin over the last two days, but thank you 10 000 times to everybody who joined us here for WeAreDevelopers World Congre...
That was WeAreDevelopers World Congress 2022

From learning to earning

Jobs that call for the skills explored in this talk.

Rust and GoLang

Rust and GoLang

NHe4a GmbH
Karlsruhe, Germany

Remote
55-65K
Intermediate
Senior
Go
Rust
C++ Software Developer

C++ Software Developer

Stratospherec Ltd
Brighton and Hove, United Kingdom

35-42K
C++
Microsoft SQL Server
C++ Software Engineer

C++ Software Engineer

Rebel Talent
Municipality of San Cristóbal de La Laguna, Spain

QT
C++
GIT
CMake
DevOps
+3