次の方法で共有


out (C# リファレンス)

out キーワードは、次の 2 つのコンテキストで使用します。

C# 言語リファレンスには、C# 言語の最新リリース バージョンが記載されています。 また、今後の言語リリースのパブリック プレビューの機能に関する初期ドキュメントも含まれています。

このドキュメントでは、言語の最後の 3 つのバージョンまたは現在のパブリック プレビューで最初に導入された機能を特定します。

ヒント

C# で機能が初めて導入された時期を確認するには、 C# 言語バージョン履歴に関する記事を参照してください。

out パラメーター修飾子は、複数のout パラメーターを使用できるため、メソッドが複数の値を返す必要がある場合に特に便利です。 たとえば、

    public void Main()
    {
        double radiusValue = 3.92781;
        //Calculate the circumference and area of a circle, returning the results to Main().
        CalculateCircumferenceAndArea(radiusValue, out double circumferenceResult, out var areaResult);
        System.Console.WriteLine($"Circumference of a circle with a radius of {radiusValue} is {circumferenceResult}.");
        System.Console.WriteLine($"Area of a circle with a radius of {radiusValue} is {areaResult}.");
        Console.ReadLine();
    }

    //The calculation worker method.
    public static void CalculateCircumferenceAndArea(double radius, out double circumference, out double area)
    {
        circumference = 2 * Math.PI * radius;
        area = Math.PI * (radius * radius);
    }

out キーワードの使用には、次の制限事項が適用されます。

  • 非同期メソッドでは out パラメーターを使用できません。
  • 反復子メソッドで out パラメーターを使用することはできません。
  • プロパティを out パラメーターとして渡すことはできません。