Russian Belarusian English German Japanese Ukrainian

3.45

Все типы, используемые в C++ Builder, можно разбить на четыре группы:

Название Описание
Aggregate структуры данных
Array массивы
struct структуры
union объединения
class классы
Function функции
Scalar скалярные
Arithmetic арифметические
Enumeration перечислимые
Pointer указатели
Reference ссылки
void отсутствие значения

Другой способ классификации типов связан с их разбиением на основные и производные типы. К основным относятся: void, char, int, float и double, а также их варианты с модификаторами short (короткий), long (длинный), signed (со знаком) и unsigned (без знака). Например, unsigned char, unsigned int, signed int (модификатор signed подразумевается по умолчанию и поэтому обычно не указывается).

Основные типы в С++ следующие:

Тип Размер в байтах Диапазон значений
char 1 от -128 до 126
unsigned char 1 от 0 до 255
short 2 от -32 768 до 32 767
unsigned short 2 от 0 до 65 535
enum 2 от -2 147 483 648 до 2 147 483 647
long 4 от -2 147 483 648 до 2 147 483 647
unsigned long 4 от 0 до 4 294 967 295
int 4 от -2 147 483 648 до 2 147 483 647
unsigned int 4 от 0 до 4 294 967 295
float 4 от 3.4*10-38 до 3.4*1038
double 8 от 1.7*10-308 до 1.7*10308
long double 10 от 3.4*10-4932 до 1.1*104932
bool 1 true или false

Имеются также основные типы _int8, _intl6, _int32, _int64.

Следует отметить, что в C++ Builder, в отличие от некоторых других версий С++, булев тип bool реализован как отдельный тип, а не как псевдоним целого. Однако это не мешает при желании использовать в логических выражениях целые значения вместо булевых. При этом значение 0 расценивается как false, а любое ненулевое значение как true.

Производные типы включают в себя указатели и ссылки на какие-то типы, массивы каких-то типов, типы функций, классы, структуры, объединения. Эти типы считаются производными, поскольку, например, классы, структуры, объединения могут включать в себя объекты различных типов.

Можно выделить еще одну категорию типов порядковые, в которых значения упорядочены и для каждого из них можно указать предшествующее и последующее. К ним относятся целые, символы, перечислимые типы.

Типы данных указываются при объявлении любых переменных и функций. Например:

double а = 5.4, b = 2;

int с;

void F1(double А);

Пользователь может вводить в программу свои собственные типы. Объявления типов могут делаться в различных местах кода. Место объявления влияет на область видимости или область действия так же, как и в случае объявления переменных.

Синтаксис объявления типа:

typedef определение типа идентификатор;

Здесь идентификатор это вводимое пользователем имя нового типа, а определение типа описание этого типа. Например, оператор:

typedef double At[101];

объявляет тип пользователя с именем Ar как массив из 10 действительных чисел. В дальнейшем на этот тип можно ссылаться при объявлении переменных. Например:

Ar А = (1,2,3,4,5,6,7,8,9,10);

Объявление типа с помощью typedef можно использовать и для создания нового типа, имя которого будет являться псевдонимом стандартного типа С++. Именно так в C++ Builder многие встроенные типы компонентов Object Pascal приведены к типам, характерным для С++. Эти переопределения типов содержатся в файле sysdefs.h. Например:

typedef bool Boolean;

typedef int Integer;

typedef short Smallint;

typedef unsigned char Byte;

Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий


Поиск по сайту