《C++面向对象高效编程(第2版)》——2.25 统一建模语言(UML)

简介:

本节书摘来自异步社区出版社《C++面向对象高效编程(第2版)》一书中的第2章,第2.25节,作者: 【美】Kayshav Dattatri,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.25 统一建模语言(UML)

C++面向对象高效编程(第2版)
本节将概述UML的一些特点。许多示例出自UML1.0版本的说明文档。

类用矩形表示,如图2-15所示。类名通常用粗体表示,如图中的Person所示。属性(可选类型和初始值)在类名下的第二栏(或框)中列出。操作(可选参数列表和返回类型)在类名下的第三栏中列出列表。在类的高级概述图(overview diagram)中,第二栏和第三栏可以省略,只在矩形中显示类名即可。

在类名的上方可以规定类的衍型(stereotype)。衍型表明它是何种类型的类,如异常类、控制类、接口类等。衍型包含在一对双尖括号(« »)符号中,该符号通常可以在大多数

image

图2-16

符号集中找到。为了方便起见,也可以使用一对(<< > >)表示(见图2-16)。

如图2-16所示,bad_cast类是一个衍型为exception的类,表明该类将用于异常管理(详见第10章)。类似地,PrintQueManager是一个单例类(该类只能创建一个对象,详见第9章)。衍型在这里的目的是指明类的性质。

抽象类(见第5章)的名称用斜体表示(见图2-17),抽象操作也用斜体表示。

对象用矩形表示,矩形中的对象名和类名带下划线(见图2-18)。

顶格中以对象名:类名的形式显示。匿名对象可省略对象名。如果不显示类名,也不要显示:。

可依个人喜好绘制表示类和对象的图形大小。

相关文章
|
1月前
|
机器学习/深度学习 人工智能 测试技术
【软件设计师备考 专题 】软件工程的未来:面向构件和统一建模语言(UML)
【软件设计师备考 专题 】软件工程的未来:面向构件和统一建模语言(UML)
71 0
|
8天前
|
C++
面向对象的C++题目以及解法2
面向对象的C++题目以及解法2
17 1
|
9天前
|
缓存 编译器 API
NumPy与其他语言(如C/C++)的接口实践
【4月更文挑战第17天】本文介绍了NumPy与C/C++的接口实践,包括Python与C/C++交互基础、NumPy的C API和Cython的使用。通过案例展示了如何将C++函数与NumPy数组结合,强调了内存管理、类型匹配、错误处理和性能优化的最佳实践。掌握这些技能对于跨语言交互和集成至关重要。
|
18天前
|
程序员 C++
C++语言模板学习应用案例
C++模板实现通用代码,以适应多种数据类型。示例展示了一个计算两数之和的模板函数`add&lt;T&gt;`,可处理整数和浮点数。在`main`函数中,展示了对`add`模板的调用,分别计算整数和浮点数的和,输出结果。
12 2
|
18天前
|
存储 人工智能 机器人
【C++面向对象】C++图书管理系统 (源码)【独一无二】
【C++面向对象】C++图书管理系统 (源码)【独一无二】
|
23天前
|
存储 人工智能 BI
【C++面向对象】C++银行卡管理系统(源码+论文)【独一无二】
【C++面向对象】C++银行卡管理系统(源码+论文)【独一无二】
|
1月前
|
算法 IDE Java
【软件设计师备考 专题 】面向对象程序设计语言:C++、Java、Visual Basic和Visual C++
【软件设计师备考 专题 】面向对象程序设计语言:C++、Java、Visual Basic和Visual C++
41 0
|
1月前
|
Java API 开发工具
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用(三)
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用
30 0
|
1月前
|
Java 数据处理 数据库
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用(二)
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用
34 0
|
1月前
|
存储 算法 Java
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用(一)
【软件设计师备考 专题 】C、C++、Java、Visual Basic、Visual C++等语言的基础知识和应用
34 0