CppCon 2019: Jason Turner “The Best Parts of C++"

  Рет қаралды 92,450

CppCon

CppCon

Күн бұрын

Пікірлер
@dmdjt
@dmdjt 5 жыл бұрын
A talk like this should exist for every language!
@joestevenson5568
@joestevenson5568 4 жыл бұрын
CPPCon belongs in the list of best parts of C++
@pythagorasaurusrex9853
@pythagorasaurusrex9853 3 жыл бұрын
Cudos to Jason. He delivers the best talks of them all. Fun and interesting to watch. Never got bored.
@projectivemotion
@projectivemotion 5 жыл бұрын
I'm returning to C++ after 15 years of living in PHP and this video explains so many things! Thanks!
@RoyBellingan
@RoyBellingan 4 жыл бұрын
Similar story, Wasted so many year. Nice to hear you founded again the right path!
@ЮрийШпорхун
@ЮрийШпорхун 3 жыл бұрын
I don't like C++ (my personal prejudices) but even I can agree that this is the right path =)
@stephenhowe4107
@stephenhowe4107 2 жыл бұрын
PHP-land? Shudder!!!!
@icemojo
@icemojo 2 жыл бұрын
Same here too. Going back to the fundamentals of C++ after living comfortably in the luxury of OO languages for more than 12 years, talks like these brings me both revelations and comfort. And also a small does of anxiety from realizing that I have a LOT to catch up on.
@ngideo
@ngideo 9 ай бұрын
0:00 preface 1:06 overview *The Best Parts of C++* 02:01 #01: The C++ Standard 03:37 #02: `const` 05:28 #03: Deterministic Object Lifetime and Destruction 07:44 #04: `template`s 09:46 #05: Algorithms and the Standard Template Library 12:28 #06: `std::array` 14:50 #07: List Initialization 16:29 #08: Variadic Templates 17:57 #09: `constexpr` 19:01 #10: `auto` 21:56 #11: Return type deduction for normal functions 23:26 #12: Lambdas 26:10 #13: Generic and Variadic Lambdas 26:48 #14: Range-based `for` loop 28:40 #15: Structured Bindings 30:02 #16: Concepts 33:40 #17: `std::string_view` 35:29 #18: Text Formatting 37:42 #19: Ranges 39:40 #20: Class Template Argument Deduction 41:06 #21: rvalue References 43:20 #22: Guaranteed Copy Elision 46:44 #23: Defaulted and Deleted Functions 49:17 #24: `std::unique_ptr` and `std::make_unique` 50:27 #25: Fold Expressions 53:39 Key C++98 Features 53:51 Key C++11 Features 54:08 Key C++14 Features 54:21 Key C++17 Features 54:28 Key C++20 Features 54:36 Bonus Feature: Tools! 56:00 summary 57:11 question
@TheMR-777
@TheMR-777 2 жыл бұрын
This is the 1st Time I've heard a 1hr talk on C++Con! Thanks, Jason! For your awesome content, and great way of presentation!
@CppCon
@CppCon 2 жыл бұрын
Glad you liked it!
@davidm.johnston8994
@davidm.johnston8994 4 жыл бұрын
Just starting to learn C++ here. This video gave me a headache, but it was worth it! Thanks
@CppCon
@CppCon 3 жыл бұрын
Glad it helped!
@ChrisCox-wv7oo
@ChrisCox-wv7oo 2 жыл бұрын
Missing / Skipped Chapters... 33:19 #16 Concepts 35:06 #17 std:: string_view
@scotthinton4610
@scotthinton4610 Жыл бұрын
After finally being able to use C++11 for a couple of years, I have no desire at all to go back to C++98/03. Great talk, I'm now using most of these without even thinking about how I would have had to do it (if I even could) in 98/03.
@xdavidliu
@xdavidliu 2 жыл бұрын
24:08 interesting how the audience member suggested "a functor" due to the mistaken adoption of the term to mean "function object" only in the context of C++, and Jason either wasn't aware of that historical accident (or was aware but was making a joke) and assumed the audience member was talking about the functor of category theory
@devnexen
@devnexen 5 жыл бұрын
"Who here is stuck on C++98 ..." I feel you :-)
@AxayJha
@AxayJha 4 жыл бұрын
This talk is genuinely awesome and loaded!
@user-0j27M_JSs
@user-0j27M_JSs 2 күн бұрын
At 5:11 a sentence "An object declared `const` or accessed via a `const` reference or a `const` pointer cannot be modified" is actually incorrect for its last part. A `const` pointer cannot be modified, but the object that this `const` pointer points to **can** be modified if it points to a non-const object!
@adrianstaniec
@adrianstaniec 5 жыл бұрын
Amazing talk! Unbelievably informative and concise, which is so rare nowadays.
@not_ever
@not_ever 4 жыл бұрын
22/7 = 3
@naughtiusmaximus110
@naughtiusmaximus110 5 жыл бұрын
Jason Turner you are my hero!
@dexxpredwarior9033
@dexxpredwarior9033 4 жыл бұрын
Mine too!
@victorshcherbakov4602
@victorshcherbakov4602 Жыл бұрын
Thanks Jason for the talk, it's pretty awesome, you covered a lot of parts of the language.
@saeed6296
@saeed6296 4 жыл бұрын
I don't get it why the code in 10:22 is wrong ? can someone please tell me why ?
@Dave_thenerd
@Dave_thenerd 3 жыл бұрын
If you don't explicitly delete the default move and copy constructors, the copy assignment op, and move assignment op here, you can reassign the Data object to point to something else without explicitly calling the destructor because Data contains a member of type *T (pointer to a template object) in this case: *data So you could write: int main() { Data x(1, 2, 8, 10, 11); Data y(a, b, c); x = y; //Major memory leak, original values from 'x' still exist because '*data' is a pointer }
@xdavidliu
@xdavidliu 2 жыл бұрын
24:55 in line 11 it needs to be "&value) const {" instead of "&value) {", otherwise line 24 won't compile
@sinanlin7471
@sinanlin7471 4 жыл бұрын
amazing! I appreciate your nice work!
@zxnnightstalker2289
@zxnnightstalker2289 3 жыл бұрын
Other languages should have like this channel.
@IndellableHatesHandles
@IndellableHatesHandles Жыл бұрын
22/7 = 3 because of integer division
@IndellableHatesHandles
@IndellableHatesHandles Жыл бұрын
Called it
@robert36902
@robert36902 2 жыл бұрын
Great presentation!
@CppCon
@CppCon 2 жыл бұрын
Glad you liked it!
@simonfarre4907
@simonfarre4907 3 жыл бұрын
For some odd reason MSVC still can't do auto in function params, while last time I tried on clang it worked just fine. Very annoying.
@gongchen8
@gongchen8 Жыл бұрын
Thanks, very useful.
@haxpor
@haxpor 5 жыл бұрын
For double free problem, only occurs if I disable RVO via compilation flag. At least, I tested it with gcc 9.1. Good summary on features we can use :)
@__hannibaal__
@__hannibaal__ 2 жыл бұрын
For me best book that i learn moor feature is Bjarn C++ Book and Stepanov paper and books. And don’t need more because will speed too much time for some thing and without efficiency >>>.
@SillySussySally
@SillySussySally 4 жыл бұрын
Love this video
@rontman
@rontman 5 жыл бұрын
C++ The Good Parts
@imlovinit1232
@imlovinit1232 2 жыл бұрын
Im sure there are few who agree with me, but auto is not a good habit in my opinion. Any type/class should never be long enough to use it for readability, and in general it just destroys readability.
@pedromiguelareias
@pedromiguelareias 3 жыл бұрын
Solutions to problems created by solutions to problems created by solutions to problems. Just avoid sugar. It's the root of all evil, that's why Fortran survives.
@xequals-pc1wl
@xequals-pc1wl 2 жыл бұрын
As does C.
@bocckoka
@bocckoka 3 жыл бұрын
'some types can be ugly' - most clueless comment ever. that's the point, that's why we have type systems
@marcossidoruk8033
@marcossidoruk8033 4 ай бұрын
What the fuck?
Caleb Pressley Shows TSA How It’s Done
0:28
Barstool Sports
Рет қаралды 60 МЛН
#behindthescenes @CrissaJackson
0:11
Happy Kelli
Рет қаралды 27 МЛН
Andrew Kelley   Practical Data Oriented Design (DoD)
46:40
ChimiChanga
Рет қаралды 153 М.
Bob Nystrom - Is There More to Game Architecture than ECS?
23:06
Roguelike Celebration
Рет қаралды 212 М.
C++ Weekly - Ep 125 - The Optimal Way To Return From A Function
13:10
C++ Weekly With Jason Turner
Рет қаралды 78 М.
C++ Code Smells - Jason Turner - CppCon 2019
58:35
CppCon
Рет қаралды 79 М.
Premature Optimization
12:39
CodeAesthetic
Рет қаралды 846 М.
Clean Code is SLOW But REQUIRED? | Prime Reacts
28:22
ThePrimeTime
Рет қаралды 334 М.