as "cpp/language/type
alias") (C++11)  
Casts  
[ Implicit conversions ](/w/cpp/language/implicit_conversion
"cpp/language/implicit conversion") \- [ Explicit conversions
](/w/cpp/language/explicit_cast "cpp/language/explicit cast")  
[ ` static_cast ` ](/w/cpp/language/static_cast "cpp/language/static cast") \-
[ ` dynamic_cast ` ](/w/cpp/language/dynamic_cast "cpp/language/dynamic cast")  
[ ` const_cast ` ](/w/cpp/language/const_cast "cpp/language/const cast") \- [
` reinterpret_cast ` ](/w/cpp/language/reinterpret_cast
"cpp/language/reinterpret cast")  
Memory allocation  
|  [ ` new ` expression ](/w/cpp/language/new "cpp/language/new")  
---  
  
|  [ ` delete ` expression ](/w/cpp/language/delete "cpp/language/delete")  
---  
  
[ Classes ](/w/cpp/language/classes "cpp/language/classes")  
|  [ Class declaration ](/w/cpp/language/class "cpp/language/class")  
---  
[ Constructors ](/w/cpp/language/constructor "cpp/language/constructor")  
**` this ` pointer **  
  
|  [ Access specifiers ](/w/cpp/language/access "cpp/language/access")  
---  
[ ` friend ` specifier ](/w/cpp/language/friend "cpp/language/friend")  
  
Class-specific function properties  
|  [ Virtual function ](/w/cpp/language/virtual "cpp/language/virtual")  
---  
[ ` override ` specifier ](/w/cpp/language/override "cpp/language/override")
(C++11)  
[ ` final ` specifier ](/w/cpp/language/final "cpp/language/final") (C++11)  
  
|  [ ` explicit ` ](/w/cpp/language/explicit "cpp/language/explicit") (C++11)  
---  
[ ` static ` ](/w/cpp/language/static "cpp/language/static")  
  
Special member functions  
|  [ Default constructor ](/w/cpp/language/default_constructor
"cpp/language/default constructor")  
---  
[ Copy constructor ](/w/cpp/language/copy_constructor "cpp/language/copy
constructor")  
[ Move constructor ](/w/cpp/language/move_constructor "cpp/language/move
constructor") (C++11)  
  
|  [ Copy assignment ](/w/cpp/language/as_operator "cpp/language/as operator")  
---  
[ Move assignment ](/w/cpp/language/move_operator "cpp/language/move
operator") (C++11)  
[ Destructor ](/w/cpp/language/destructor "cpp/language/destructor")  
  
[ Templates ](/w/cpp/language/templates "cpp/language/templates")  
|  [ Class template ](/w/cpp/language/class_template "cpp/language/class
template")  
---  
[ Function template ](/w/cpp/language/function_template "cpp/language/function
template")  
  
|  [ Template specialization ](/w/cpp/language/template_specialization
"cpp/language/template specialization")  
---  
[ Parameter packs ](/w/cpp/language/parameter_pack "cpp/language/parameter
pack") (C++11)  
  
Miscellaneous  
|  [ Inline assembly ](/w/cpp/language/asm "cpp/language/asm")  
---  
  
|  [ History of C++ ](/w/cpp/language/history "cpp/language/history")  
---  
  
[ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/language/navbar_content&action=edit)

[ Classes ](/w/cpp/language/classes "cpp/language/classes")

General  
---  
[ Overview ](/w/cpp/language/classes "cpp/language/classes")  
[ ` class ` / ` struct ` types ](/w/cpp/language/class "cpp/language/class")  
[ ` union ` types ](/w/cpp/language/union "cpp/language/union")  
[ Injected-class-name ](/w/cpp/language/injected-class-name
"cpp/language/injected-class-name")  
Members  
[ Data members ](/w/cpp/language/data_members "cpp/language/data members")  
[ Static members ](/w/cpp/language/static "cpp/language/static")  
**The` this ` pointer **  
[ Nested classes ](/w/cpp/language/nested_types "cpp/language/nested types")  
[ Member templates ](/w/cpp/language/member_template "cpp/language/member
template")  
[ Bit-fields ](/w/cpp/language/bit_field "cpp/language/bit field")  
[ ` using ` -declarations ](/w/cpp/language/using_declaration
"cpp/language/using declaration")  
[ Member functions ](/w/cpp/language/member_functions "cpp/language/member
functions")  
[ Member access specifiers ](/w/cpp/language/access "cpp/language/access")  
[ Constructors and member initi