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

Вниз

Дельфи 5 или код ?   Найти похожие ветки 

 
VID ©   (2003-07-14 23:39) [0]

uses
Windows, Messages, SysUtils, Classes, FIBQuery, pFIBQuery,pFIBProps,pFIBDatabase,FIBDatabase,pFIBDataset;

type
TIBQuery=class;

TTranslateIBXField=class
private
FOwner:tibquery;
function GetDefRef(const Idx: Integer): TFIBXSQLVAR;
procedure SetDefRef(const Idx: Integer; const Value: TFIBXSQLVAR);
public
property DefRef[const Idx: Integer]: TFIBXSQLVAR read GetDefRef write SetDefRef;default;
function Count:integer;
constructor create(owner:tibQuery);
end;
---------------------
это малая часть одного юнита.
при компиляции получаю ошибку
[Error] ibquery.pas(9): Type "TIBQuery" is not yet completely defined
а курсор переходит в

type
TIBQuery=class;


как решить эту проблему ? (delphi5)


 
Ihor Osov'yak ©   (2003-07-14 23:45) [1]

> как решить эту проблему ? (delphi5)

Сделать то, что она просит. То есть "completely defined
"

Хотя бы так:





TIBQuery=class;

TTranslateIBXField=class
private
FOwner:tibquery;
function GetDefRef(const Idx: Integer): TFIBXSQLVAR;
procedure SetDefRef(const Idx: Integer; const Value: TFIBXSQLVAR);
public
property DefRef[const Idx: Integer]: TFIBXSQLVAR read GetDefRef write SetDefRef;default;
function Count:integer;
constructor create(owner:tibQuery);
end;


TIBQuery=class

end;




 
VID ©   (2003-07-14 23:57) [2]

type
TIBQuery=class;
предполагается как форвард-описание класса
переиначу вопрос
как корректно проделать форвард-описание класса в дельфи5 ?


 
Ihor Osov'yak ©   (2003-07-15 00:49) [3]

Так, как я привел пример.

Фактически, это не форвард-декларация, это определение поинтера (в делфи все экземпляра классса - диначеские). И здесь действует правило для форвард-описаний типизированных указателей - если декларация типизированного указателя идет перед соотв. типом, то это должно быть в одной секции type.

То есть следующая конструкция корректна:

type
TIBQuery=class;
TIBQuery=class

end;


а вот это - уже нет:

type
TIBQuery=class;
type
TIBQuery=class

end;




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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
7-91936
Forward
2003-05-18 00:09
2003.07.28
Как с помощью Делфи узнать загруженность процессора ???


14-91856
Дмитрий К.К.
2003-07-11 06:17
2003.07.28
Именинники 11 июля


14-91842
euru
2003-07-10 20:35
2003.07.28
Оформление кода


6-91797
exciter__
2003-05-22 14:31
2003.07.28
Проблема с модемом (определить поднятие трубки)


11-91702
lomman
2002-11-24 23:12
2003.07.28
TabControl