Przeczytaj w języku angielskim

Udostępnij za pośrednictwem


Błąd kompilatora CS1601

Parametr metody lub delegata nie może być typu "type"

Niektóre typy w bibliotece klas platformy .NET, na przykład TypedReference, RuntimeArgumentHandle i ArgIterator nie można ich używać tak jak w parametrach ref lub out, ponieważ mogą one być potencjalnie używane do wykonywania niebezpiecznych operacji.

Poniższy przykład generuje CS1601:

// CS1601.cs  
using System;

class MyClass
{
    public void Test1(in TypedReference t)   // CS1601  
    {
    }

    public void Test2(ref TypedReference t)   // CS1601  
    {
    }

    public void Test3(out ArgIterator t)   // CS1601  
    {
        t = default;
    }
}