Schumi |
Отправлено: 24.08.2005, 10:35 |
|
Машинист паровоза
Группа: Участник
Сообщений: 206
|
Сейчас пишу под Делфи. И столкнулся с такой проблемой — мне нужно чуть изменить метод SaveToStream. Я просто скопировал classes.pas и правлю. Все нормально, а как сделать это под bcb?
|
|
GIZMO |
Отправлено: 24.08.2005, 10:58 |
|
Машинист паровоза
Группа: Участник
Сообщений: 174
|
QUOTE (Schumi @ 24/08/2005, 10:35) | Сейчас пишу под Делфи. И столкнулся с такой проблемой — мне нужно чуть изменить метод SaveToStream. Я просто скопировал classes.pas и правлю. Все нормально, а как сделать это под bcb? |
TStrings is the base class for objects that represent a list of strings.
+
virtual void __fastcall SaveToStream(TStream* Stream);
т.е. унаследовать и переопределить.
|
|
gvg |
Отправлено: 24.08.2005, 10:59 |
|
Машинист паровоза
Группа: Участник
Сообщений: 222
|
Сделать потомка от TStrings с перегруженной функцией, и использовать его. |
|
Schumi |
Отправлено: 24.08.2005, 18:36 |
|
Машинист паровоза
Группа: Участник
Сообщений: 206
|
Это понятно. Но проблема в другом — у меня есть большой проект: где куча всяких ричэдитов и мемо, и там везде где надо и не надо стоят вызов метода SaveToStream их Lines.
Сейчас я просто сделал функция, которая получает параметр TStrings — и на базе его данных уже выполняют некоторые действия. Но хотелось как-то педагогичней.
|
|
Георгий |
Отправлено: 24.08.2005, 20:09 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
с самого начала надо было использовать фабрики классов.
Отредактировано Георгий — 24/08/2005, 21:10 |
|
GIZMO |
Отправлено: 25.08.2005, 09:12 |
|
Машинист паровоза
Группа: Участник
Сообщений: 174
|
QUOTE (Георгий @ 24/08/2005, 20:09) | с самого начала надо было использовать фабрики классов. |
???
|
|
Schumi |
Отправлено: 25.08.2005, 18:46 |
|
Машинист паровоза
Группа: Участник
Сообщений: 206
|
И правда. Что это такое?
|
|
Георгий |
Отправлено: 25.08.2005, 22:57 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
правильное название — Фабрика объектов, но все называют фабрики классов (Class Factory). это стандартный шаблон проектирования. поэтому отсылаю к Андрею Александреску — Современное проектирование на С++.
советую купить 3 часть в магазине.
а pfd 1 части выложил на http://www.webfile.ru/480881
файл будет жить до 1 сентября.
PS. шаблон visitor тоже интересен и, возможно, для решения этой частной проблемы подойдёт лучше.
Отредактировано Георгий — 26/08/2005, 00:12 |
|
GIZMO |
Отправлено: 26.08.2005, 10:05 |
|
Машинист паровоза
Группа: Участник
Сообщений: 174
|
QUOTE (Георгий @ 25/08/2005, 22:57) | правильное название — Фабрика объектов, но все называют фабрики классов (Class Factory). это стандартный шаблон проектирования. поэтому отсылаю к Андрею Александреску — Современное проектирование на С++.
советую купить 3 часть в магазине.
а pfd 1 части выложил на http://www.webfile.ru/480881
файл будет жить до 1 сентября.
PS. шаблон visitor тоже интересен и, возможно, для решения этой частной проблемы подойдёт лучше. |
Какая здесь "частная проблема" или как связан п.8.1. из "Современное проектирование на С++" и данный топик.
|
|
Георгий |
Отправлено: 26.08.2005, 21:54 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
не, ну как связаны? напрямую.
Schumi спросил "как граммотно сделать" — ему ответил, как грамотно ко всем классам по тихому добавить (переопределить) метод и не гемороиться.
Visitor, после того,как проспали ФК самое оно.
Отредактировано Георгий — 26/08/2005, 22:56 |
|