API:System.TVarRec
Delphi
TVarRec = record { do not pack this record; it is compiler-generated }
C++
struct TVarRec
{
union
{
int VInteger;
bool VBoolean;
AnsiChar VChar;
long double* VExtended;
PShortString VString;
void* VPointer;
PAnsiChar VPChar;
#if !defined(DELPHI_AUTOREFCOUNT)
TObject* VObject;
#else
void* VObject;
#endif
TClass VClass;
WideChar VWideChar;
WideChar* VPWideChar;
void* VAnsiString;
Currency* VCurrency;
Variant* VVariant;
void* VInterface;
void* VWideString;
__int64* VInt64;
void* VUnicodeString;
};
union
{
Byte VType;
};
__fastcall TVarRec(): VType(vtInteger), VInteger(0) {} //default int 0
__fastcall TVarRec(int src): VType(vtInteger), VInteger(src) {}
__fastcall TVarRec(unsigned src): VType(vtInteger), VInteger(src) {}
__fastcall TVarRec(unsigned long src): VType(vtInteger), VInteger(src) {}
__fastcall TVarRec(long src): VType(vtInteger), VInteger(src) {}
__fastcall TVarRec(bool src): VType(vtBoolean), VBoolean(src) {}
__fastcall TVarRec(char src): VType(vtChar), VChar(src) {}
#if defined(_WIN64)
__fastcall TVarRec(const double& src): VType(vtExtended), VExtended(reinterpret_cast<Extended*>(const_cast<double*>(&src))) {}
#endif
__fastcall TVarRec(const long double& src): VType(vtExtended), VExtended(const_cast<Extended*>(&src)) {}
__fastcall TVarRec(const ShortString& src): VType(vtString), VString(const_cast<PShortString>(&src)) {}
__fastcall TVarRec(const void* src): VType(vtPointer), VPointer(const_cast<Pointer>(src)) {}
#if !defined(_DELPHI_STRING_UNICODE)
__fastcall TVarRec(const PChar src): VType(vtPChar), VPChar(src) {}
#endif
__fastcall TVarRec(const char* src): VType(vtPChar), VPChar(reinterpret_cast<PAnsiChar>(const_cast<char*>(src))) {}
#if !defined(DELPHI_AUTOREFCOUNT)
__fastcall TVarRec(const TObject& src): VType(vtObject), VObject(const_cast<TObject*>(&src)) {}
#endif
__fastcall TVarRec(const TClass src): VType(vtClass), VClass(src) {}
__fastcall TVarRec(const WideChar* src): VType(vtPWideChar), VPWideChar(const_cast<PWideChar>(src)) {}
__fastcall TVarRec(WideChar src): VType(vtWideChar), VWideChar(src) {}
#if !defined(_DELPHI_NEXTGEN)
__fastcall TVarRec(const AnsiString& src): VType(vtAnsiString), VAnsiString(const_cast<void*>(src.data())) {}
__fastcall TVarRec(const RawByteString& src): VType(vtAnsiString), VAnsiString(const_cast<void*>(src.data())) {}
#endif
__fastcall TVarRec(const Currency& src): VType(vtCurrency), VCurrency(const_cast<PCurrency>(&src)) {}
__fastcall TVarRec(const Variant& src): VType(vtVariant), VVariant(const_cast<PVariant>(&src)) {}
#if !defined(_DELPHI_NEXTGEN)
__fastcall TVarRec(const WideString& src): VType(vtWideString), VWideString(const_cast<WideString&>(src).data()) {}
#endif
__fastcall TVarRec(const UnicodeString& src): VType(vtUnicodeString), VUnicodeString(const_cast<void*>(src.data())) {}
__fastcall TVarRec(const __int64& src): VType(vtInt64), VInt64(const_cast<PInt64>(&src)) {}
__fastcall TVarRec(const unsigned __int64& src): VType(vtInt64), VInt64(reinterpret_cast<PInt64>(const_cast<PUInt64>(&src))) {}
TVarRec& __fastcall operator =(int src)
{
VType = vtInteger;
VInteger = src;
return *this;
}
TVarRec& __fastcall operator =(unsigned src)
{
VType = vtInteger;
VInteger = src;
return *this;
}
TVarRec& __fastcall operator =(long src)
{
VType = vtInteger;
VInteger = src;
return *this;
}
TVarRec& __fastcall operator =(unsigned long src)
{
VType = vtInteger;
VInteger = src;
return *this;
}
TVarRec& __fastcall operator =(const __int64& src)
{
VType = vtInt64;
VInt64 = const_cast<PInt64>(&src);
return *this;
}
TVarRec& __fastcall operator =(const unsigned __int64& src)
{
VType = vtInt64;
VInt64 = reinterpret_cast<PInt64>(const_cast<PUInt64>(&src));
return *this;
}
TVarRec& __fastcall operator =(bool src)
{
VType = vtBoolean;
VBoolean = src;
return *this;
}
TVarRec& __fastcall operator =(char src)
{
VType = vtChar;
VChar = src;
return *this;
}
TVarRec& __fastcall operator =(const long double& src)
{
VType = vtExtended;
VExtended = const_cast<PExtended>(&src);
return *this;
}
TVarRec& __fastcall operator =(const ShortString& src)
{
VType = vtString;
VString = const_cast<PShortString>(&src);
return *this;
}
TVarRec& __fastcall operator =(const void* src)
{
VType = vtPointer;
VPointer = const_cast<Pointer>(src);
return *this;
}
#if !defined(_DELPHI_STRING_UNICODE)
TVarRec& __fastcall operator =(const PChar src)
{
VType = vtPChar;
VPChar = src;
return *this;
}
#endif
TVarRec& __fastcall operator =(const char* src)
{
VType = vtPChar;
VPChar = static_cast<PAnsiChar>(const_cast<char*>(src));
return *this;
}
#if !defined(DELPHI_AUTOREFCOUNT)
TVarRec& __fastcall operator =(const TObject& src)
{
VType = vtObject;
VObject = const_cast<TObject*>(&src);
return *this;
}
#endif
TVarRec& __fastcall operator =(const TClass& src)
{
VType = vtClass;
VClass = src;
return *this;
}
TVarRec& __fastcall operator =(WideChar src)
{
VType = vtWideChar;
VWideChar = src;
return *this;
}
TVarRec& __fastcall operator =(const WideChar* src)
{
VType = vtPWideChar;
VPWideChar = const_cast<PWideChar>(src);
return *this;
}
#if !defined(_DELPHI_NEXTGEN)
TVarRec& __fastcall operator =(const AnsiString& src)
{
VType = vtAnsiString;
VAnsiString = const_cast<void*>(src.data());
return *this;
}
TVarRec& __fastcall operator =(const WideString& src)
{
VType = vtWideString;
VWideString = const_cast<WideString&>(src).data();
return *this;
}
#endif
TVarRec& __fastcall operator =(const UnicodeString& src)
{
VType = vtUnicodeString;
VUnicodeString = const_cast<void*>(src.data());
return *this;
}
TVarRec& __fastcall operator =(const Currency& src)
{
VType = vtCurrency;
VCurrency = const_cast<PCurrency>(&src);
return *this;
}
TVarRec& __fastcall operator =(const Variant& src)
{
VType = vtVariant;
VVariant = const_cast<PVariant>(&src);
return *this;
}
};
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
record struct |
public | System.pas systvar.h |
System | System |
Beschreibung
Embarcadero Technologies verfügt zurzeit über keine zusätzlichen Informationen. Bitte unterstützen Sie uns bei der Dokumentation dieses Themas, indem Sie Ihre Kommentare auf der Diskussionsseite eingeben.