如何理解“返回”作为参数方向?

时间:2011-10-26 01:31:41

标签: parameters uml return direction out

在UML2.3上层结构文档的7.3.42 ParameterDirectionKind中,有一个文字值枚举的描述:

在/ INOUT /缩小/返回

从实施角度来看,很容易理解“in”和“inout”。

例如,在C ++中,“in”可以通过两种方式实现:

foo( CString strParam )
bar( const CString& strParam )

“inout”也可以用两种方式实现:(参考和指针)

foo( CString* pParam )
bar( CString& strParam)

现在回答我的问题:

  1. “返回”是什么意思? (我说的是参数的“返回”方向,而不是操作/方法的返回类型)

    是否有任何语言支持这个参数方向?代码是什么样的。

    如果没有语言支持,常规方法如何使用?

  2. “return”和“out”有什么区别?

  3. 参数“out”方向的任何实现代码?

  4. 在我看来,每当我们讨论参数时,必须有一个调用者调用此函数并将参数赋值给参数。这个陈述是否正确?

    然后根据参数的方向,它可以在/ inout / out / return中。我的问题是:“返回”方向是什么意思? OMG必须有理由将此类型放入我未弄清楚的文档中。

    来自UML2.3上部结构7.3.42

    return:表示参数值作为返回值从行为元素传递回调用者。

    提前谢谢

1 个答案:

答案 0 :(得分:2)

在UML中,“返回参数”是返回的内容,只能有一个。从内部方法的角度来考虑(不是从现实生活中的语言设计的角度来看)。 return参数是实体传递给调用它的内容。