System.Variants.TCustomVariantType.Copy

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

procedure Copy(var Dest: TVarData; const Source: TVarData;  const Indirect: Boolean); virtual; abstract;

C++

virtual void __fastcall Copy(TVarData &Dest, const TVarData &Source, const bool Indirect) = 0 ;

Propriétés

Type Visibilité  Source Unité  Parent
procedure
function
public
System.Variants.pas
System.Variants.hpp
System.Variants TCustomVariantType

Description

Copie les données d'un Variant de ce type personnalisé.

Redéfinissez Copy pour permettre la copie (affectation) du type Variant personnalisé dans un autre Variant.

Dest représente l'enregistrement TVarData du Variant dont la valeur doit être une copie du Variant source.

Source représente l'enregistrement TVarData d'un Variant de ce type personnalisé à copier dans Dest.

Indirect indique si la copie est directe ou indirecte. Lorsque Indirect a pour valeur true, l'enregistrement TVarData source contient une référence indirecte à ses données (la méthode VarDataIsByRef doit renvoyer true pour Source). Lors d'une copie indirecte, il n'est pas nécessaire de réallouer des enregistrements ou des objets car le Variant ne "possède" pas les données mais ne fait que pointer sur celles-ci. Lors d'une copie directe, Copy doit allouer de la mémoire pour tout enregistrement ou objet alloué afin que Dest puisse "posséder" sa propre copie des données.

Dans TCustomVariantType, Copy est une méthode abstraite. Les classes dérivées doivent redéfinir cette méthode pour fournir une implémentation.

Voir aussi