logo
Объектно-ориентированное программирование и C++

3.6.1.6 Расширенные типы данных Delphi

C++Builder не позволяет посредством известного ключевого слова typedef просто переопределить некоторые сложные типы данных Объектного Паскаля. C++Builder реализует такие расширенные типы в виде обычных или шаблонных классов (template class). Каждый такой класс содержит все необходимые конструкторы, деструкторы, свойства и объектные методы. Многие компоненты VCL используют реализацию расширенных типов, а кроме того, они требуются при разработке новых компонент на базе оригиналов из Delphi.

Ниже приводится сводная таблица встроенных типов Delphi и соответствующих им типов C++Builder:Delphi Длина и значения C++Builder Реализация

Shortint 8-битовое целое char typedef

Smallint 16-битовое целое short typedef

Longint 32-битовое целое long typedef

Byte 8-битовое целое без знака unsigned char typedef

Word 16-битовое целое без знака unsigned short typedef

Integer 32-битовое целое int typedef

Cardinal 32-битовое целое без знака unsigned long typedef

Boolean true/false bool typedef

ByteBool true/false или 8-битовое целое без знака unsigned char typedef

WordBool true/false или

16-битовое целое без знака unsigned short typedef

LongBool true/false или

32-битовое целое без знака unsigned long typedef

AnsiChar 8-битовый символ без знака unsigned char typedef

WideChar Слово - символ Unicode wchar t typedef

Char 8-битовый символ char typedef

String Текстовая строка Delphi AnsiString typedef

Single 32-битовое плавающее число float typedef

Double 64-битовое плавающее число double typedef

Extended 80-битовое плавающее число long double typedef

Real 32-битовое плавающее число float typedef

Comp 64-битовое плавающее число double typedef

Pointer 32-битовый указатель void * typedef

PChar 32-битовый указатель на символы без знака unsigned char * typedef

PansiChar 32-битовый указатель на ANSI символы без знака unsigned char * typedef

Set Множество 1..32 байт Set<type, minval, maxval> template class

AnsiString Текстовая строка Delphi AnsiString class