C#'使用'语句有什么用?

Bud*_*hiP 3 c# using keyword

c#using语句有什么用?

namespace Microsoft.Owin.Host.SystemWeb.DataProtection {
    using DataProtectionProviderDelegate = Func<string[], Tuple<Func<byte[], byte[]>, Func<byte[], byte[]>>>;
    using DataProtectionTuple = Tuple<Func<byte[], byte[]>, Func<byte[], byte[]>>;
Run Code Online (Sandbox Code Playgroud)

取自这里

根据MSDN使用声明有两个用法.

  1. (指令)直接或通过给别名将类型导入当前文件
  2. (声明)确保正确处理IDisposable对象.

但在这种情况下,它用于分配委托类型.任何人都可以解释这种用法,并提供链接文档?

Pon*_*dum 16

在这种情况下,using语句被用于别名类型,所以是你指出的点(1).

稍后在代码中而不是必须键入:

var x = new  Tuple<Func<byte[], byte[]>, Func<byte[], byte[]>>(/* ... */);
Run Code Online (Sandbox Code Playgroud)

你可以写:

var x = new DataProtectionTuple(/* ... */);
Run Code Online (Sandbox Code Playgroud)