当前位置: 首页 > news >正文

上海网站排名公司17网站一起做网店河北

上海网站排名公司,17网站一起做网店河北,安卓应用市场app,曹妃甸网站建设来源#xff1a;http://blog.csdn.net/xiongmao000738/article/details/6863988 一、变体类型常用的函数介绍#xff1a; Variant#xff1a; 一种可以拥有各种数据类型#xff1b; 也可以告诉目前存储的数据是什么类型(通过使用VarType函数)#xff1b; 可以给相同的Var…来源http://blog.csdn.net/xiongmao000738/article/details/6863988   一、变体类型常用的函数介绍         Variant 一种可以拥有各种数据类型 也可以告诉目前存储的数据是什么类型(通过使用VarType函数) 可以给相同的Variant分配不同的数据类型只要Variant包含数字值就可以执行算法 variant数组只不过是variant型的数组不必包含同类型的数据 1、  VarArrayOf函数更快捷的创建一维变体数组可以创建全异的数值数组 function VarArrayOf(const Values: array of Variant): Variant;         VarArrayOf是一种快速写代码快而不是运行快的方法生成一个一维Variant数据的方法它接受一个Variant类型的Open Array用这个数据生成一个一维的Variant Array of Variant类型为Variant)。由于Delphi对Open Array类型参数的支持使你可以用一行语句生成一个数组。不过它有两个缺陷只能生成一维数组只能生成元素类型是Variant的数组。使用Variant数组, 与使用标准Delphi数组类似 例如 MyArray : VarArrayOf([李维 30 60, 60.369, China]); 2、  VarArrayCreate函数 function VarArrayCreate(const Bounds: array of Integer; VarType: TVarType): Variant;         Bounds: 告诉数组的上下界 VarType: 决定了数组的中存储什么类型的数据。其它的数组如二维、或者其他类型等只能用VarArrayCreate去创建并用循环给元素赋值。 例如创建数组的数组, 可以模仿任何类型的数据结构类型             VarArrayX : VarArrayCreate([1,10], varVariant); 数组的单个元素可以装载一个数组 VarArrayX[1] : VarArrayCreate([1,5], varVariant); 3、VarArrayHighBound、VarArrayLowBound函数返回变体数组上/下限从1开始1列2行33维的最后一维。 function VarArrayHighBound(const A: Variant; Dim: Integer): Integer; 4、VarArrayRedim函数修改variant数组的最高限。 procedure VarArrayRedim(A: Variant; HighBound: Integer); 5、VarArrayDimCount函数返回variant数组维数 unction VarArrayDimCount(const A: Variant): Integer; 6、VarArrayLock、VarArrayUnLock函数避免运行时刻检查。一般用于初始化一个大数组。 function VarArrayLock(const A: Variant): Pointer; procedure VarArrayUnlock(var A: Variant);         在对Variant数组的每一个元素进行赋值时都要通过运行时逻辑来检查并判断数据类型的兼容性、每个元素的位置等等。为了避免运行时检查要用VarArrayLock()函数和VarArrayUnlock()过程。VarArrayLock()函数在内存中锁定数组使数组不再移动和改变大小并能返回一个指向数组数据的指针。而VarArrayUnlock()过程用来对VarArrayLock()函数锁定的数组进行解锁使数组能重新移动或改变大小。在锁定数组后能用更有效的方法对数组进行初始化。 7、VarArrayRef函数获得variant指向的数据 function VarArrayRef(const A: Variant): Variant; 8、VarIsArray函数是一个简单的布尔检查函数判断是否是一个 Variant数组是则返回True function VarIsArray(const A: Variant): Boolean; overload; function VarIsArray(const A: Variant; AResolveByRef: Boolean): Boolean; overload; 9、其他函数 1、VarClear()过程清除Variant变量并将VType域的值设为varEmpty. 2、VarCopy()将Source复制到Dest。 3、VarCast()将一个Variant转换成指定的类型并存储在另一个Variant变量中。 4、VarType()返回指定Variant的varXXX类型代码。 5、VarAsType()跟VarCast()的功能一样。 6、VarIsEmpty()如果一个Variant变量的类型代码是varEmpty则返回True。 7、VarIsNull()判断Variant变量是否包含null值。 8、VarToStr()将一个Variant变量转换成字符串表达式(如果Variant为varEmpty或varNUll则为空字符串)。 9、VarFromDateTime()返回一个Variant变量它存放着指定的TDateTime类型的值。 10、VarToDateTime()返回在Variant中的TDateTime类型的值。 二、一个简单实例代码 var   a, b: Variant;   I, J, K, M: Integer; begin   //a是个一维Variant数组元素类型是Variant元素个数是3上界是2下界是0。   a : VarArrayOf([1234,   abc ,   Null]);   //b是一个16行4列的二维数组   b : VarArrayCreate[0, 3, 1, 16],   varOleStr);  I : VarArrayHighBound(b, 1); // I是b的最大列号3   J : VarArrayLowBound(b, 1); // J是b的最小列号0   K : VarArrayHighBound(b, 2); // K是b的最大行号16   M : VarArrayLowBound(b, 2); // M是b的最小行号1。 end; 注意Variant数组下标是列在前行在后元素类型是PWideChar最大列号是3最小列号是0最大行号是16最小行号是1。 三、变体类型和流的相互转换 //1、 变体类型转成流 procedure VariantToStream(const Data: OleVariant; Stream: TStream); var   p: Pointer; begin   p : VarArrayLock(Data);  // 加锁并返回一个指针指向的数据。 避免运行时时刻检查   try     Stream.Write(p^, VarArrayHighBound(Data,1) 1);  // 返回最大的列号   finally     VarArrayUnlock(Data); // 解锁使数组能重新移动或改变大小。   end; end;   // 2、流转成变体类型 function StreamToVariant(Stream: TStream): OleVariant; var   p: Pointer; begin   Result : VarArrayCreate([0, Stream.Size - 1], varByte);// 创建一个以为的数组。类型为varByte   p : VarArrayLock(Result);   try     Stream.Position : 0;  // 设置流的位置     Stream.Read(p^, Stream.Size);   finally     VarArrayUnlock(Result);   end; end; 转载于:https://www.cnblogs.com/760044827qq/p/3819300.html
http://www.pierceye.com/news/582797/

