2011-10-02 5 views

Répondre

14

Of course:

public abstract class ClassWithAbstractIndexer 
{ 
    public abstract int this[int index] 
    { 
     get; 
     set; 
    } 
} 
+1

Merci! J'ai essayé 'objet public abstrait cet [int index];' alors objet public this [int index] {abstract get; } 'mais aucun d'entre eux n'a fonctionné. Comment est-il déclaré dans une interface? –

+1

Que signifie "aucun d'entre eux"? – Joe

+1

@ Fire-Dragon-DoL: Supprimer 'abstract' de votre' get' dans votre classe dérivée. –

2

Un exemple simple:

public interface ITest 
{ 
    int this[int index] { get; } 
} 

public class Test : ITest 
{ 
    public int this[int index] 
    { 
     get { ... } 
     private set { .... } 
    } 
} 

Plusieurs combinaisons de privé/protégé/abstract sont possibles pour get et set

+0

Merci pour votre suggestion –

0

Vous pouvez déclarer comme ceci:

internal abstract class Hello 
{ 
    public abstract int Indexer[int index] 
    { 
     get; 
    } 
} 

Ensuite, vous aurez la possibilité de remplacer seulement get ou remplacer les get et set.

Questions connexes