![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| GoldFinch |
|
||||||||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
есть набор структур с данными, для каждой структуры есть код который ее обрабатывает, для этого кода есть общий "контекст" (данные) в котором он работает
каждая структура имеет свой id, допустим целое число по сети, или из файла, приходит буфер который содержит данные какой-то структуры, и id этой структуры надо написать код который по полученному id определит какая структура лежит в буфере и выполнит код ее обработки. (каждая структура имеет конструктор который загружает ее из буфера) допустим, что "контекст" - это класс, код обработки - метод этого класса, перегруженный для каждой структуры. (все можно сделать наоборот, например код обработки- метод структуры, и ему передается контекст)
я пока что придумал примерно три решения 1) switch
2) саморегистрирующиеся фабрики
в этом варианте добавлять новые структуры удобно, все сосредоточенно в одном месте 3) списки типов
Какие еще могут быть варианты? |
||||||||
|
|||||||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |