UML图中受保护的方法?

我有以下UML显示了如何创建类Point2D

UML图中受保护的方法?

我已经基于UML为此类创建了头文件:

#ifndef Point2D_h
#define Point2D_h

using namespace std;

// Header file for class Point2D

class Point2D
{
    protected:
        int x;
        int y;
        double distFrOrigin;
        setDistFrOrigin();
    
    public:
        Point2D()
        {
            x = 0;
            y = 0;
        }

        Point2D(int xInput,int yInput)
        {
            x = xInput;
            y = yInput;
        }

        int getX();
        int getY();
        double getScalarValue();
    
        int setX(int x);
        int setY(int y);    
};

#endif

但是,我对方法setDistFrOrigin()感到困惑。该方法位于UML操作内部,并且是受保护的方法。我是否可以将其与班上的protected分组?还是有一种方法可以在该类的公共块中声明受保护的?正确的方法应该是什么?

iCMS 回答:UML图中受保护的方法?

完全自由

C ++为此提供了完全的自由。您可以例如:

  • access specifier对成员进行分组。您可以在一个部分中对变量和函数进行光学分组;
  • 将成员àlaUML分组,一侧是变量,另一侧是函数,每次都有一个privateprotectedpublic部分。

其他备注

  • 样式是个人品味的问题,being consistent is more important比所选样式更重要。因此,在团队中始终采用团队风格。
  • 请记住,有人来维护代码,来回滚动时很容易忽略访问说明符。 3或4个部分是可管理的。如果您有6个部分,或者在静态成员的情况下甚至有12个部分,则开始变得难以阅读。
  • 另外SO question关于成员的顺序更一般。它表明,有很多观点,除了数据和函数之外,还有常量和类型。
  • 一个被广泛接受的建议是将public放在第一位(请参阅Bruno的评论+ C++ Core GuidelineGoogle coding standardssimilar style guide)。不过,如果您从Stroustrup的旧书中学到了C ++,那么在开始时就拥有所有私有数据,然后就开始使用函数,而在类中间只有一个public关键字,然后才是大多数函数,这不会让您感到震惊。距离UML布局还很远)

不相关:

本文链接:https://www.f2er.com/1773090.html

大家都在问