我有一个表示UI小部件的模板类。该类被称为(惊奇地)
如何使用UML表示
额外问题:这种情况下,有没有C++程序员认为UML有用?
Widget
。该类定义了graphics_type
(通过typedef
或类似方式),它可以是cairo_t
、HDC
、CDC*
或类似的东西。换句话说,Widget
定义了一个名为graphics_type
的类型,用于绘制内容。如何使用UML表示
Widget
和graphics_type
之间的关系?额外问题:这种情况下,有没有C++程序员认为UML有用?
typedef
吗? - Eitan T[<<typedef>>|name]
的typedef
类型的框。我可能会在侧面使用一个带有<<typedef>>
注释的uses
关系... 您可以下载并安装 BoUML(据我所知,它处理了typedef
),并反向工程一个小示例以查看它生成了什么。 - David Rodríguez - dribeastypedef
只是另一种类型的名称替换,是C++语言的一个特性。UML应该是与语言无关的,它应该完全省略任何特定于语言的特性。话虽如此,我会使用原始类(例如HDC
),可能会添加有关类别名的简短注释,但不再多说。至于类之间的关系,只需使用通常的聚合/组合(适合您的设计)。 - Eitan Ttypedef int (*foo)(Bar*)
,其中foo
是您要创建的别名)。我想知道是否有人想出了一种表示这种情况的方法。虽然我不认为UML每次都是必需的,但在勾勒模糊算法时,最好在编码之前先使用图表进行操作,以便您拥有某种蓝图。 - Thomas Thorogood