User Tools

Site Tools


c

This is an old revision of the document!


Overview

C++ links/resources.

TO DO:

  • Constant expressions (const and constexpr) (10.4)
    • A class with a constexpr constructor is called a literal type.
  • Implicit type conversion (10.5)
  • nothrow forms of new and delete (11.2.4)
  • initializer lists

Figure out

  • namespaces
  • throw/exceptions
    • try/catch

Miscellany

  • using {} for initialization instead of =
    • catches narrowing conversions like “int a {3.14};”
  • “auto” type deduction from initializer, “auto b = true”
  • “constexpr” as long as expression really is a constant (eventually)
    • “constexpr int i = square(?)”
    • any functions invoked must also be declared as “constexpr”
  • declared size of array must be constant expression
  • range-for-statement (for any sequence of elements)
    • int v[] = {1,2,3,4,5};
    • for (auto x : v)
    • for (auto x : {1,2,3,4,5})
    • for (auto& x : v) { ++x; }
  • references in declarations
  • kinds of classes
    • concrete
    • abstract

Books

Parsers/static code checkers/beautifiers

C++ Style Guides

c.1565452360.txt.gz · Last modified: 2019/08/10 15:52 by rpjday