Compilerfehler CS1716
Verwenden Sie nicht das Attribut „System.Runtime.CompilerServices.FixedBuffer“. Verwenden Sie stattdessen den Feldmodifizierer „fixed“.
Dieser Fehler tritt in einem Abschnitt mit unsicherem Code auf, wobei dieser Abschnitt eine Arraydeklaration mit festgelegter Größe enthält, die einer Felddeklaration ähnelt. Verwenden Sie dieses Attribut nicht. Verwenden Sie stattdessen das Schlüsselwort fixed
.
Beispiel
Im folgenden Beispiel wird der Fehler CS1716 generiert.
// CS1716.cs
// compile with: /unsafe
using System;
using System.Runtime.CompilerServices;
public struct UnsafeStruct
{
[FixedBuffer(typeof(int), 4)] // CS1716
unsafe public int aField;
// Use this single line instead of the above two lines.
// unsafe public fixed int aField[4];
}
public class TestUnsafe
{
static int Main()
{
UnsafeStruct us = new UnsafeStruct();
unsafe
{
if (us.aField[0] == 0)
return us.aField[1];
else
return us.aField[2];
}
}
}
Zusammenarbeit auf GitHub
Die Quelle für diesen Inhalt finden Sie auf GitHub, wo Sie auch Issues und Pull Requests erstellen und überprüfen können. Weitere Informationen finden Sie in unserem Leitfaden für Mitwirkende.