![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ООП. [Warning] при использовании класса в классе
User1 © (2004-12-14 15:00:00)Мастера, помогите с проблемой:
Описываю я некий класс. в поле класса я использую обьект другого класса:
type TMyClass = class
private
..............
fSStrings : TStrings;
....................
public
constructor Create;
destructor Destroy; override;
property SStrings : TStrings read fSStrings;
...................
end;
SStrings мне нужен просто как список строк.
далее чтобы с ним мне работать - надо создать. Пишу:
constructor TMyClass.Create;
begin
inherited Create;
fSStrings := TStrings.Create;
..............
end;
В итоге Delphi2005 на выделенную строку выдает кучу [Warning]:
W1020 Constructing instance of 'TStrings' containing abstract method 'TStrings.Get'
W1020 Constructing instance of 'TStrings' containing abstract method 'TStrings.GetCount'
W1020 Constructing instance of 'TStrings' containing abstract method 'TStrings.Clear'
и так далее.
Мастера скажите пожалуйста в чем ошибка и как от нее избавиться.
User1 (2004-12-14 15:46:00) [1]Ок. Спасибо.
Zacho (2004-12-14 15:46:00) [2]2 User1 (14.12.04 15:12) [3] :
Почитай в каком-нибудь учебнике про основы ООП, в частности - про полиморфизм.
Суслик (2004-12-14 15:43:00) [3]
>
> В данном случае будет критично или нет?
не критично.
Александр Иванов (2004-12-14 15:32:00) [4]Должно работать качественно.
User1 (2004-12-14 15:28:00) [5]
> на этот вопрос можешь ответить только ты - чего ты хочешь.
> От этого все зависит.
SStrings мне нужен просто как список строк.
все что я буду использовать - Create,Free,Clear,Add
Количество строк - не больше 10!
В данном случае будет критично или нет?
Суслик (2004-12-14 15:21:00) [6]
> Критично ли это
на этот вопрос можешь ответить только ты - чего ты хочешь. От этого все зависит.
> Просто и так и так вроде работает! :-)
Вот и хорошо. Оставь и дело с концом.
User1 (2004-12-14 15:12:00) [7]Спасибо помогло.
Еще вопросик:
если я хочу передать как переменную в некую процедуру етот список строк - я обязан прописать там тоже StringList или могу оставить Strings?
procedure MyProcedure(Sender: TObject; MyStrings : TStrings);
Критично ли это? Просто и так и так вроде работает! :-)
Рамиль (2004-12-14 15:05:00) [8]Использовать TStringList
MBo (2004-12-14 15:04:00) [9]fSStrings := TString List.Create;