---
# System prepended metadata

title: C# using 変数宣言 2021-09-17
tags: [using, C# 8.0, C#]

---

---
lang: ja-jp
breaks: true
---
# C# using 変数宣言 2021-09-17

> using 変数宣言
> https://ufcpp.net/study/csharp/oo_dispose.html#using-declaration
> C# 8.0 で、変数宣言に対して using 修飾を付けることで、 その変数のスコープに紐づいて using ステートメントと同じ効果を得られるようになりました。 これを using 変数宣言(using declaration)と呼びます。

```csharp=
    static void Main()
    {
        // using var で、変数のスコープに紐づいた using になる。
        // スコープを抜けるときに Dispose が呼ばれる。
        using var a = new DeferredMessage("a");
        using var b = new DeferredMessage("b");
 
        Console.WriteLine("c");
 
        // c, b, a の順でメッセージが表示される
    }
```

###### tags: `C#` `C# 8.0` `using`
