来自Ciaran McHale的免费在线书籍,CORBA Explained Simply:
操作的参数具有指定的方向,可以是
in(意味着参数从客户端传递到服务器),out(参数从服务器传递回客户端)或inout(参数在两个方向传递) ).
因此,in参数与"传统"函数参数非常相似,因为调用者必须为它们传递一个值,并且服务器使用该值来完成其工作.
一个out参数,就像一个返回值,所以调用者从来没有使用值填充它.它只是在函数返回时神奇地有一个值(假设没有抛出异常),因为服务器负责在其中放入一个值作为其执行规则的一部分.您可以拥有任意数量的out参数,允许您返回多个不同的对象或值,而无需先将它们组合成一个struct.
一个inout参数结合上面的两个概念.调用者必须inout使用有效数据填充所有参数,但这些值在函数返回后可能会有所不同,因为服务器可以自由地将新数据放入其中.