Bjarne Stroustrup - The Essence of C++

The University of Edinburgh · 1.2M views · 2014 · 1:39:11

Open on YouTube

C, C++, Rust, Go & systems languagesUniversity lectures & coursesProgramming language designlecture

Why Stack Overflow recommends it

Stack Overflow users cite it as an authoritative source for what Stroustrup says about modern C++ style, and they use its timestamps to ask or settle questions on specific points.

Recommended by 1 people across 1 different months, 2014 to 2017.

What it is

A 2014 lecture by Bjarne Stroustrup, creator of C++, recorded at the University of Edinburgh. He lays out the core ideas of modern C++, including resource management, move semantics, avoiding raw C arrays, and using constexpr instead of template metaprogramming, followed by a Q&A.

Cited in 1 Wikipedia article, including C++.

What people said

Recommends Steve M · 2014-09 · Stack Overflow · on “Is there a more natural way to represent a matrix of T than a vector< vector< T>>?”

@Galik I down voted because of the host of problems that come along with using C arrays. They are a relic of the past and should almost never be used, according to Bjarne Stroupstrup: [this video] 1:17:40 is one place and there are other places in the video he mentions his distaste of C arrays (I recommend watching the whole video, for an understanding of modern C++ style).

Cites athos · 2015-01 · Stack Overflow · on “c++11: what is its gc interface, and how to implement?”

I was watching Bjarne Stroustrup's talk " The Essence of C++ [this video] ". In 44:26 he mentioned "C++11 specifies a GC Interface". May I ask what is the interface, and how to implement it? Any more detailed good introduction online, or some sample codes to demonstrate it pls?

Cites athos · 2015-01 · Stack Overflow · on “C++ template metaprogramming: constexpr function”

I was watching Bjarne Stroustrup's talk " The Essential C++ [this video] ". In Q&A session, on how to manage heavy template programming codes, he mentioned that: "by constack perfunction you can eliminate essentially every template metaprogramming that generates a value by writting ordinary code". The constack perfunction is just a wild guess by the sound. May I ask what is the correct term for that technology? so that I could do some follow up reading. update: just modify the title to "constexpr function".

Cites user5738920 · 2017-06 · Stack Overflow · on “"Inheriting" Move Operators?”

I was watching a Bjarne Stroustrup talk and the section was on move operators and their benefits. He mentions here [this video] that an explicit move constructor such as: Matrix(Matrix&& a) { rep = a.rep; a.rep = {}; } Is "c-style" and "cryptic". He then goes on to say that in a lot of cases, writing copy/move operators can be avoided; he provides the following example here [this video] : class Matrix { vector<double> elem; // ... matrix access... } He states that this Matrix class "inherits" resource management from vector and that the copy/move constructors are implicitly generated it. Could someone help clarify what he means by this? How would I take a Matrix object and utilize move semantics if I