|
Cannot find default constructor to initialize base class
|
|||
---|---|---|---|
#18+
Класс: class TToolTipHintWindow : public THintWindow { private: TAlignment FAlign; protected: void __fastcall Paint(void); public: __fastcall TToolTipHintWindow(Classes::TComponent* AOwner); __property TAlignment Align = { read=FAlign, write=FAlign }; __published: }; При его инициализации получается такая бяка ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2003, 09:14 |
|
Cannot find default constructor to initialize base class
|
|||
---|---|---|---|
#18+
Поскольку у базового класса отсутствует конструктор по умолчанию, то необходимо сделать явный вызов имеющегося у него конструктора. Т.е. в описание контструктора дочернего класса нужно добавить вызов базового: __fastcall TToolTipHintWindow(Classes::TComponent* AOwner):THintWindow(AOwner); ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2003, 14:21 |
|
Cannot find default constructor to initialize base class
|
|||
---|---|---|---|
#18+
А кто сказал, что подобный вызов решит указанную проблему? Ведь параметр AOwner может присутсвовать только в классе потомка, а в базаовом совершенон другоею В этом случае нужно или прописывать умолчания для параметров контруктора базаового класса в его описании или явно передвать их через констуктор потомка. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2003, 13:43 |
|
|
start [/forum/topic.php?fid=57&msg=32095424&tid=2036450]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
29ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
others: | 266ms |
total: | 382ms |
0 / 0 |