求编程大神解释友元关系的UML图怎么画

求编程大神解释友元关系的UML图怎么画,第1张

#include<iostream>

using namespace std;

class MyDate{

private:

int year;

int month;

int day;

public:

MyDate(int _y,int _m,int _d);

void showDate();

friend int TD(MyDate &a,MyDate &b);//友元函数是朋友,不是家庭(类)成员。

MyDate::MyDate(int _y,int _m,int _d)

{

year=_y;

month=_m;

day=_d;

}

void MyDate::showDate(){

cout<<"日期是:"<<year<<"年"<<month<<"月"<<day<<"日"<<endl; 

int TD(MyDate &a,MyDate &b){

int days= (byear-ayear)365+(bmonth-amonth)30+(bday-aday);

if (days<0) return -days;

else return days; 

}

int main()

{

MyDate a(2005,10,12);

MyDate b(2006,12,26);

ashowDate();

bshowDate();

cout<<"两者差:"<<TD(a,b)<<"天";

return 0; 

}

我好蛋疼。本来在学js,现在搁着撸C++。算了,当复习啦哈哈。

UML中包含9种常用视图图。可以将这9种图分为两类,一类用于结构建模,称为结构图;一类用于行为建模,称为行为图。

原文出处:

结构图有4种,分别是:

类图(classdiagram)

类图显示一组类、接口、协作以及它们之间的关系。类图可用于说明系统的静态设计视图。包含主动类的类图可用于说明系统的静态进程视图。

对象图(objectdiagram)

UML图中对象图显示一组对象以及他们之间的关系。对象图是类图中发现的事物的实例的数据结构和静态快照。对象图也可用于说明系统的静态设计视图和静态的进程视图,但它是从现实或原型的方面来透视的(因为是类的实例)。

构件图(componentdiagram)

UML图中构件图显示了一组构件以及他们之间的关系。构件图可用于说明系统的静态实现视图。

实施图(deploymentdiagram)

UML图中实施图显示了一组节点以及他们之间的关系。实施图可用于说明系统的静态实施视图。

这4种图还有一些常见的变体,例如子系统图实际就是一个类图。

行为图

行为图有5种,分别是:

用况图(usecasediagram)

UML图中用况图用于组织系统的行为,描述了一组用况和参与者以及他们之间的关系。用况图用于描述系统的静态用况视图。

顺序图(sequencediagram)和协作图(collaborationdiagram)

UML图中顺序图和协作图在语义上是等价的,它们可以互相转换。顺序图和协作图又被统称为交互图(interactiondiagram)。它们显示了一组对象和由这组对象发送和接收的消息。顺序图强调消息的时间次序,协作图强调发消息的对象的结构组织。

状态图(statechartdiagram)和活动图(activitydiagram)

UML图中状态图和活动图在语义上是等价的,

它们可以互相转换。状态图显示了一个由状态、转换、事件和活动组成的状态机,它强调一个对象按事件次序发生的行为,通常状态图用于对接口、类或协作的行为

建模。活动图显示了系统从活动到活动的流,它强调对象之间的控制流,通常活动图用于对系统的功能建模。

更多UML框图的应用和案例可以参考trufunnet的在线帮助系统

2003里我没有找到过组合,聚合是可以找到的。

在左边工具栏里右击定制的时候也只有聚合

其实组合聚合区分不是那么明显,你可以用简单的联系来代替,用聚合代替组合也无伤大雅

在绘制UML图的过程中,除了要设计合理的模型(对象),还要准确清晰地标识出模型之间的关系。不同的关系使用不同的标识来表示,也是有一定规范的。画出规范的UML图,不同组织、开发者之间可以仅仅通过UML图就可以明白彼此的设计意图,可以提高沟通效率。

类之间的关系,常见的有:

在绘制UML图的时候,需要使用对应的符号来表示相应的关系,以PlantUML为例。如下图所示:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/12185798.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存