Course
Skills
C++11 Language Features
This course will provide you with detailed information about all of the changes made to the language since C++98/03.
What you'll learn
GCC 4.8 is the first version of the compiler to have complete support for all the C++ features added in the C++11 version of the standard. This course will provide you with detailed information about all of the changes made to the language since C++98/03 and their implementation in GCC.
Table of contents
C++11 Features in GCC 4.8
40mins
- Overview 4m
- auto Overview 2m
- Purpose of auto 3m
- Details of Using auto 4m
- decltype and declval 3m
- Trailing Return Types 2m
- Lambda Expressions Overview 2m
- Components of Lambda Expressions 2m
- Storing Lambdas 3m
- Referring to External Variables 2m
- Capturing in C++11 6m
- Mutable Lambdas 2m
- Other Features of Lambda Expressions 2m
- Avoiding Undefined Behavior 2m
- Rules of Thumb and Lambda Summary 2m
- Summary 1m
Templates, Classes, Initialization
47mins
- Overview 1m
- Variadic Templates 4m
- Working with Parameter Packs 5m
- More Variadic Template Features 3m
- Template Aliases 2m
- >>, Template Arguments, extern Templates 5m
- In-class Initializers for Non-static Data Members 3m
- Inheriting and Delegating Constructors 5m
- Default and Deleted Methods 4m
- override and final Keywords 2m
- Friend Declarations, Nested Classes 2m
- Uniform Initialization 4m
- initializer_list 2m
- Narrowing Conversions, Initialization Caveats 6m
- Summary 1m
Move Semantics, Perfect Forwarding, constexpr
44mins
- Overview 1m
- Move Semantics Introduction 4m
- lvalue/rvalue Revision 6m
- rvalue References 3m
- Move Semantics Implementation 6m
- std::move 1m
- Move Semantics Guidelines 4m
- Reference Qualifiers for Member Functions 2m
- Move-only Types 1m
- Perfect Forwarding 3m
- Reference Collapsing, forward and move Templates 5m
- constexpr Mechanism 2m
- constexpr Functions & Literal Types 5m
- Summary 1m
Range-based for nullptr, enums, literals, static_assert, noexcept
33mins
More Language Features, other Platforms, and The Future of C++
35mins
- Overview 1m
- Explicit Conversion Operators 1m
- Inline Namespaces 3m
- alignof, alignas, sizeof 2m
- Memory Model 2m
- Thread Local Storage 4m
- Generalized Attributes 2m
- POD Types 5m
- Changed Restrictions on Unions 4m
- C99 Compatibility, Deprecations, Removals 3m
- Writing Cross-platform Code 2m
- C++14 and Beyond 5m
- Summary 1m