CppCon 2014: Herb Sutter "Back to the Basics! Essentials of Modern C++ Style"
CppCon2 HN recommenders · recommended in 2 months, 2014-2021
323K views · 12 years ago · talk · dated
Herb Sutter revisits basic C++ questions in light of C++11 and C++14: how to declare and initialize variables, pass values to functions, write loops, and use smart pointers. It covers auto, rvalue references, range-for, uniform initialization, lambdas, unique_ptr and shared_ptr.
HN people list it among the go-to talks for learning or refreshing modern C++ style, and cite it for Sutter's guidance on function parameter passing.
1:29:06CppCon 2015: Herb Sutter "Writing Good C++14... By Default"
CppCon
193K views • 11 years ago
1:39:25CppCon 2016: Herb Sutter “Leak-Freedom in C++... By Default.”
CppCon
149K views • 10 years ago
1:54:00Can C++ be 10x Simpler & Safer? - Herb Sutter - CppCon 2022
CppCon
277K views • 3 years ago
1:47:45CppCon 2017: Herb Sutter “Meta: Thoughts on generative C++”
CppCon
105K views • 9 years ago
1:40:46CppCon 2015: Bjarne Stroustrup “Writing Good C++14”
CppCon
351K views • 11 years ago
1:02:33CppCon 2017: Kate Gregory “10 Core Guidelines You Need to Start Using Now”
CppCon
144K views • 9 years ago
1:33:12De-fragmenting C++: Making Exceptions and RTTI More Affordable and Usable - Herb Sutter CppCon 2019
CppCon
90K views • 7 years ago
1:19:52CppCon 2016: Jason Turner “Rich Code for Tiny Computers: A Simple Commodore 64 Game in C++17”
CppCon
264K views • 10 years ago
1:21:13C++ and Beyond 2012: Herb Sutter - atomic Weapons 1 of 2
alexsmail
71K views • 9 years ago
1:00:11CppCon 2015: Kate Gregory “Stop Teaching C"
CppCon
181K views • 11 years ago
1:36:27CppCon 2016: Dan Saks “extern c: Talking to C Programmers about C++”
CppCon
175K views • 10 years ago
59:58CppCon 2018: Nicolai Josuttis “The Nightmare of Initialization in C++”
CppCon
79K views • 8 years ago
1:15:46CppCon 2017: Matt Godbolt “What Has My Compiler Done for Me Lately? Unbolting the Compiler's Lid”
CppCon
178K views • 9 years ago
1:32:33C++ and Beyond 2012: Herb Sutter - atomic Weapons 2 of 2
alexsmail
29K views • 9 years ago
1:04:26CppCon 2018: G. Nishanov “Nano-coroutines to the Rescue! (Using Coroutines TS, of Course)”
CppCon
40K views • 8 years ago
1:04:00CppCon 2015: Sean Parent "Better Code: Data Structures"
CppCon
106K views • 11 years ago
1:00:17Stephan T. Lavavej “Floating-Point <charconv>: Making Your Code 10x Faster With C++17's Final Boss”
CppCon
41K views • 7 years ago
1:33:022013 Keynote: Chandler Carruth: Optimizing the Emergent Structures of C++
CppNow
34K views • 13 years ago
1:29:54CppCon 2015: Chandler Carruth "Tuning C++: Benchmarks, and CPUs, and Compilers! Oh My!"
CppCon
188K views • 11 years ago
1:04:33CppCon 2014: Jeff Preshing "How Ubisoft Develops Games for Multicore - Before and After C++11"
CppCon
53K views • 12 years ago
4 comments from Hacker News
ASan, UBSan, etc. are absolutely life-changing, no doubt about it. But there's a pretty big difference between catching things statically, and catching them at runtime. If you have an issue that, say, only triggers on odd-numbered Tuesdays on Windows 7, your tests suite is probably going to miss it, and ASan isn't going to be able to help you. Here's an example from one of Herb Sutter's talks, which I refer to frequently. He describes an issue that can come up with shared_ptr in reentrant/callbacky code, and the punchline is that you have to be careful never to dereference a shared_ptr that might be aliased: ▶ this video I also just wrote a giant example of my own :) in reply to your toplevel comment. link . TSan will be pretty good at catching some of the simple variants of this, like where you totally forget to take a lock. But it's going to have a hard time with cases where you "stash" a reference longer than you should, because later uses of the reference might appear safe for a while yet become unsafe down the road with unrelated code or timing changes. Another issue with ASan and UBSan, is that every application has to run them (and maintain its own test suite comprehensive enough to make them useful). With static checks, a memory-safe library is memory-safe for everyone , even for applications that aren't particularly careful with their tests. The library author is able to express their safety requirements through the language, and all callers have to respect those requir
In our 60+ team of C++ programmers, a constant theme that keeps coming up in code reviews is how a function optimally takes its parameters. There's been enough overthinking and I came across Herb Sutter's CppCon 2014 Essentials of Modern C++ Style [1] where he explains the various cases. I made a cheat sheet (1-page PDF) for quick reference of the options and when to go for them. Comments and suggestions welcome! GitHub project [2]. # Credits - Herb Sutter, other C++ experts and the community - Emacs[3] and Org-mode[4] creators - CheatSheet by Musa Al-hassy # Links [1]: ▶ this video [2]: link [3]: link [4]: link [5]: link
- Tour of C++ ( link ) - Principles and Practice Using C++ ( link ) - From Mathematics to Generic Programming ( link ) - The Scott Meyers books Some of the Bjarne Stroustrup videos, "Learning and Teaching Modern C++" - link Some of the Herb Sutter videos, "Writing Good C++14... By Default" - link "Back to the Basics! Essentials of Modern C++ Style" - ▶ this video Some of the Kate Gregory videos, "Stop Teaching C" - link "10 Core Guidelines You Need to Start Using Now" - link "It's Complicated" - link
Herb Sutter, one of the most prolific C++ experts out there, recently gave a talk on Modern C++ [1]. In the beginning of his talk, he states that every C++ developer should read a "Tour of C++" [2] by Bjarne Stroustrup, the original designer of C++. I recently read it and it's great. The book has less than 200p, but still covers the most important parts of C++11, albeit not in great detail (the reader is pointed to "The C++ Programming Language" by the same author for that). Read it! And watch the youtube video in [1]. [1] ▶ this video [2] link