Pascal在线运行

版本:

所属目录
点击了解高性能代码运行API
运行结果
教程手册
代码仓库
极速运行
交互输入
极速运行模式,更高效的运行,点击编辑器上方的运行按钮即刻体验吧。
显示目录

variants



variants

Pascal支持一种名为variant的独特存储类型.您可以在变量变量中指定任何简单类型的值.存储在变量中的值的类型仅在运行时确定.几乎任何简单类型都可以分配给变体:序数类型,字符串类型,int64类型.

结构化类型(如集合,记录,数组,文件,对象和类)不是赋值兼容的有一个变种.您还可以指定变量的指针.

Free Pascal支持变体.

声明变体

您可以使用 var 关键字声明变体类型,就像任何其他类型一样.声明变体类型的语法是 :

 var 
 v:variant;

现在,这个变量变量v可以分配给几乎所有简单类型,包括枚举类型,反之亦然.

type  
   color = (red, black, white);  
var  
   v : variant;  
   i : integer;  
   b : byte;  
   w : word;  
   q : int64;  
   e : extended;  
   d : double;  
   en : color;  
   as : ansistring;  
   ws : widestring;  

begin  
   v := i;  
   v := b;  
   v := w;  
   v := q;  
   v := e;  
   v := en;  
   v := d:  
   v := as;  
   v := ws;  
end;

示例

以下示例将说明概念 :

Program exVariant;

uses variants;
type
   color = (red, black, white);

var
   v : variant;
   i : integer;
   r: real;
   c : color;
   as : ansistring;


begin
   i := 100;
   v:= i;
   writeln('Variant as Integer: ', v);

   r:= 234.345;
   v:= r;
   writeln('Variant as real: ', v);

   c := red;
   v := c;
   writeln('Variant as Enumerated data: ', v);

   as:= ' I am an AnsiString';
   v:= as;
   writeln('Variant as AnsiString: ', v);
end.

编译并执行上述代码时,会产生以下结果 :

Variant as Integer: 100
Variant as real: 234.345
Variant as Enumerated data: 0
Variant as AnsiString: I am an AnsiString
由JSRUN为你提供的Pascal在线运行、在线编译工具
        JSRUN提供的Pascal 在线运行,Pascal 在线运行工具,基于linux操作系统环境提供线上编译和线上运行,具有运行快速,运行结果与常用开发、生产环境保持一致的特点。

title

使用此草稿 删除草稿

  • 00:23
注册登录后可减少验证码的弹出,点击前往 注册 | 登录

皮肤:

运行模式:

嵌入代码 iframe嵌入:


服务器已安装大部分常用的依赖库,但仍会存在一些未被安装的库, 可以通过本窗口立即安装所需依赖库,请确保库名正确,否则无法安装成功。


请输入依赖库的名称:

请选择语言: