Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Делфи _ Тип данных PInteger

Автор: Shadow 8.11.2003 6:12

Привет
=-=-=
Вот встретился тип данных PINTEGER
в учебнике его не нет в справочнике нет
но он применяется
что за тип и что за данные он берет
-=-=-
Обнаружал его по System.PInteger он ссылается на ^Integer;
но не принимает их

Автор: ___ALex___ 8.11.2003 6:50

P - Pointer
PByte = ^Byte;
PString = ^String;
PChar = ^Char;
и тд
"но не принимает их"
покажи код который не принимает

Автор: ___ALex___ 8.11.2003 6:55

procedure TForm1.Button1Click(Sender: TObject);
var
PI: PInteger;
I: Integer;
begin
I := 7;
PI := @I;
PI^ := 19;
Caption := IntToStr(I) // I = 19
end;

Автор: Shadow 8.11.2003 20:01

smile.gif
-=-=-=-
Я просто хотел исползовать функ API
ExtTextOut (Handle, x, y, парам, RECT, 'текст', число сим в строк, массив значен интервал);
-=-=-=-
все впрнципе работ кроме
массив значен интервал
-=-=-=-=-=
Вот он и есть PINteger
-=-=-=-
Есть у кого нибудь пример применения этой фнукции

Автор: ___ALex___ 8.11.2003 20:17

procedure TForm1.Button1Click(Sender: TObject);
var
Mas: Array[1..5] of Integer;
begin
Mas[1] := 10;
Mas[2] := 15;
Mas[3] := 25;
Mas[4] := 40;
Mas[5] := 70;
ExtTextOut(Canvas.Handle, 10, 10, ETO_CLIPPED, nil, 'String', 6, @Mas)
end;


читай лучше оргинальное описание в SDK)))

Автор: Shadow 8.11.2003 21:19

smile.gif
-=-=
Спасибо
-=-=

Автор: Vit 9.01.2004 23:58

Соглашение Дельфи такое  (вы вольны не соблюдать его, но Борланд его блюдёт очень строго)
1. Старые типы стандартного паскаля остались как есть
2. Новые типы, типы объектов всегда начинаются с буквы "T" (от слова Type)
3. Все типы которые начинаются с буквы P представляют из себя ссылки на соответствующий класс
4.  Все типы начинающиеся на I - интерфейсы
5. Все типы начинающиеся на У -классы исключений (Exceptions)