System.Variants.TCustomVariantType.Copy
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.