![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Унаследование структуры [D7, XP]
Dmitry_177 © (2007-03-26 12:08:00)Есть структура:
type
TData = packed record
a: integer;
b: array [0..255] of Char;
end;
Хочу туда добавить еще один параметр, например c: integer;делаю так:
TNewData = packed record
a: integer;
b: array [0..255] of Char;
c: integer;
end;
И так не работает.. Подскажите как правильно это сделать? или это вообще никак не делается и нужно просто новую структуру создавать, т.е. так:
TNewData = class(TData)
c: integer;
end;
Kolan (2007-03-26 12:27:00) [1]
> Так и в Delphi можно.
Без object'а ессно.
Kolan (2007-03-26 12:27:00) [2]> спасибо =)
Использовать классы ессно предпочтительнее, тк на 99% гарантирую у тя найдутся методы которые туду можно будет добавить
Kolan (2007-03-26 12:26:00) [3]> Правда там еще в структуры методы можно добавлять :)
Так и в Delphi можно.
Хаванагил (2007-03-26 12:23:00) [4]плюсплюсная структуро это все равно что тип object в паскале или где там он был :) там тоже методы можно!
Dmitry_177 (2007-03-26 12:23:00) [5]спасибо =)
MikePetrichenko (2007-03-26 12:21:00) [6]А в сях делается, что очень удобно. Правда там еще в структуры методы можно добавлять :)
Kolan (2007-03-26 12:18:00) [7]Наследовать структуры НЕЛЬЗЯ.
Используй класс.
_Аноним (2007-03-26 12:18:00) [8]Для структур - не делается.
Или делай "предка" классом, или дублируй поля
или держи первую структуру во второй:
TNewData = packed record
Data: TData;
c: integer;
end;
_Аноним (2007-03-26 12:18:00) [9]Для структур - не делается.
Или делай "предка" классом, или дублируй поля
или держи первую структуру во второй:
TNewData = packed record
Data: TData;
c: integer;
end;
Dmitry_177 (2007-03-26 12:15:00) [10]извените меня, перепутал немного с вопросом, вот правильно так будет:
Есть структура:
type
TData = packed record
a: integer;
b: array [0..255] of Char;
end;
Хочу туда добавить еще один параметр, например c: integer; делаю так:
TNewData = class(TData)
c: integer;
end;
И так не работает.. Подскажите как правильно это сделать? или это вообще никак не делается и нужно просто новую структуру создавать, т.е. так:
TNewData = packed record
a: integer;
b: array [0..255] of Char;
c: integer;
end;