gpt4 book ai didi

c++ - 如何在 UML 中表示从模板参数的继承?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:41:33 24 4
gpt4 key购买 nike

使用 UML,我如何表示 A< Foo >在下面的代码中?

template< class T > 
class A : public T
{
/* ... */
};

class Foo { };

A< Foo > a_foo;

我的第一个猜测是这样的(为可怜的 ascii 艺术道歉......并向 Jon Skeet 道歉),但我怀疑它是不正确的。

            ________________
| |
| |
| Foo |
| |
|______________|
/:\ /|\
«bind»(Foo) : |
: | .......
__:____|___: T :
| :.....:
| |
| A |
| |
|______________|

最佳答案

有一个提案,由 U.M.L.设计师,但是,它还不是标准的一部分。

如果没有任何模板参数,类型为“A”的对象“a”可能是这样的:

+--------------------+
| a: A |
+--------------------+
| [+] doSomething(); |
+--------------------+

对象“a”是“a”的模板,类型参数为“Foo”,可以这样表示:

                  +-----+
+-----------------| Foo |
| +-----+
| a: A |
+--------------------+
| [+] doSomething(); |
+--------------------+

请注意,在 U.M.L. 中,当您声明一个类时,它们由一个矩形表示,而特定对象(例如“a”)由带圆角的矩形表示。有些人和工具不遵循“圆角”规范。

干杯。

关于c++ - 如何在 UML 中表示从模板参数的继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11453540/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com