Latest Changes

The following noteworthy changes have been made:

2022 Oct 3Revision
M.4 -- std::moveAdded section: Moved from objects will be in a valid, but possibly indeterminate state
2022 Oct 3Revision
M.3 -- Move constructors and move assignmentAdded section: Do not implement move semantics using std::swap
2022 Sep 16Revision
14.10 -- Overloading the parenthesis operatorAdded extra credit quiz questions 2 and 3
2022 Sep 15Revision
7.9 -- For statementsAdded section: The perils of `operator!=` in for-loop conditions
2022 Sep 13Revision
8.6 -- Typedefs and type aliasesAdded section on naming type aliases, made type alias names consistent with best practice
2022 Sep 12Revision
4.12 -- Introduction to type conversion and static_castAdded section: Type conversion produces a new value
2022 Sep 11Revision
4.14 -- Compile-time constants, constant expressions, and constexprRevised examples, added section: Constant folding for constant subexpressions
2022 Sep 8Revision
1.10 -- Introduction to expressionsRefactored some content and linked some related lessons
2022 Sep 8Revision
1.9 -- Introduction to literals and operatorsAdded text about nullary operators
2022 Aug 25Revision
13.6 -- Constructor member initializer listsAdded section: Initializing const member variables
2022 Aug 23Revision
2022 Aug 23Revision
10.1 -- Introduction to program-defined (user-defined) typesRevised section: Nomenclature: user-defined types vs program-defined types
2022 Aug 20Revision
20.9 -- Exception specifications and noexceptRevised section: When to use noexcept
2022 Aug 12Revision
5.6 -- Relational operators and floating point comparisonsRevised section: Floating point equality
2022 Jul 23Revision
M.8 -- Circular dependency issues with std::shared_ptr, and std::weak_ptrAdded section: Dangling pointers with std::weak_ptr
2022 Jul 21Revision
17.9 -- Multiple inheritanceAdded section: Mixins
2022 Jun 16Split
11.7 -- std::string_view (part 2)Moved some content into chapter 4
2022 Jun 16Moved
2022 Jun 16Revision
2022 Jun 16Split
4.16 -- Numeral systems (decimal, binary, hexadecimal, and octal)Refactored from literals lesson. Made lesson optional
2022 Jun 16Revision
4.15 -- LiteralsRevised content for clarity. Moved content on numeric systems and string literals to other lessons
2022 Jun 16Split
4.14 -- Compile-time constants, constant expressions, and constexprExpanded constexpr content. Added section around constant expressions
2022 Jun 16Revision
4.13 -- Const variables and symbolic constantsRevised content for clarity. Moved constexpr content to new lesson
2022 May 13Revision
4.13 -- Const variables and symbolic constantsAdded section on constexpr strings
2022 Apr 26Revision
7.16 -- std::cin and handling invalid inputChanged occurrences of `std::cin.fail()` to `!std::cin`.
2022 Apr 24New
10.11 -- Class template argument deduction (CTAD) and deduction guidesMoved CTAD from lesson 10.10 and added deduction guides section
2022 Apr 21Revision
2022 Apr 21New
2022 Apr 15New
2.3 -- Void functions (non-value returning functions)Moved some content from lesson 2.2. Added more discussion about return statements
2022 Apr 15Split
2.2 -- Function return values (value-returning functions)Moved some content of this lesson into lesson 2.3
2022 Apr 8Moved
SiteSplit chapter 9 (into 9 and 10). Previous chapters 10, 11, 12, 13 moved back.
2022 Mar 29Revision
8.14 -- Function template instantiationAdded section: Using function templates in multiple files
2022 Mar 29Moved
6.13 -- Inline functionsMoved lesson from chapter 10 to chapter 6
2022 Mar 28New
6.14 -- Constexpr and consteval functionsNew lesson: Constexpr and consteval functions
2022 Mar 27Revision
4.13 -- Const variables and symbolic constantsAdded new section: "Constant expressions"
2022 Mar 20Revision
2.5 -- Introduction to local scopeAdded section: "Out of scope" vs "going out of scope"
2022 Mar 20Revision
4.18 -- Introduction to std::string_viewAdded sections: converting std::string to std::string_view, and passing strings to functions
2022 Mar 14Revision
6.13 -- Inline functionsRewrote lesson, added section on use of inline keyword in modern C++
2022 Feb 27Revision
0.10 -- Configuring your compiler: Compiler extensionsRemoved /Za as recommended setting for Visual Studio
2022 Feb 25Revision
10.4 -- Scoped enumerations (enum classes)Added section: Easing the conversion of scoped enumerators to integers (advanced)
2022 Feb 20Revision
2022 Feb 20Revision
2022 Feb 20Revision
2022 Feb 20Feature
SiteStarted Changelog

Any web designers want to help restyle the above to make it more readable while remaining thematically consistent? Reach out via the contact form. Thanks!

guest
Your email address will not be displayed
Correction-related comments will be deleted after processing to help reduce clutter. Thanks for helping to make the site better for everyone!
Avatars from https://gravatar.com/ are connected to your provided email address.
Notify me about replies:  
34 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments