|
Класс Шаблон на Диаграмме Классов
|
|||
---|---|---|---|
#18+
Есть такая конструкция внутри класса на С++ vector<Rect*> area; Как ее отобразить на диаграмме классов (ДК)? А то подзабыл я С++ и не пойму, что это за конструкция, а знакомый поросил нарисовать ДК на этот класс... Весь класс выглядит так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
З.Ы. Не знал куда податься, либо здесь писать либо в раздел С++. В общем, если не прав, модераторы надеюсь переведут в раздел С++ ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2006, 12:42 |
|
Класс Шаблон на Диаграмме Классов
|
|||
---|---|---|---|
#18+
Тебе area нужно челез ассоциациюизобразить или как член? Если как член так и пиши имя типа vector<Rect*>. Или создай класс vector<Rect*>. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2006, 18:36 |
|
Класс Шаблон на Диаграмме Классов
|
|||
---|---|---|---|
#18+
mcureenabТебе area нужно челез ассоциациюизобразить или как член? Если как член так и пиши имя типа vector<Rect*>. Или создай класс vector<Rect*>. А на диаграмме классов чем отличается "area нужно челез ассоциациюизобразить или как член", если Rect - это класс?? Правильнее это изоброзить через ассоциацию, но не пойму конструкцию vector<Rect*>, просто как класс "vector<Rect*>" - так отобразить класс нельзя, это не правильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2006, 10:02 |
|
Класс Шаблон на Диаграмме Классов
|
|||
---|---|---|---|
#18+
bas mcureenabТебе area нужно челез ассоциациюизобразить или как член? Если как член так и пиши имя типа vector<Rect*>. Или создай класс vector<Rect*>. А на диаграмме классов чем отличается "area нужно челез ассоциациюизобразить или как член", если Rect - это класс?? Правильнее это изоброзить через ассоциацию, но не пойму конструкцию vector<Rect*>, просто как класс "vector<Rect*>" - так отобразить класс нельзя, это не правильно. Т.е. тебе нужно изобразить ассоциацию шаблона Connector с Rect? В UML нет явного понятия * и template <class T> class vector. И если под * иногда понимают агрегацию, то для типа обозначения нет. Если строго, нужно создать класс vector<Rect*> от шаблона template <class T> class vector. Связать его ассоциацией 1..1 с Connector, и ассоциацией 0..* ordered с Rect. Но это выглядит громоздко и излишне усложняет модель. ИМХО, нужно навешивать тэги и стереотип на конец ассоциации и описать их семантику для генератора C++ кода (человека или программы). Можно навесить смысл на ordered и navigable, но в этом случае не ясно как различить vector и []. Если изображать как член, то создай класс vector<Rect*> от шаблона template <class T> class vector. Добавь в класс Connector член area укажи тип vector<Rect*>. Такое описание менее наглядно, но компактно и однозначно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2006, 10:51 |
|
|
start [/forum/topic.php?fid=33&fpage=59&tid=1549357]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 231ms |
total: | 357ms |
0 / 0 |