Вниз
Скачать: CL | DM;

Почему компилируется?   Найти похожие ветки 

 
Cobalt ©   (2013-01-17 11:16) [0]

uses  ... Grids...

 TStringGridEx = class(TStringGrid)
 private
   fSelectStarted: boolean;
   function CalcSelection(const ACol, ARow: integer): boolean;
   procedure SetSelectStarted(const Value: boolean);
   procedure DrawSelectStarted;
 protected
   property SelectStarted: boolean read fSelectStarted write SetSelectStarted;
   procedure DrawCell(ACol, ARow: Longint; ARect: TRect;
     AState: TGridDrawState); override;
   procedure MouseDown(Button: TMouseButton; Shift: TShiftState;
     X, Y: Integer); override;
   procedure KeyDown(var Key: Word; Shift: TShiftState); override;
 end;

 TStringGrid = class(TStringGridEx);

 TfrmReserveInfo = class(TForm)
   pnlTop: TPanel;
   cbTimeStep: TComboBox;
   lblTimeStep: TLabel;
   sgReserveInfo: TStringGrid;

Я ожидал увидеть ошибку типа "Идентификатор уже объявлен"


 
sniknik ©   (2013-01-17 11:21) [1]

без упреждающего объявления типов было бы затруднительно делать ссылки на самого себя... например. а это распространенная практика.


 
icWasya ©   (2013-01-17 11:35) [2]

В одном модуле создать класс в тем же именем действительно невозможно. А так - в первой строке ссылка на класс Grids.TStringGrid, а во второй - объявление нового класса с именем TStringGrid.


 
sniknik ©   (2013-01-17 12:08) [3]

> В одном модуле
кстати да.
можешь после где нибудь нарваться на ошибку "не совпадение типов TStringGrid и TStringGrid"... просто объявленных в разных модулях.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.004 c
15-1366947804
Genry_
2013-04-26 07:43
2013.10.06
Oracle between


2-1357874385
Ghost del vonte
2013-01-11 07:19
2013.10.06
SFX


15-1363095630
О-Сознание
2013-03-12 17:40
2013.10.06
Трабла с директивой


15-1367320515
Pit
2013-04-30 15:15
2013.10.06
Потокобезопасно ли ADO?


2-1358236774
samborskijj
2013-01-15 11:59
2013.10.06
Неверный запрос (слишком мало параметров)




   Наверх