Код: Выделить всё
Node.Data := TObject(17);Компилятор, естественно, ругается:
Код: Выделить всё
Hint: Conversion between ordinals and pointers is not portableИли, при обратном преобразовании:
Код: Выделить всё
if Integer(Node.Data) = 17 thenполучаем уже предупреждение:
Код: Выделить всё
Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.Собственно, вопрос: как вообще правильно передавать числовые данные через указатель? Выделять память, заносить туда число и присваивать указатель? Как-то громоздко получается, да и дополнительно потом отслеживать придётся при разрушении основного объекта, чтобы утечек не было...
Ну, или хотя бы, как отключить данные Warning и Hint? Хотя, конечно, хотелось бы разобраться в сути...
P.S. Прошу прощения за ламерский вопрос
