Repository navigation
ES CSharp Keyword implicit
Codex edited this page Oct 11, 2026
·
2 revisions
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
Declare una conversión personalizada que el compilador pueda aplicar sin una conversión explícita.
Guarde este ejemplo por separado como Example.cs. Ejecútelo independientemente de los demás ejemplos de esta página.
Example.cs:
// PROJECT-EXAMPLE
Count count = 7;
System.Console.WriteLine(count.Value);
readonly record struct Count(int Value)
{
public static implicit operator Count(int value) => new(value);
}Resultado:
7
public static implicit operator Target(Source value) => ...;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)
{
Distance distance = 12;
Console.WriteLine((int)distance);
}
}
public readonly record struct Distance(int Value) { public static implicit operator Distance(int value) => new(value); public static explicit operator int(Distance value) => value.Value; }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)
{
Label label = "ore";
Console.WriteLine((string)label);
}
}
public readonly record struct Label(string Text) { public static implicit operator Label(string text) => new(text); public static explicit operator string(Label label) => label.Text; }Fuente oficial: Microsoft Aprender.
ClassicUO — Bad Newbie & C# Scripts IDE