У меня есть функция на С++, которую я пытаюсь воспроизвести в Delphi:
typedef double ANNcoord; // coordinate data type
typedef ANNcoord* ANNpoint; // a point
typedef ANNpoint* ANNpointArray; // an array of points
bool readPt(istream &in, ANNpoint p) // read point (false on EOF)
{
for (int i = 0; i < dim; i++) {
if(!(in >> p[i])) return false;
}
return true;
}
В Delphi я считаю, что правильно объявил типы данных.. (могу ошибаться):
type
IPtr = ^IStream; // pointer to Istream
ANNcoord = Double;
ANNpoint = ^ANNcoord;
function readPt(inpt: IPtr; p: ANNpoint): boolean;
var
i: integer;
begin
for i := 0 to dim do
begin
end;
end;
Но я не могу понять, как имитировать поведение функции C++ (вероятно, потому, что я не понимаю оператора битового сдвига).
Кроме того, мне нужно в конечном итоге выяснить, как передать набор точек из объекта Zeos TZQuery
в тот же тип данных, поэтому, если у кого-то есть какой-либо вклад в это, я был бы очень признателен.