|
|
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
как загнул то :) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. таким образом параметризировать шаблон сможет не абы какой класс, а только такой, который имеет методы ::init() и ::doSomething() вот вопрос - это нормально так сделать или это моветон? мне кажется в моей задаче это приемлемое решение, но если это не "красиво" то я могу поискать другие пути :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 13:04 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
А нах? 1. Как то тут расговаривали, что конструктор + рядышком инит - плохой тон. 2. Не понятны цели. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 13:07 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
цели долго объяснять. пишу с++ обертку к одной библиотеке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 13:09 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
тут нет "конструктор + рядышком инит". тут есть конструктор одного класса и инит совершенно другого. я помню то обсуждение - это совсем другое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 13:10 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
alex_kтут нет "конструктор + рядышком инит". тут есть конструктор одного класса и инит совершенно другого. я помню то обсуждение - это совсем другое. Тьфу ты. Точно. Прикольно. Применение класса, только после инициализации? Т.е. сгородить шаблонный класс, только для того, чтобы было определенно, что он инициализирован. Мне кажется это перебор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 13:26 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
Может быть несколько вариантов Type с doSomething(); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 13:30 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
и init(). Кажется, для этого может шаблон пригодиться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 13:30 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
GryzМожет быть несколько вариантов Type с doSomething(); Для этого делается интерфейс ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 13:45 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
да. там на самом деле гораздо больше вариантов. я пробовал виртуальные классы, но что-то у меня совсем не заладилось :) шаблоном мне показалось будет лучше... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 13:46 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
Akh GryzМожет быть несколько вариантов Type с doSomething(); Для этого делается интерфейс Да. Если ты разработчик этих классов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 13:56 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
а что если использовать фабрику для этого дела? Примерно так (плагиат с Брюса Эккеля): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 14:01 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
alex_kда. там на самом деле гораздо больше вариантов. я пробовал виртуальные классы, но что-то у меня совсем не заладилось :) шаблоном мне показалось будет лучше... У меня так ладится. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Даже фабрику сделал благодаря maXmo и blinded. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 14:03 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
man_555 В форуме есть топик посвященный фабрике, причем классы сами в ней регистрятся. Не помню, положил ли я туда свой окончательный результат, но там есть много примеров и очень интересно обсуждение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 14:06 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
Gryz Akh GryzМожет быть несколько вариантов Type с doSomething(); Для этого делается интерфейс Да. Если ты разработчик этих классов. Конечно. Но автор, все таки разработчик. Хотя, может он преследует и еще какие-то другие цели. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 14:07 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
а если так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. суть в чем. сам шаблонный класс намного сложнее, но главное в том, что я смогу написать ЛЮБОЙ класс, который имеет метод doSomething() И конструктор по умолчанию. по сути, это будут разные сигналы от сторонней библиотеки. и я хочу дать возможность пользователю самому определять реакцию на эти события максимально независимо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 14:17 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
Akh Gryz Akh GryzМожет быть несколько вариантов Type с doSomething(); Для этого делается интерфейс Да. Если ты разработчик этих классов. Конечно. Но автор, все таки разработчик. Хотя, может он преследует и еще какие-то другие цели. Я имелл ввиду классы T. Он же пишет, что пишет обертку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 14:26 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
alex_kа если так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. суть в чем. сам шаблонный класс намного сложнее, но главное в том, что я смогу написать ЛЮБОЙ класс, который имеет метод doSomething() И конструктор по умолчанию. по сути, это будут разные сигналы от сторонней библиотеки. и я хочу дать возможность пользователю самому определять реакцию на эти события максимально независимо. По сути твой шаблонный класс является контейнером объектов опрделенного (одного) класса. Для каждого класса у тебя свой контейнер. Как лучше релазиовать контейнер я подсказать врядли смогу, так как не знаю твою специфику (например, как ты определяешь метод какого класса должен быть вызван) и не особо знаком с контейнерами (для это можно почитать банду четырех, я еще не осилил :) ). Не знаю, плохо ли это в твоей задаче, но твой контейнер, может содержать только объекты опрделенного класса. Если классы разные, то они должны наследоваться от этого класса. Это и есть интерфейс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 14:30 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
GryzЯ имелл ввиду классы T. Он же пишет, что пишет обертку Пусть автор сам решает, что он пишет. :) ЗЫ: А что за T? Template? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 14:33 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
Akh GryzЯ имелл ввиду классы T. Он же пишет, что пишет обертку Пусть автор сам решает, что он пишет. :) ЗЫ: А что за T? Template? Конечно. Я имел ввиду Type. Ну которыми подставляются вместо Type :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 14:35 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
Akh man_555 В форуме есть топик посвященный фабрике, причем классы сами в ней регистрятся. Не помню, положил ли я туда свой окончательный результат, но там есть много примеров и очень интересно обсуждение. Сорри за оффтопик, если не в лом, какая из? Я искал по "фабрика". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 16:28 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
Извините, но я из ваших кодов ничего не понял, да и ошибок там. Ты спроси русским языком, кстати здорово помогает самому понять чтожк делать. ЗЫ По аккуратней с этой фабрикой, там синглетон не всякий подходит, то который юзал я не подходит точно - он феникса фабрика набивалась статическими перемеными... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 19:04 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
Это нормально требовать от параметра инстанциации шаблонного класса какой-то функциональности, удовлетворения интерфейсам и т.п. Для этого и служат шаблоны, что они это умеют делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 20:37 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
alex_kпо сути, это будут разные сигналы от сторонней библиотеки. и я хочу дать возможность пользователю самому определять реакцию на эти события максимально независимо.что-то мне это напоминает :) про события топик тоже был: почитай , может, заинтересуешься. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2006, 22:33 |
|
||
|
архитектура шаблонного класса
|
|||
|---|---|---|---|
|
#18+
MasterZivЭто нормально требовать от параметра инстанциации шаблонного класса какой-то функциональности, удовлетворения интерфейсам и т.п. Для этого и служат шаблоны, что они это умеют делать. вот такого примерно ответа я и ожидал :) все сделал, все работает :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2006, 19:37 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=33990048&tid=2030494]: |
0ms |
get settings: |
11ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
192ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
2ms |
| others: | 242ms |
| total: | 555ms |

| 0 / 0 |
