UML 中的复杂类型定义
Complex typedef in UML
我想知道如何在 UML 中表示复杂的 typedef:
class Foo {
protected:
typedef std::pair<uint64_t, Bar> BarPair;
typedef std::set<BarPair> BarPairSet;
std::map<uint32_t, BarPairSet> m_indexedBarPairSet
};
Bar
不是 Foo
的一部分。
对于结构,您可以使用 <<dataType>>
(参见 UML 2.5 第 165 页)。 (部分)您的代码如下所示:
没有直接的方式来表示您的 typedefs,当然可以有例如 class BarPair 依赖于模板 class pair 但没有支持绑定的标准方法。
如果不是 typedef std::pair BarPair 而是 BarPair : public std::pair {} 我们有
那么如何使用构造型 typedef 扩展 UML 以得到类似的东西:
或使用 typedef-bind 构造实现并使用 typedef 实现 BarPair 和 BarPairSet
我想知道如何在 UML 中表示复杂的 typedef:
class Foo {
protected:
typedef std::pair<uint64_t, Bar> BarPair;
typedef std::set<BarPair> BarPairSet;
std::map<uint32_t, BarPairSet> m_indexedBarPairSet
};
Bar
不是 Foo
的一部分。
对于结构,您可以使用 <<dataType>>
(参见 UML 2.5 第 165 页)。 (部分)您的代码如下所示:
没有直接的方式来表示您的 typedefs,当然可以有例如 class BarPair 依赖于模板 class pair 但没有支持绑定的标准方法。
如果不是 typedef std::pair BarPair 而是 BarPair : public std::pair {} 我们有
那么如何使用构造型 typedef 扩展 UML 以得到类似的东西:
或使用 typedef-bind 构造实现并使用 typedef 实现 BarPair 和 BarPairSet