UML, jak mogę reprezentować A<Foo>
w poniższym kodzie?Jak mogę reprezentować dziedziczenie z parametru szablonu w języku UML?
template< class T >
class A : public T
{
/* ... */
};
class Foo { };
A<Foo> a_foo;
Coś tak (przepraszam za słabą ASCII Art ... i Jon Skeet) jest mój pierwszy przypuszczenie, ale podejrzewam, że nie jest prawidłowe.
________________
| |
| |
| Foo |
| |
|______________|
/:\ /|\
«bind»(Foo) : |
: | .......
__:____|___: T :
| :.....:
| |
| A |
| |
|______________|
Czy CRTP nie opisuje klasy dziedziczącej z klasy szablonu, w której dziedziczy się jako parametr szablonu? W takim przypadku łącze generalizacyjne powinno mieć przeciwny kierunek. Pokazana zależność powiązania jest poprawna IMHO. –
@ g-makulik - masz rację (jak Luchiane wskazał poniżej). Zmodyfikowałem tytuł. – PaulH
@Luc Touraille - dobry tytuł. :) – PaulH