about
2/21/2022
CppBites Repo
CppBites Code Repo

CppBites  Repository

Short stories and code about C++ features

Quick Status Many short bites and demos no known defects Demonstration code a few examples, more later Documentation yes Test cases NA Static library NA Build requires Rust, C++, C# installed Planned design changes Add more bites and demo code
"There are only two kinds of languages: the ones people complain about and the ones nobody uses."
- Bjarne Stroustrup

Contents:

Code List, Bite List, First Bite Software development is a complex process. To be successful one needs to know something about:
  • Platforms: how the Windows, Linux, and MacOS platforms support code that runs there.
  • Programs: basics about execution, types, functions, and structure.
  • Object Models: how code uses objects to structure its operations.
This repository links to "C++ Bites" that address key features of the C++ language. It also links to a "C++ Story" and sample code used to describe most of the C++ language you will use in practice, and address the topics, listed above, with a C++ perspective.
Each Bite takes an important basic topic, provides a relatively consise overview, and for some pages provides sample code.

Bites:

Here are the currently planned Bites. I expect some missing details will be completed in 2022 with more to follow in 2023. The ordering of these Bites may change. Ordering so that each Bite depends only on its predecessors doesn't necessary provide a good logical ordering. I'll be thinking about this as the list gets completed.

  1. C++ Track Summary Getting started with the C++ programming language

  2. Introduction What is C++: Highs & Lows

  3. Survey C++ core language and revisions supporting "modern C++"

  4. Core Model C++ core language basics

  5. Core Memory C++ use of static, stack, and native heap

  6. Core Types C++ Type basics and revisions supporting safety

  7. Core Classes Class anatomy

  8. STR code Detailed Class anatomy Example

  9. Core Templates Generic types and their uses

  10. Core STL Summary of the Standard Template Library

  11. Modern Model Revisions of the Core Model

  12. C++11 First modernization focuses on safety

  13. C++ 14 Focuses on programming convenience

  14. C++ 17 support for Template Meta Programming (TMP), convenience syntax

  15. C++ 20 type bounds, ranges, and new code structure
Some of these bites present small simple demonstration codes, and a few that are larger. All of the code fragments shown in the Bites will eventually be included, as complete programs, listed below.

Bite Demonstration Code:

  1. functions, methods, and lambdas
    • functions
      Pass arguments by value and reference, pass and return functions, use static and dynamic dispatch.
    • methods
      Demonstrate non-generic and generic methods.
  2. closures
    Demonstrates closures with copy and with move capture.

Build:

Rust code was built with Cargo from Visual Studio Code terminal and tested on Windows 10. C++ and C# code was built with Visual Studio, 2019, Community Edition.

Status:

Just startiing.
  Next Prev Pages Sections About Keys