Цитата:
Ровно то - что я написал
p : pointer to int;
P^ := 3.3;
Повторюсь: выражение p^ не является указателем. КДС молча пройдёт через pointer_to_book := pointer_to_dog.
Цитата:
Пока я в КДС мне абсолютно побоку что там в с++, в котором указатели нужно перекладывать через нетипизированные или там делать reinterpret_cast. Ой-ой, а ведь так хотелось сократить код используя GetPointer()^.DoSomething()
Второе это отдельная проблема, не относящаяся к контролю типов указателей.
Цитата:
Вам срочно нужно абстрагироваться от сишного программирования, в КДС указатели имеют отношение к областям памяти выраженной в байтах, к типам они привязаны только одним местом, это количеством байт. Как раз основная работа в КДС и заключается, чтоб с помощью указателей из типа большей емкости взять только часть и к примеру поменять местами для отправки по каналу связи двух регистров модбаса. Поэтому Ваше предложение информировать о таких не соответствиях меня бы стало сильно раздражать при работе с проектом
... и сюда же...
Цитата:
Вы пришли в эту столовую, и о ужос - тут есть вилки, а ими можно выколоть себе глаз, и начинаете требовать чтоб их убрали.
Когда вы делаете, скажем, DWORD_TO_INT, вас это сильно раздражает? Или кому-то обязательность таких преобразований кажется глупым запретом на вилки?