StarUML笔记之从C++代码生成UML图

StarUML笔记之从C++代码生成UML图

—— 2024-04-14

code review!

1.安装C++插件

在这里插入图片描述

2.准备好一个C++代码文件放某个路径下

在这里插入图片描述

main.cpp

#include <iostream>
#include <string>

class Shape {
public:
    // 构造函数
    Shape(const std::string& name) : name_(name) {}

    // 纯虚函数,用于返回形状的面积
    virtual double area() const = 0;

    // 虚析构函数
    virtual ~Shape() {}

    // 输出形状的信息
    void printInfo() const {
        std::cout << "Shape: " << name_ << ", Area: " << area() << std::endl;
    }

protected:
    std::string name_;
};

class Circle : public Shape {
public:
    // 构造函数
    Circle(const std::string& name, double radius) : Shape(name), radius_(radius) {}

    // 实现基类中的纯虚函数
    virtual double area() const override {
        return 3.14159 * radius_ * radius_;
    }

private:
    double radius_;
};

class Rectangle : public Shape {
public:
    // 构造函数
    Rectangle(const std::string& name, double width, double height)
        : Shape(name), width_(width), height_(height) {}

    // 实现基类中的纯虚函数
    virtual double area() const override {
        return width_ * height_;
    }

private:
    double width_;
    double height_;
};

int main() {
    Circle circle("Circle 1", 5.0);
    Rectangle rectangle("Rectangle 1", 4.0, 5.0);

    circle.printInfo();
    rectangle.printInfo();

    return 0;
}

3.点击Reverse Code选择项目文件夹

在这里插入图片描述

在这里插入图片描述

4.拖动(Class)到中间画面可以形成UML

在这里插入图片描述

5.另外一种方式:双击Type Hierarchy,然后拖动(Class)到中间画面可以形成UML带箭头指向

在这里插入图片描述

在这里插入图片描述

6.可以更改UML样式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
样式更改后新的UML:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只野生的善逸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值