Skip to content

IT CSharp Keyword out

Codex edited this page Oct 11, 2026 · 2 revisions

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

C#: out

Manuale C# · Guida pratica

Consente al metodo di scrivere il risultato nel parametro; il metodo deve assegnarlo prima di tornare normalmente. Nel tipo generico, imposta la covarianza.

Esempio semplice (Example.cs)

Salvare questo esempio separatamente come Example.cs. Eseguirlo indipendentemente dagli altri esempi di questa pagina.

Example.cs:

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

Risultato:

12

Sintassi

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

Esempio 1: forma base

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);
    }
}

Esempio 2: un'altra forma pratica

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"; }

Fonte ufficiale: Microsoft Impara.

Clone this wiki locally