在方法中使用[in,out]

时间:2016-09-08 14:44:18

标签: c# com-interop

我想问一下

之间是否存在一些差异
public int Method1([In, Out] byte[] buffer);

public int Method2(byte[] buffer);

我遇到了http://referencesource.microsoft.com/#mscorlib/system/io/stream.cs,739并想知道为什么[In, Out]存在?

1 个答案:

答案 0 :(得分:-1)

是。存在差异。

  • public int Method2(byte[] buffer);使用隐式In
      

    表示数据应该从调用者封送到被调用者,但不会返回给调用者。

  • public int Method2(out byte[] buffer);使用Out
      

    表示应该将数据从被叫方封送回调用方。

  • public int Method2(ref byte[] buffer);使用[In, Out]