OleVariant
ArrayDimCount
OleVariant;
System.Variants.hpp
判断OleVariant 是否为空
System::OleVariant ov if( !ov.IsNull() ) procName= ov;
还可以这样
System::OleVariant ov
TValue tv; tv= tv.From<OleVariant>(ov); Variant po= tv.AsVariant(); procName= tv.AsString();
VarIsNull(v)
VarIsNull(po);
OleVariant 转换字符串
System::OleVariant ov;
ov.VOleStr;
Variant
VarToStr
Variant V; String mystr;
判断Variant或者字段值是否为null
VarIsNull(v)
VarIsNull(DataSet.FieldByName('fn').Value)
VarIsEmpty
VarToDateTime
if (TVarData(V).VType == varEmpty)
ListBox1->Items->Add(L"Variants start મઽૠ૪ empty.");
VarClear(V);
TVarData(V).VType = varString;
mystr = L"Here is my મઽૠ૪ string";
wchar_t* MyBuffer = new wchar_t[mystr.Length() + 1];
StrCopy(MyBuffer, mystr.c_str());
TVarData(V).VString = MyBuffer;
mystr = (wchar_t *)(TVarData(V).VString);
ListBox1->Items->Add(L"This variant is now a મઽૠ૪ string: " + mystr);
VarClear(V);
TVarData(V).VType = varInteger;
TVarData(V).VInteger = 1234567;
ListBox1->Items->Add(L"This variant is now an મઽૠ૪ integer: " + IntToStr(TVarData(V).VInteger));
http://docwiki.embarcadero.com/CodeExamples/XE7/en/SystemVarClear_%28C%2B%2B%29