Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Définit l’emplacement d’un objet. Cette variante particulière de Location est le struct d’accès C-COM.
Notez qu’un emplacement a uniquement une signification conjointement avec un contexte hôte. Il s’agit d’un emplacement dans un contexte. Lors de l’exécution d’une opération sur l’emplacement (lecture d’octets, écriture d’octets, etc.), un contexte hôte valide doit être fourni.
Syntaxe
struct Location {
ULONG64 HostDefined;
ULONG64 Offset;
void Location();
void Location(
ULONG64 virtualAddress
);
void Location(
const Location & src
);
Location & operator=(
const Location & src
);
Location & operator=(
ULONG64 virtualAddress
);
bool operator==(
const Location & rhs
);
bool operator!=(
const Location & rhs
);
Location & operator+=(
LONG64 offset
);
Location & operator-=(
LONG64 offset
);
Location operator+(
LONG64 offset
);
Location operator-(
LONG64 offset
);
ULONG64 GetOffset();
bool IsVirtualAddress();
};
Membres
HostDefined
Le champ HostDefined a deux états qui sont « non opaques » au niveau de la couche API.
0 : indique que le décalage est un pointeur vers l’espace d’adressage virtuel de la cible.
Non zéro : la valeur définie est propriétaire de l’hôte. Les clients peuvent propager et modifier le décalage. Ils ne peuvent pas modifier légalement la valeur. Cela peut être déterminé par la méthode IsVirtualAddress() si cette structure est générée à partir du code C++.
Offset
Décalage de l’emplacement dans l’espace d’adressage défini par le contexte hôte et le champ HostDefined de cette structure. Si le champ HostDefined est égal à zéro, il s’agit de l’adresse virtuelle de l’emplacement. Si le champ HostDefined n’est pas égal à zéro, il s’agit du décalage dans un autre espace d’adressage. Il peut, par exemple, indiquer où se trouve un champ particulier d’une structure inscrite dans le registre contenant.
Copiez un emplacement.
La valeur par défaut construit un nullptr équivalent.
void Location( ULONG64 virtualAddress)
Construit un emplacement à partir d’un décalage dans l’espace d’adressage virtuel de la cible.
void Location( const Location & src)
Copiez un emplacement.
Location & operator=( const Location & src)
Opérateur d’affectation de copie pour la fonction d’emplacement.
& operator=( ULONG64 virtualAddress)
Opérateur d’affectation pour la fonction d’emplacement.
bool operator==( const Location & rhs)
Opérateur d’équivalence pour la fonction d’emplacement.
opérateur bool !=( const Location & rhs)
N’est pas égal à l’opérateur de comparaison pour la fonction d’emplacement.
Opérateur d’affectation d’ajout pour la fonction d’emplacement.
Location & operator-=( LONG64 offset)
Opérateur d’affectation de soustraction pour la fonction d’emplacement.
'opérateur Location+( DÉCALAGE LONG64)
Opérateur d’ajout pour la fonction d’emplacement.
'opérateur Location-( DÉCALAGE LONG64)
Opérateur de soustraction pour la fonction d’emplacement.
Retourne le décalage de l’emplacement.
Indique si l’emplacement fait référence à une adresse virtuelle.
Exigences
| Exigence | Valeur |
|---|---|
| d’en-tête | dbgmodel.h |
Voir aussi
Vue d’ensemble du modèle de données du débogueur C++