学习Object pascal 语言;
以前也学过些其他语言,主要是脚本类语言如: php;php很多东西都是和C++差不多;但更加的灵活;看了delphi,才知道语言都是相通的,能够把一种语言学好,运用好,其他语言也是非常容易学的;
一.数据类型
最常用的有:integer,string(ansistring),变体类型(variant),currency(货币类型),8位无符号类型Byte,1个字节字符Char,以Null结束的字符型;
用户自定义的类型:
1.数组类型:
var
arr : array [0..10] of integer;
动态数组:
var
sa : array of string;
begin
setLength(sa,18);//需要用到setLength来分配大小
end;
2.记录类型:
Type
myinfo = record
age: integer;
name: string;
addr : string;
end;
使用时需要实例化
var
info : myinfo;
begin
info.age := 38;
info.name:='delphiclub';
info.addr := 'guilin';
end;
//也可以用with 来做
with info do
begin
age := 38;
name:= 'delphiclub';
addr := 'guilin';
end;
end;
集合数据类型:
type
tCharSet = set of char; //可能的值:#0-#255;
一个集合最多只能有255个元素,只有有序的类型才能跟关键字 set of 下列语句是非法的
type
TintSet = set of integer;
tstrSet = set of string;
使用集合:
var
charset : TcharSet;
begin
charset := ['a'..'m'];
end;
对象也可以当做记录类型,只是它还包括了函数和过程;
type
TChildObject = class(TParentObject)
someVar :integer;
procedure someProc;
end;
分类 | 范围 | 字节 | 备注 | |||
简单类型 | 序数 | 整数 | Integer | -2147483648 .. 2147483647 | 4 | 有符号32位 |
Cardinal | 0 .. 4294967295 | 4 | 无符号32位 | |||
Shortint | -128 .. 127 | 1 | 有符号8位 | |||
Smallint | -32768 .. 32767 | 2 | 有符号16位 | |||
Longint | -2147483648 .. 2147483647 | 4 | 有符号32位 | |||
Int64 | -263.. 263 | 8 | 有符号64位 | |||
Byte | 0 .. 255 | 1 | 无符号8位 | |||
Word | 0 .. 65535 | 2 | 无符号16位 | |||
Longword | 0 .. 4294967295 | 4 | 无符号32位 | |||
字符 | AnsiChar(Char) | ANSI字符集 | 8位 | |||
WideChar | Unicode字符集 | 16位 | ||||
布尔 | Boolean | False < True Ord(False) = 0 Ord(True) = 1 Succ(False) = True Pred(True) = False |
1 | |||
ByteBool | False <> True Ord(False) = 0 Ord(True) <> 0 Succ(False) = True Pred(False) = True |
1 | ||||
WordBool | 2 | |||||
LongBool | 4 | |||||
枚举 | ||||||
子界 | ||||||
实数 | Real | 5.0×10-324.. 1.7×10308 | 8 | [精度]15..16 | ||
Real48 | 2.9×10-39.. 1.7×1038 | 6 | [精度]11..12; 向后兼容 |
|||
Single | 1.5×10-45.. 3.4×1038 | 4 | [精度]7..8 | |||
Double | 5.0×10-324.. 1.7×10308 | 8 | [精度]15..16 | |||
Extended | 3.6×10-4951.. 1.1×104932 | 10 | [精度]19..20 | |||
Comp | -263+ 1 .. 263- 1 | 8 | [精度]19..20 | |||
Currency | -922337203685477.5808 .. 922337203685477.5807 |
8 | [精度]19..20 | |||
字符串 | ShortString | 255个字符 | 2..256B | 向后兼容 | ||
AnsiString | 大约 231个字符 | 4B..2GB | 8位(ANSI)字符 | |||
WideString | 大约 230个字符 | 4B..2GB | 多用户服务和 多语言应用程序; 和com定义的BSTR兼容 |
|||
其他 | String String[0..255] PChar PAnsiString PWideString |
|||||
结构类型 | 集合 | Set | 最多256个元素[0..255] | |||
数组 | 静态数组 | |||||
动态数组 | ||||||
记录 | Record | |||||
文件 | File | |||||
类 | Class | |||||
类引用 | Class reference | |||||
接口 | Interface | |||||
指针类型 | 无类型指针 | Pointer | ||||
有类型指针 | 预定义类型指针 | PAnsiString PString PByteArray PCurrency PDouble PExtended PSingle PInteger POleVariant PShortString PTextBuf PVarRec PVariant PWideString PWordArray |
||||
过程类型 | 程序过程类型 | Procedural | ||||
对象过程类型 | Procedural | |||||
变体类型 | Variant | |||||
OleVariant |
原文链接: https://www.cnblogs.com/delphiclub/archive/2012/10/19/2730586.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/66404
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!