Błąd kompilatora CS0077
Operator as musi być używany z typem odwołania lub typem dopuszczalnym wartości null ('int' jest typem wartości niepustej).
Operator as został przekazany typ wartości. Ponieważ as
może zwracać wartość null, można przekazać tylko typ odwołania lub typ wartości dopuszczający wartość null.
Jednak użycie dopasowania wzorca z operatorem is umożliwia bezpośrednie przeprowadzanie sprawdzania typów i przypisań w jednym kroku.
Poniższy przykład generuje plik CS0077:
// CS0077.cs
using System;
struct S
{
}
class M
{
public static void Main()
{
object o;
S s;
o = new S();
s = o as S; // CS0077, S is not a reference type
// Use pattern matching instead of as
if (o is S sValue)
{
s = sValue;
}
}
}
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: