Here are some C++ videos from Microsoft’s Channel 9 site. The descriptions have been copied from Channel 9 for your convenience.
- All of the sessions are online.
- C++ A General Purpose Language and Library (7 parts)
Attention developers! Here’s a painless way to learn the basics of C++ from the ground up, whether you’re updating legacy code or writing brand new, efficient, high-performance code for new platforms, like phones, and want to take advantage of C++. You’ll learn the fundamentals of the C++ language, how to use the language and its Standard Library effectively, and how to use the Visual Studio environment for developing C++, including debugging, exploring code, and understanding error messages. This is your starting point for building software in C++.
- C9 Lectures: Stephan T. Lavavej – Core C++ (10 parts)
Stephan T. Lavavej, aka STL, is back on C9! This time, STL will take us on a journey of discovery within the exciting world of Core C++ (standard C++, the core language). We know lots of folks are either coming back to C++, coming to C++, or have never left C++. This lecture series, in n parts, is for all of you! Only STL can make that work (novice, intermediate, and advanced all bundled together and presented in a way that’s appropriate for all).
- C9 Lectures: Stephan T. Lavavej – Standard Template Library (STL) (10 parts)
Learn all about the Standard Template Library (STL) from the great Stephan T. Lavavej (STL), Microsoft’s keeper of the STL cloth (this means he manages the partnership with the owners of STL and Microsoft, including, of course, bug fixes and enhancements to the STL that ships as part of Visual C++).
- C9 Lectures: Stephan T Lavavej – Advanced STL (6 parts)
As promised, the great Stephan T. Lavavej is back! Smiley Tens of thousands of you have watched STL’s (those are his initials, so that’s what we call him) introductory series on the STL, or Standard Template Library. If you haven’t, you should. This series, Advanced STL, will cover the gory details of the STL’s implementation -> you will therefore need to be versed in the basics of STL, competent in C++ (of course), and able to pay attention!
- Scott Meyers, Andrei Alexandrescu and Herb Sutter: C++ and Beyond
I was able to attend C++ and Beyond 2011 and it was a tremendous experience. The technical depth and C++ goodness was profound and lasted for 3 whole days (and two evenings). Thanks Andrei Alexandrescu, Scott Meyers and Herb Sutter for allowing me to crash your affair with my camera – which was perhaps too big and too advanced for the likes of me – still, I was abe to capture some great content, the first of which is this one: a C9 conversation with Scott, Andrei and Herb about C++ and beyond…
- A Concept Design for C++
C++ does not provide facilities for directly expressing what a function template requires of its set of parameters. This is a problem that manifests itself as poor error messages, obscure bugs, lack of proper overloading, poor specification of interfaces, and maintenance problems.
Many have tried to remedy this (in many languages) by adding sets of requirements, commonly known as “concepts.” Many of these efforts, notably the C++0x concept design, have run into trouble by focusing on the design of language features.
This talk presents the results of an effort to first focus on the design of concepts and their use; Only secondarily, we look at the design of language features to support the resulting concepts. We describe the problem, our approach to a solution, give examples of concepts for the STL algorithms and containers, and finally show an initial design of language features. We also show how we use a library implementation to test our design.
So far, this effort has involved more than a dozen people, including the father of the STL, Alex Stepanov, but we still consider it research in progress rather than a final design. This design has far fewer concepts than the C++0x design and far simpler language support. The design is mathematically well founded and contains extensive semantic specifications (axioms).
- Stephan T. Lavavej: Everything you ever wanted to know about
In C++, 0 is an abused integer. It is used to reflect, well, 0 as a value of type int and it is also used to represent a null pointer… The latter has led to many bugs and confusion over the past 30 years. Put simply, using 0 is and has always been a bad idea (then there’s the
NULLmacro…). Well, my friends, today, with the release of Visual Studio 2010 Beta 2 and the updated C++ language, compilers and libraries that come with it, the abuse of 0 comes to an end: Introducing
nullptrthe rvalue constant that actually is a null pointer literal.
Who better to dig deep into
nullptr(and a few other topics of related interest and importance) than the great and gifted Stephan T. Lavavej? Stephen is a C++ expert and library author who you’ve met before a few times on C9. Sit back, relax and learn everything you ever wanted to know about
nullptr. Thank you, Stephen, for the awesome lesson!
- STL: Some Underlying Algorithms, Data Structures, and More with Stephan T. Lavavej
With the recent release of Visual Studio 2010, I figured it was time to learn a thing or two about some new native functionality, specifically in the STL (Standard Template Library) that ships with VS 2010.
Who better to dig into some STL internals than the great Stephan T. Lavavej? Stephan spends most of his time maintaining the STL (along with the core producers of the library, who last I heard work from a remote location in Hawaii…). Stephan is no stranger to those of us who spend time in the native programming world (and use C++, specifically, to compose), and you’ve already met Stephan a few times on C9.
As always, this conversation just happened. Stephan and I didn’t draft up some highly structured and scripted plan. Spontaneity is always our goal, and we met that goal here! So, if you are interested in STL internals and C++ in general, then this is for you.
Windows Specific Topics
- STL Iterator Debugging and Secure SCL
Here, VC++ Software Engineer Stephan T. Lavavej digs into the details of STL Iterator Debugging including its implementation, usage scenarios and interesting facts you may not find anywhere else (Channel 9 goodness). Stephan is known as STL (this is his name’s acronym, by coincidence or perhaps it’s simply prophetic since Stephan is a passionate advocate for STL, as you will no doubt understand after watching and listening to this conversation). Stephan also dives a bit into Secure SCL, which is part of the VC++ Safe Libraries.
Stephan does not possess a marketing bone in his body as you can tell by his commentary that’s weaved into his informal presentation of advanced topics. I love this. He speaks his mind freely, though with fairness, and that’s the only way to be.
- VC 10: Stephan T. Lavavej and Damien Watkins – Inside STL
Visual Studio 2010 Beta 1 introduces a number of exciting new features for the C++ developer as we include a selection of goodies from the upcoming C++0x Standard. We have already heard about many of the language improvements (auto, decltype, lambdas, rvalue references, …) all of which can be put to good use when using the Standard Template Library (STL). Here, Visual C++ team members who work on the STL – Stephan (Dev), Damien (PM) and a cameo appearance by Usman (QA) – Usman works in our Canadian Development Center and unfortunately could not be onsite for the video – tell us all about the latest version of STL. We talk about how the language features are enabling many improvements to the STL, with performance being a big beneficiary. To realize these benefits we needed to update our STL implementation to leverage these new techniques, for example adding “move” semantics to STL containers. Additionally when users of our STL implementation add “move” semantics to their types that they store in our STL containers then we hook into these as well.
- C9 Lectures: Jim Radigan – Inside Auto-Vectorization
Auto-vectorization is a powerful compiler feature that ships in Visual Studio 2012. It’s the result of outstanding engineering by a few folks on the Microsoft Visual C++ compiler team. It’s an evolving technology, of course. The engineering leader of this team is Jim Radigan. Fortunately for us, Jim has agreed to do a series of C9 lectures digging into the nuts and bolts of this powerful compiler technology. Thank you, Jim!
- C9 Lectures: Mahmoud Saleh – Advanced CRT (2 parts)
You first met Mahmoud Saleh in an episode of C9::GoingNative covering CRT (C Run-time Library). Mahmoud is the keeper of the CRT(C Run-time Library) at Microsoft, working on the VC++ team as a software engineer. The information presented in that GoingNative episode was introductory in nature and as we expected you asked for more advanced treatment of this important subject matter. Well, being the kind person that he is, Mahmoud agreed to do a full lecture covering advanced topics related to CRT.