Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.18;
Скачать: CL | DM;

Вниз

смысл этого объявления и в каких целях можно использовать?   Найти похожие ветки 

 
Сатир ©   (2002-11-03 15:22) [0]

ATOM = Word;
{$EXTERNALSYM ATOM}


 
Сатир ©   (2002-11-03 20:26) [1]

даю мастерам неделю на раздумия, а остальным - как разберутся


 
Геннадий ©   (2002-11-03 20:40) [2]

Ну я так понимаю это какой-то атом... :)))


 
Ihor Osov'yak ©   (2002-11-03 20:47) [3]

ну я не совсем мастер, так что дам только намек -
see, please - AddAtom, DeleteAtom, FindAtom, GetAtomName, GlobalDeleteAtom, GlobalFindAtom, GlobalGetAtomName, MAKEINTATOM


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


 
PVOzerski ©   (2002-11-04 02:08) [4]

Тоже из разряда предположений (дома D3 стоит, там этого нет) - не с
name mangling ли связано? Поясню: обычно имена в obj-файлы попадают
не совсем в том виде, в котором их задает программист, к ним добавляется
служебная информация, причем ее содержание и форма зависят от
компилятора. Поэтому когда надо слинковать модули, сделанные разными
компиляторами, могут возникать проблемы. А Delphi, в принципе, приспособлен
к тому, чтобы совмещаться с Builder"ом. Правда, имена типов в нормальные
obj-файлы, вроде бы, попадать не должны. Но ведь Delphi поддерживает классы,
да еще RTTI - так что этого не избежать. Возможно, встреченный Вами код
ориентирован на линковку с Builder"ом, а эта директива определяет "внутреннее"
представление имени типа ATOM в obj-файле. Но лучше посмотрите Help, там это
наверняка разъясняется без догадок.


 
Сатир ©   (2002-11-06 18:04) [5]

этот код попался мне в Windows.pas, то искал я его там потому, что увидел в чужих исходниках следующие объявления:
{$J+}
const
paCursor : ATOM = 0;
paParentShowHint : ATOM =0;
paPopupMenu : ATOM =0;
paAutoSize : ATOM =0;
paViewStyle : ATOM =0;
paColorStyle : ATOM =0;
paBorder : ATOM =0;
paFieldName : ATOM =0;

и стало непонятно, зачем ATOM, а не просто Word?


 
Ученик ©   (2002-11-06 18:14) [6]

>Сатир © (03.11.02 15:22)
Syntax {$EXTERNALSYM identifier}
The EXTERNALSYM directive prevents the specified Delphi symbol from appearing in header files generated for C++. If an overloaded routine is specified, all versions of the routine are excluded from the header file.


 
Набережных С.   (2002-11-06 19:30) [7]

Существуют глобальная и локальные таблицы атомов структуры "ID-строка" или типа того. ID - и есть атом. Мы можем добавлять строки в таблицу и получать ее уникальный (в пределах таблицы)идентификатор.

>Ihor Osov"yak © (03.11.02 20:47)
Кстати, иногда очень полезная вещь. Когда нужно к виндозному окошку свои данные прилепить.

Для этого не обязательно использовать атом, хотя, вероятно, с ним поиск несколько быстрее.



Страницы: 1 вся ветка

Текущий архив: 2002.11.18;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
1-59082
Strumpf
2002-11-04 23:55
2002.11.18
Можно ли засунать MDI child в панель на родительском окне?


3-59042
KonstVD
2002-10-28 15:43
2002.11.18
запрос на большую базу


3-59034
Юрий
2002-10-29 23:32
2002.11.18
Где данные после TADOQuery?


1-59187
Кен
2002-11-08 04:14
2002.11.18
Как настроить RichEdit, чтобы он выглядел как Label ? Чтобы нельз


1-59235
Сатир
2002-11-03 15:22
2002.11.18
смысл этого объявления и в каких целях можно использовать?