GlobalObjects
Lade ...
Suche ...
Keine Treffer
glo::IsBaseClassOf< Base, Derived > Template-Klassenreferenz

Prüft, ob Vorlagenparameter Klassen sind und ob die Klasse des zweiten Vorlagenparameter vom Typ der Klasse des ersten Vorlagenparameter ist bzw. von dieser abgeleitet ist. Mehr ...

#include <GloTOndemand.h>

Klassen

struct  IsClass
 
struct  No
 

Statische öffentliche Attribute

static const bool value
 

Private Typen

typedef char Yes
 

Private, statische Methoden

static No Test (...)
 
static Yes Test (Base *)
 

Ausführliche Beschreibung

template<typename Base, typename Derived>
class glo::IsBaseClassOf< Base, Derived >

Prüft, ob Vorlagenparameter Klassen sind und ob die Klasse des zweiten Vorlagenparameter vom Typ der Klasse des ersten Vorlagenparameter ist bzw. von dieser abgeleitet ist.

Dokumentation der benutzerdefinierten Datentypen

◆ Yes

template<typename Base, typename Derived>
typedef char glo::IsBaseClassOf< Base, Derived >::Yes
private

Größe: 1 Byte

Dokumentation der Elementfunktionen

◆ Test() [1/2]

template<typename Base, typename Derived>
static No glo::IsBaseClassOf< Base, Derived >::Test ( ...)
staticprivate

Diese Überladung wird gewählt, wenn die vorherige nicht passt (SFINAE).

◆ Test() [2/2]

template<typename Base, typename Derived>
static Yes glo::IsBaseClassOf< Base, Derived >::Test ( Base * )
staticprivate

Funktion zur Prüfung der Umwandlung von 'Derived*' nach 'Base*'.
Diese Überladung wird gewählt, wenn 'Derived*' zu 'Base*' konvertierbar ist.

Dokumentation der Datenelemente

◆ value

template<typename Base, typename Derived>
const bool glo::IsBaseClassOf< Base, Derived >::value
static
Initialisierung:
&& sizeof( Test( static_cast<Derived*>( 0 ) ) ) == sizeof(Yes)
char Yes
Definition GloTOndemand.h:83
static Yes Test(Base *)
static const bool value
Definition GloTOndemand.h:138

Wenn 'Test(Derived*)' die 'Yes'-Version auswählt, dann ist Derived von Base abgeleitet.

Wird benutzt von glo::TOndemand< T >::TOndemand(), glo::TOndemand< T >::operator!=(), glo::TOndemand< T >::operator=() und glo::TOndemand< T >::operator==().


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei: