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

Поделиться
HTML-код
  • Опубликовано: 21 окт 2024

Комментарии • 44

  • @pythagorasaurusrex9853
    @pythagorasaurusrex9853 2 года назад +24

    Cudos to Jason. He delivers the best talks of them all. Fun and interesting to watch. Never got bored.

  • @dmdjt
    @dmdjt 5 лет назад +76

    A talk like this should exist for every language!

    • @joestevenson5568
      @joestevenson5568 4 года назад +19

      CPPCon belongs in the list of best parts of C++

  • @projectivemotion
    @projectivemotion 5 лет назад +43

    I'm returning to C++ after 15 years of living in PHP and this video explains so many things! Thanks!

    • @RoyBellingan
      @RoyBellingan 4 года назад +6

      Similar story, Wasted so many year. Nice to hear you founded again the right path!

    • @ЮрийШпорхун
      @ЮрийШпорхун 3 года назад +2

      I don't like C++ (my personal prejudices) but even I can agree that this is the right path =)

    • @stephenhowe4107
      @stephenhowe4107 2 года назад +1

      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.

  • @TheMR-777
    @TheMR-777 2 года назад +8

    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 года назад +4

      Glad you liked it!

  • @davidm.johnston8994
    @davidm.johnston8994 4 года назад +11

    Just starting to learn C++ here. This video gave me a headache, but it was worth it! Thanks

    • @CppCon
      @CppCon  3 года назад +9

      Glad it helped!

  • @scotthinton4610
    @scotthinton4610 11 месяцев назад

    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 года назад +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

  • @ChrisCox-wv7oo
    @ChrisCox-wv7oo 2 года назад +4

    Missing / Skipped Chapters...
    33:19 #16 Concepts
    35:06 #17 std:: string_view

  • @devnexen
    @devnexen 5 лет назад +46

    "Who here is stuck on C++98 ..." I feel you :-)

  • @naughtiusmaximus110
    @naughtiusmaximus110 5 лет назад +24

    Jason Turner you are my hero!

  • @AxayJha
    @AxayJha 4 года назад +13

    This talk is genuinely awesome and loaded!

  • @adrianstaniec
    @adrianstaniec 5 лет назад +17

    Amazing talk!
    Unbelievably informative and concise,
    which is so rare nowadays.

  • @not_ever
    @not_ever 4 года назад +15

    22/7 = 3

  • @friendlywavingrobot
    @friendlywavingrobot 7 месяцев назад

    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

  • @victorshcherbakov4602
    @victorshcherbakov4602 Год назад

    Thanks Jason for the talk, it's pretty awesome, you covered a lot of parts of the language.

  • @xdavidliu
    @xdavidliu 2 года назад +1

    24:55 in line 11 it needs to be "&value) const {" instead of "&value) {", otherwise line 24 won't compile

  • @saeed6296
    @saeed6296 4 года назад +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 года назад +10

      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
      }

  • @zxnnightstalker2289
    @zxnnightstalker2289 3 года назад +1

    Other languages should have like this channel.

  • @IndellableHatesHandles
    @IndellableHatesHandles Год назад +2

    22/7 = 3 because of integer division

  • @sinanlin7471
    @sinanlin7471 4 года назад +5

    amazing! I appreciate your nice work!

  • @gongchen8
    @gongchen8 Год назад

    Thanks, very useful.

  • @robert36902
    @robert36902 2 года назад

    Great presentation!

    • @CppCon
      @CppCon  2 года назад

      Glad you liked it!

  • @haxpor
    @haxpor 5 лет назад +1

    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 :)

  • @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.

  • @imlovinit1232
    @imlovinit1232 Год назад

    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.

  • @__hannibaal__
    @__hannibaal__ Год назад

    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 >>>.

  • @plumtreegarden8352
    @plumtreegarden8352 3 года назад +2

    To normal people he looks like a man…. To c++ programmers: a beast with horns

  • @rontman
    @rontman 5 лет назад +10

    C++ The Good Parts

  • @SillySussySally
    @SillySussySally 4 года назад

    Love this video

  • @pedromiguelareias
    @pedromiguelareias 3 года назад +6

    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.

  • @bocckoka
    @bocckoka 3 года назад +1

    'some types can be ugly' - most clueless comment ever. that's the point, that's why we have type systems