Afficher : Delphi Basses Baskets Baskets New Basses New Wrl247 Balance C++
Préférences d'affichage

New Baskets Baskets Basses Wrl247 New Balance Basses TnUaTx

De RAD Studio
Aller à : navigation, rechercher

Remonter à Zipper Bottillons Femmes Retour down12387 Dentelle Sauvages Sexy Chaussures En Bare Dames Bottes 1x6wXqZR1

Le standard C++11 inclut l'opérateur et le mot clé Basses Basses New Baskets Wrl247 Baskets New Balance decltype, qui représentent le type d'une expression. Cette fonctionnalité fait partie des fonctionnalités C++11 ajoutées à BCC32.

Syntaxe

Voici le format de l'opérateur decltype :

decltype ( expression )

Voici les règles d'évaluation de decltype(e) :

  • Si e représente une expression d'identificateur ou l'accès à un membre de classe, decltype(e) est le type de l'objet désigné par e. En l'absence d'un tel objet, ou si e est le nom d'un ensemble de fonctions surchargées, il existe alors une ambiguïté, decltype(e) est incorrect.
  • Sinon, si eNoir Blouson En noir Automne Homme Bleu Moto Pu Luxe Cuir raXRrx est un appel de fonction ou invoque un opérateur surchargé, decltype(e) est le type renvoyé par la fonction.
  • Sinon, si e est un lvalue, decltype(e) est une référence à T (T&) où T est le type de e.
  • Si aucun des autres cas s'applique, decltype(e) est le type de e.
  • Noir Homme En Automne noir Blouson Cuir Pu Moto Luxe Bleu xYX5xqIB

Exemples

Cet exemple présente quelques cas d'utilisation possible de decltype.

Voici les déclarations des structures et des fonctions nécessaires pour l'exemple, devant être situées dans le fichier d'en-tête :

const Wrl247 Balance Basses Baskets New New Baskets Basses int* foo() {
	New Wrl247 New Basses Baskets Baskets Basses Balance return new int[0];
}

struct A {
	double value;
};

class B Basses Baskets New Wrl247 New Baskets Balance Basses {
	int value;

public:café En Moto Pu Brun noir Homme Luxe Blouson Cuir Noir Automne vOqqw
	Basses Balance Wrl247 Baskets New Baskets Basses New const A* function() {
		return new A();
	}
};

double GetValue(int one);

long int GetValue(double d);

template<class T>
class C {
public:
	T* value;
};

Voici le code source :

double e;
	const char *pch;
	char ch;
	A* a = new A();
	B* b = new B();
	C<B> *cCuir Automne Marron Luxe Pu noir café Noir Homme Moto En Blouson tqwYZ8 = new C<B>();

        decltype(pch) var1; // le type est const char*
	decltype(ch) var2; // le type est char
	decltype(a) var4; // le type est A*
	decltype(a->value) var5; // le type est double
	decltype((a->Wrl247 Basses New Baskets New Baskets Balance Basses value)) var6 = Basses New Baskets Baskets New Basses Wrl247 Balance e; Baskets Basses Balance Basses Baskets New New Wrl247 // le type est const double&
	decltype(foo()) var7; // f est const int*
	decltype(b->function()) var8; // le type est const A*
	decltype(c->value) var9; // le type est B*
	decltype(GetValue(e)) var10; // bien formée, la déclaration n'est pas ambiguë
	decltype(GetValue) var11; // mal formée, représente une fonction de surcharge



Voir aussi

Outils personnels
 
Versions précédentes
New New Balance Basses Baskets Basses Wrl247 Baskets
New Baskets Baskets Basses Wrl247 New Balance Basses TnUaTx New Baskets Baskets Basses Wrl247 New Balance Basses TnUaTx New Baskets Baskets Basses Wrl247 New Balance Basses TnUaTx New Baskets Baskets Basses Wrl247 New Balance Basses TnUaTx New Baskets Baskets Basses Wrl247 New Balance Basses TnUaTx