यूएमएल का उपयोग करके, मैं निम्नलिखित कोड में A<Foo>
का प्रतिनिधित्व कैसे कर सकता हूं?मैं यूएमएल में टेम्पलेट पैरामीटर से विरासत का प्रतिनिधित्व कैसे कर सकता हूं?
template< class T >
class A : public T
{
/* ... */
};
class Foo { };
A<Foo> a_foo;
कुछ इस तरह (गरीब ascii कला के लिए क्षमा याचना ... और Jon Skeet करने के लिए) मेरा पहला अनुमान है, लेकिन मुझे लगता है कि यह सही नहीं है।
________________
| |
| |
| Foo |
| |
|______________|
/:\ /|\
«bind»(Foo) : |
: | .......
__:____|___: T :
| :.....:
| |
| A |
| |
|______________|
क्या सीआरटीपी एक टेम्पलेट वर्ग से उत्तराधिकारी वर्ग का वर्णन नहीं करता है, जहां विरासतकर्ता खुद को टेम्पलेट पैरामीटर के रूप में पास करता है? इस मामले में सामान्यीकरण लिंक में विपरीत दिशा होनी चाहिए। दिखाया गया बाध्य निर्भरता सही IMHO है। –
@ जी-makulik - आप सही हैं (जैसा कि लुचियान नीचे बताया गया है)। मैंने शीर्षक संशोधित किया है। – PaulH
@Luc Touraille - अच्छा शीर्षक। :) – PaulH