Вверх ↑
Ответов: 963
Рейтинг: 12
#1: 2015-06-02 03:33:03 ЛС | профиль | цитата
AlexKir
(Возможно я не понял контекст )

Я плохо объяснил.
Как через точку передать указатель с меньшем количеством преобразований в передающем и принимающем квадратике.


unit Share
....
##ToXXX
function ToString(const Data:TData) :string;
function ToInteger(const Data:TData) :THiInt;
function ToReal(const Data:TData) : real;
function ToStream(var Data:TData) : PStream;
function ToBitmap(var Data:TData) : PBitmap;
function ToIcon(var Data:TData) : PIcon;
*function ToObject(var Data:TData) : pointer;
function ToFont(var Data:TData) : PFontRec;
function ToTypes(var Data:TData) : PType;

// ##_DoData
function _DoData(Value:THiInt): TData; overload;
function _DoData(Value:real) : TData; overload;
function _DoData(const Value:string) : TData; overload;
function _DoData(const Value:TData): TData; overload;
function _DoData(Value: PStream):TData; overload;
function _DoData(Value: PBitmap):TData; overload;
function _DoData(Value: PMatrix):TData; overload;
*function _DoData(Value: PType):TData; overload;

// ##CreateData
procedure dtData(var Data:TData; const Value:TData);
procedure dtNull(var Data:TData);
procedure dtInteger(var Data:TData; Value:integer);
procedure dtReal(var Data:TData; Value:real);
procedure dtString(var Data:TData; const Value:string);
procedure dtArray(var Data:TData; Value: PArray);
procedure dtMatrix(var Data:TData; Value: PMatrix);
procedure dtBitmap(var Data:TData; Value: PBitmap);
procedure dtStream(var Data:TData; Value: PStream);
procedure dtObject(var Data: TData; id:integer; Value: pointer);
procedure dtRect(var Data:TData; Value: pointer);
procedure dtIcon(var Data:TData; Value: PIcon);
procedure dtType(var Data:TData; Value: PType);



function _IsStr(const Data:TData):boolean;
function _IsInteger(const Data:TData):boolean;
function _IsFont(const Data:TData):boolean;
function _IsStream(const Data:TData):boolean;
function _IsBitmap(const Data:TData):boolean;
function _IsIcon(const Data:TData):boolean;
function _IsObject(const Data:TData; id:integer):boolean;
function _IsNull(const Data:TData):boolean;
function _IsBreak(const Data:TData):boolean;
function _IsTypes(const Data:TData):boolean;
function _IsType(const Data:TData):integer;

...
карма: 0

0