gpt4 book ai didi

c++ - UML 对描述模板化代码有用吗?

转载 作者:可可西里 更新时间:2023-11-01 16:21:59 25 4
gpt4 key购买 nike

我想知道 UML 是否有助于描述大量模板化的代码。我知道 UML (vector<T> <---- <<bind>> ---- vector<int>) 中有参数化类的概念,但这不足以描述我们可以与模板建立的复杂duck-typed 关系。我总是可以在这些类之间建立关联,但在我看来,这实际上无助于理解它是如何工作的。

此外,考虑到例如 STL 库,算法通常作为函数实现,因此不太适合 OOP 模型,尽管它们的行为仍然很像在类之间引入关联的对象。

那么,画UML图来描述这样的模板化代码有意义吗?如果是这样,哪种图表最有用——在“标准”OOP 中,我看到大部分时间都在使用类图,但对于模板化代码,其他类型的图表可能更有用吗?如果 UML 不太适合,我还能使用什么?

最佳答案

我认为这取决于。

如果不同的实例化会导致明显不同的行为或关系,那么虽然可以使用 UML 进行建模,但它会很丑陋。另一方面,如果不同实例化的行为真的有那么大不同,我不确定模板是否是个好主意。

但是,如果类之间的关系无论它们如何实例化都或多或少保持相同,那么 UML 类图将与对非参数化类建模这些关系一样有用。

关于c++ - UML 对描述模板化代码有用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5106455/

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