Błąd kompilatora CS0842
Właściwości zaimplementowane automatycznie nie mogą być używane wewnątrz typu oznaczonego za pomocą właściwości StructLayout(LayoutKind.Explicit).
Automatycznie zaimplementowane właściwości mają pola zapasowe udostępniane przez kompilator, a pole nie jest dostępne dla kodu źródłowego. W związku z tym nie są one zgodne z LayoutKind.Explicit.
- Ustaw właściwość regularną, w której podajesz jednostki dostępu.
Poniższy przykład generuje CS0842:
// cs0842.cs
using System;
using System.Runtime.InteropServices;
namespace TestNamespace
{
[StructLayout(LayoutKind.Explicit)]
struct Str
{
public int Num // CS0842
{
get;
set;
}
static int Main()
{
return 1;
}
}
}
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: