std::array is an STL container that wraps around a fixed size array. It stores items contiguously in memory. In modern C++, it should be used in place of a raw array.
C++
std::vector
Std::vector is a collection type that stores data contiguously in memory, basically a dynamically sized array. It also has many methods for the access and manipulation of the data.
Function-like Entities
Function-like entities are things like function pointers, functors and lambdas. Like other entities, they can be passed around and used in interesting ways.
Standard Template Library
The standard template library provides a wide variety of containers, algorithms, and iterators for use in our C++ programs
Move Semantics
Class Templates
Class templates are the same idea as for function templates, but extended to classes. They are used by the compiler to generate more specific specialization when we use them in our code.
Exceptions
Exceptions are an error handling mechanism built into C++. They are handled through the mechanism of try and catch blocks.
Pure Virtual Functions
Pure virtual functions are functions that are not implemented in the base class but must be implemented in a concrete derived class.
Dynamic Casts
Dynamic casts allow us to transform from a base class to a derived class and perform non-polymorphic actions on it.
Polymorphism
Basically, polymorphism is a base pointer or reference managing a derived class.
Inheritance
Inheritance is a method of code reuse. It works by having a class extend another.
Overloading Logical Operators
Overriding logical operators allows us to compare and order things. Logical operators are binary operators and the same rules apply as for other binary operators.