Skip to content

JA CSharp Keyword out

Codex edited this page Oct 11, 2026 · 2 revisions

Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

C#: out

ディレクトリ C# · 実践的な指導

メソッドが結果をパラメータに書き込むことを許可します。メソッドは通常に戻る前にそれを割り当てる必要があります。ジェネリック型では、共分散を設定します。

簡単な例 (Example.cs)

この例を Example.cs として別に保存し、このページの他の例とは独立して実行してください。

Example.cs:

// PROJECT-EXAMPLE
if (int.TryParse("12", out int number))
    System.Console.WriteLine(number);

結果:

12

構文

Method(out value) / interface IProducer<out T>

例 1: 基本形式

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;

public static class Program
{
    public static async Task Main(string[] args)
    {
        if (int.TryParse("42", out int number)) Console.WriteLine(number);
    }
}

例 2: 別の実用的な形式

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;

public static class Program
{
    public static async Task Main(string[] args)
    {
        IProducer<string> text = new TextProducer();
        IProducer<object> value = text;
        Console.WriteLine(value.Create());
    }
}
public interface IProducer<out T> { T Create(); }
public class TextProducer : IProducer<string> { public string Create() => "ore"; }

公式ソース: Microsoft Learn。

Clone this wiki locally