Namensräume
Varianten

Class declaration

Aus cppreference.com
< cpp‎ | language

 
 
Sprache C++
Allgemeine Themen
Original:
General topics
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Flusskontrolle
Original:
Flow control
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Bedingte Ausführung Aussagen
Original:
Conditional execution statements
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Iterationsanweisungen
Original:
Iteration statements
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Gehe Aussagen
Original:
Jump statements
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Funktionen
Original:
Functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Funktion Erklärung
Lambda-Funktion Erklärung
Funktions-Template
inline-Spezifizierer
Exception-Spezifikationen(veraltet)
noexcept Spezifizierer(C++11)
Ausnahmen
Original:
Exceptions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Namespaces
Original:
Namespaces
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Types
Original:
Types
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Grundtypen
zusammengesetzte Typen
Aufzählungstypen
decltype specifier(C++11)
Specifiers
Original:
Specifiers
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
cv Planer
Lagerdauer Planer
constexpr Spezifizierer(C++11)
auto Spezifizierer(C++11)
alignas Spezifizierer(C++11)
Initialisierung
Original:
Initialization
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Literale
Original:
Literals
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Expressions
Original:
Expressions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
alternative Darstellungen
Utilities
Original:
Utilities
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Types
Original:
Types
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
typedef declaration
Typ Aliasdeklaration(C++11)
Attribute(C++11)
Wirft
Original:
Casts
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
impliziten Konvertierungen
const_cast conversion
static_cast conversion
dynamic_cast conversion
reinterpret_cast conversion
C-Stil und funktionale Besetzung
Speicherzuweisung
Original:
Memory allocation
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Classes
Original:
Classes
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Class-spezifische Funktion Eigenschaften
Original:
Class-specific function properties
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Besondere Member-Funktionen
Original:
Special member functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Templates
Original:
Templates
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Klassen-Template
Funktions-Template
Template-Spezialisierung
Parameter Packs(C++11)
Verschiedenes
Original:
Miscellaneous
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Inline Montage
 

Inhaltsverzeichnis

[Bearbeiten]Syntax

classidentifier{class_body} object_list; (1)
classidentifier:ancestor_list{class_body} object_list; (2)
classidentifier; (3)
classidentifierfinalopt_ancestors_and_body (4) (seit C++11)

[Bearbeiten]Class Body

A list of member and friend declarations and access specifiers:

public: (1)
protected: (2)
private: (3)
friendfriend_declaration (4)
member_declaration (5)
staticmember_declaration (6)
nested_type_declaration (7)

[Bearbeiten]Ancestor List

A list of classes that have already bee fully defined optionally prefixed with an access specifier

[Bearbeiten]Object List

An optional list of instances of the previously defined class

[Bearbeiten]Erklärung

  1. Defines a class and its member
  2. Defines a class inheriting other classes
  3. Forwards declares a class
  4. Defines a class that cannot be derived from ( see final )

If friend or member functions have their body defined inside the class body, they are implicitly inlined

[Bearbeiten]Notes

(seit C++11) A default value can be assigned to data members inside the class body (ie: not necessarily in a constructor)

[Bearbeiten]Siehe auch


[Bearbeiten]Beispiel

class C;   class D :public B // B needs to be defined{private: C *ptr_c;// a pointer/reference to C can be used as C has been forward declareddouble x =12.3;// C++11 inline data member initializationstaticconstint sci =1;// this is valid in C++98 as wellpublic:typedef B parent_type;   // inline functionvirtual parent_type foo()const{return B();}   // non-inline function declaration. needs to be defined externallyvoid bar();} D_obj;// An object of type D is defined   // definition of a class method outside the classvoid D::bar(){//...}
close