相关文章:

  • 如何在公司系统建网站广州短视频seo哪家好
  • 电气网站开发福安网站定制
  • 推荐一下做图文的网站html简单的个人网页代码
  • 网页新建站点网站建设缺陷
  • 移动端网站推广怎么申请pc网站域名
  • 外国男男做暧暧视频网站二级建造师考试试题
  • 普通网站建设是什么wordpress主题显示不
  • 朔州网站建设全球速卖通是什么平台
  • wordpress外贸网站好用的模板下载网站开发就业趋势
  • 长春模板建站代理网站开发嘉比格网络
  • 网站建设预算企业网站的公司和产品信息的介绍与网络营销关系
  • 网站开发的学习电子商务网站建设公
  • 网站的功能需求分析c语言网页编辑器
  • 网站投资多少钱制作做的网站如何上传网上
  • 沈阳自助建站模板网站建设想法
  • 湖南岳阳网站建设公司黄页顺企网怎样不让网站被收录
  • 有没有专门做翻译的网站安徽建设工程信息网招标公告
  • 保险咨询网站留电话中国十大网络公司排行榜
  • 领手工在家做的网站2019网页设计与实现论文
  • 兰州微信信息平台网站建设绍兴本地网站建设
  • 关于旅游网站策划书千锋前端培训多少钱
  • 温州网站建设结构做代练网站能备案
  • 零基础学习做网站第三方装修评估公司
  • 基础微网站开发动态网站彩票投注员做啥的
  • 西安做网站设计公司爱做网站免费版
  • 效果图网站接单重庆一般建一个网站需要多少钱
  • 网站建设征求意见稿辅料企业网站建设费用
  • 上海网站建设公司服务沅江网站制作
  • 公司网站开发费用计入什么科目虚拟主机怎么建网站
  • 天津网站建设技术网页设计与制作教程版徐洪亮课后答案