Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.07.28;
Скачать: [xml.tar.bz2];

Вниз

Дельфи 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.005 c
14-91852
NightAngel
2003-07-08 01:41
2003.07.28
Тест - какого типа вы программист.


6-91804
BlackIce
2003-05-16 16:23
2003.07.28
webbrowser.....как скопировать из него html-код ???


3-91628
HardClubber
2003-07-03 20:18
2003.07.28
Добавление и удаление записи


1-91758
yaJohn
2003-07-15 15:12
2003.07.28
Трабла с ObjectPascal. const mbNew = Succ ( High (TMsgDlgBtn) );


1-91715
Nikolai_S
2003-07-14 15:07
2003.07.28
Вызов процедур из TList





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский