Avviso del compilatore (livello 1) CS3011

Aggiornamento: novembre 2007

Messaggio di errore

'membro': solo i membri compatibili con CLS possono essere di tipo astratto.
'member': only CLS-compliant members can be abstract

Un membro di classe non può essere sia abstract che non compatibile con CLS (Common Language Specification). CLS specifica che tutti i membri di classe saranno implementati. Per ulteriori informazioni sulla conformità CLS, vedere Scrittura di codice conforme a CLS e Specifiche CLS (Common Language Specification).

Esempio

Il seguente codice di esempio genera l'avviso CS3011:

// CS3011.cs

using System;


[assembly:CLSCompliant(true)]
public abstract class I
{
    [CLSCompliant(false)]
    public abstract int M();   // CS3011

    // OK
    [CLSCompliant(false)]
    public void M2()
    {
    }
}

public class C : I
{
    public override int M()
    {
        return 1;
    }

    public static void Main()
    {
    }
}