Udostępnij za pośrednictwem


implicit (odwołanie w C#)

implicit Zostanie użyte słowo kluczowe, aby zadeklarować operatora konwersji niejawnych typ zdefiniowany przez użytkownika.Pozwala on włączyć konwersje między typ zdefiniowany przez użytkownika i innego typu, jeśli konwersja jest gwarantowane nie może powodować utratę danych.

Przykład

class Digit
{
    public Digit(double d) { val = d; }
    public double val;
    // ...other members 

    // User-defined conversion from Digit to double 
    public static implicit operator double(Digit d)
    {
        return d.val;
    }
    //  User-defined conversion from double to Digit 
    public static implicit operator Digit(double d)
    {
        return new Digit(d);
    }
}

class Program
{
    static void Main(string[] args)
    {
        Digit dig = new Digit(7);
        //This call invokes the implicit "double" operator 
        double num = dig;
        //This call invokes the implicit "Digit" operator
        Digit dig2 = 12;
        Console.WriteLine("num = {0} dig2 = {1}", num, dig2.val);
        Console.ReadLine();
    }
}

Dzięki wyeliminowaniu niepotrzebnych poświaty, konwersje niejawne, można poprawić czytelność kodu źródłowego.Jednakże ponieważ konwersje niejawne nie wymagają programistów jawnie oddać z jednego typu do drugiego, należy uważać, aby uniknąć nieoczekiwanych wyników.Ogólnie rzecz biorąc Operatorzy niejawna konwersja powinny nigdy nie generują wyjątki i nigdy nie stracisz informacji tak, aby używane bezpiecznie bez świadomości programmer's.Jeśli operator konwersji nie spełniają tych kryteriów, powinien być oznaczony explicit.Aby uzyskać więcej informacji, zobacz Za pomocą operatory konwersji.

Specyfikacja języka C#

Aby uzyskać więcej informacji, zobacz Specyfikacja języka C#. Specyfikacja języka jest ostatecznym źródłem informacji o składni i użyciu języka C#.

Zobacz też

Zadania

Porady: implementowanie zdefiniowanych przez użytkownika konwersji struktur (Przewodnik programowania w języku C#)

Informacje

Słowa kluczowe języka C#

explicit (odwołanie w C#)

operator (odwołanie w C#)

Koncepcje

Przewodnik programowania w języku C#

Inne zasoby

Odwołanie w C#