| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: WinAPI и системное программирование > Почему Polyline() не работает с массивами |
| Автор: Coder 16.10.2007, 02:00 | ||
точки хранятся в массиве типа array of TPoint - это достаточно удобно в моей программе. По этим точкам нужно построить полилинию, пишу код:
и ничего.. если объявить массив статически array[1..10] of TPoint все строится без проблем. в чем здесь дело? |
| Автор: MetalFan 16.10.2007, 09:18 | ||
|
| Автор: Coder 16.10.2007, 10:40 |
| MetalFan, +1 а на что тогда указывает сам массив a? |
| Автор: Alexeis 16.10.2007, 13:43 |
переменная а хранит в себе указатель на массив в куче. function Polyline(DC: HDC; var Points; Count: Integer): BOOL; Var передаст по ссылке саму переменную (т.е. переменную указателя), а нужно по ссылке передать сам массив данных. |
| Автор: MetalFan 16.10.2007, 13:51 |
| по сути переменная-дин.массив сама по себе является указателем на 0 элемент массива. т.е. вероятно прокатит два подхода: 1. Polyline(DC,a[0],high(a)); 2. Polyline(DC,Pointer(a)^,high(a)); |