文档章节

数组竟然可以这样定义

涂孟超
 涂孟超
发布于 2014/09/26 15:34
字数 203
阅读 6
收藏 0
//这是常规思路:
const
  arr: array[0..1] of Char = ('A','B');
begin
  ShowMessage(arr);                   {AB}
  ShowMessage(IntToStr(Length(arr))); {2}
end;

 
 
 
 
 

 

 

  
//没想到可以这样: const arr: array[Boolean] of Char = ('A','B'); begin ShowMessage(arr); {AB} ShowMessage(IntToStr(Length(arr))); {2} {访问元素} ShowMessage(arr[False]); {A} ShowMessage(arr[True]); {B} {也可以这样访问} ShowMessage(arr[Low(arr)]); {A} ShowMessage(arr[High(arr)]); {B} {但不能这样访问} // ShowMessage(arr[0]); // ShowMessage(arr[1]); {但可以变通一下} ShowMessage(arr[Boolean(0)]); {A} ShowMessage(arr[Boolean(1)]); {B} end;
//同理, 这样也可以: const arr: array[Byte] of Integer = ( 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29, 30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55, 56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81, 82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105, 106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125, 126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145, 146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165, 166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185, 186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205, 206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225, 226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245, 246,247,248,249,250,251,252,253,254,255,256); begin ShowMessage(IntToStr(arr[Low(arr)])); {1} ShowMessage(IntToStr(arr[High(arr)])); {256} ShowMessage(IntToStr(Length(arr))); {256} end;
//给这种用法来一个必要性的实例: const BoolStr: array[Boolean] of string = ('False', 'True'); var b: Boolean; begin b := True; ShowMessage(BoolStr[b]); {True} b := not b; ShowMessage(BoolStr[b]); {False} end;

本文转载自:http://www.cnblogs.com/del/archive/2008/04/17/1158098.html

涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
帝国cms打印全局变量的备注 以前帝国cms鲜为人知的秘密

说来极其恶心也是没有办法的事。 由于本人很多技术都摸,有时摸完后就不摸了,当然了不摸的结果就是忘了感觉了! 就拿帝国cms来说,曾经历过三次摸的高潮,每次感觉都不一样,一次比一次感受...

ziluopao
2016/10/31
105
0
Java 数组转型和范型

今天写代码遇到一个奇怪的问题,代码结构如下: 这样写代码个人觉得应该没什么问题,编译也没有问题。可是具体运行的时候报异常,如下: Exception in thread "main" java.lang.ClassCastEx...

长平狐
2013/01/06
184
0
【vue源码】深度理解v-for

最近在阅读element源码的,但是element内部有很多方法,源码里面也找不到,查了一下,原来是vue的内部渲染列表的方法 源码位置,代码不长,可以一读 三个工具函数 isDef isDef是isDefined的缩...

Sarva
05/06
0
0
Perl 6 语言的糟粕

代码前面的声明 没有任何意义。 use v6; 这个声明没有任何意义,有人说这样可以让别的语言编译器早早知道搞错了对象。 不支持数组的负数索引。 在 Perl5 中都支持的东西,到了 Perl6,竟然不...

沙枣
2016/10/10
21
0
YUV420P/I420 stride 计算方式

这两天做一个 H.265 编码测试的功能,编码器需要手动输入 raw yuv frame 的 stride (也可以称作 pitch)数组大小,这个倒是让我一愣,做了这么久的音视频编解码的工作,长时间使用 ffmpeg,...

Gobert
2017/07/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

为什么要在网站中应用CDN加速?

1. 网页加载速度更快 在网站中使用CDN技术最直接的一个好处就是它可以加快网页的加载速度。首先,CDN加速的内容分发是基于服务器缓存的,由于CDN中缓存了不少数据,它能够给用户提供更快的页...

云漫网络Ruan
21分钟前
2
0
亚玛芬体育(Amer Sports)和信必优正式启动合作开发Movesense创新

亚玛芬体育和信必优正式启动合作开发Movesense创新,作为亚玛芬体育的完美技术搭档,信必优利用Movesense传感器技术为第三方开发移动应用和服务。 Movesense基于传感器技术和开放的API,测量...

symbiochina88
32分钟前
2
0
创龙TI AM437x ARM Cortex-A9 + Xilinx Spartan-6 FPGA核心板规格书

SOM-TL437xF是一款广州创龙基于TI AM437x ARM Cortex-A9 + Xilinx Spartan-6 FPGA芯片设计的核心板,采用沉金无铅工艺的10层板设计,适用于高速数据采集和处理系统、汽车导航、工业自动化等领...

Tronlong创龙
33分钟前
2
0
好程序员Java学习路线分享MyBatis之线程优化

  好程序员Java学习路线分享MyBatis之线程优化,我们的项目存在大量用户同时访问的情况,那么就会出现大量线程并发访问数据库,这样会带来线程同步问题,本章我们将讨论MyBatis的线程同步问...

好程序员官方
39分钟前
6
0
IDEA 自定义方法注解模板

IDEA 自定义方法注解模板 1、使用效果 /*** 计算交易费用* @Author wangjiafang* @Date 2019/9/11* @param feeComputeVo* @return*/@PostMapping("/v1/fee_compute")public ApiResp......

小白的成长
39分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部