tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
3
ZUGRIFFE
5635
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von gnetos
    gnetos gnetos ist offline Mitglied Brokat
    Registriert seit
    May 2004
    Ort
    Baden-Württemberg
    Beiträge
    400
    Blog-Einträge
    1
    Hi,

    ich habe folgende Daten:
    ContainerKlasse015 o2 = new ContainerKlasse015(new List<AKlasse015>( new AKlasse015[]{
    new BKlasse015("znzzzzzzzzzzzzzzzzzzzzz", 'M',
    10, 'M', "ZM",
    "ZM"),new BKlasse015("znzzzzzzzzzzzzzzzzzzzzz", 'M',
    10, 'M', "ZM",
    "ZM"),new BKlasse015("znzzzzzzzzzzzzzzzzzzzzz", 'M',
    10, 'M', "ZM",
    "ZM")
    ,new BKlasse015("znzzzzzzzzzzzzzzzzzzzzz", 'M',
    10, 'M', "ZM",
    "ZM"),new BKlasse015("znzzzzzzzzzzzzzzzzzzzzz", 'M',
    10, 'M', "ZM",
    "ZM"),new BKlasse015("znzzzzzzzzzzzzzzzzzzzzz", 'M',
    10, 'M', "ZM",
    "ZM")
    ,new BKlasse015("znzzzzzzzzzzzzzzzzzzzzz", 'M',
    10, 'M', "ZM",
    "ZM"),new BKlasse015("znzzzzzzzzzzzzzzzzzzzzz", 'M',
    10, 'M', "ZM",
    "ZM"),new BKlasse015("znzzzzzzzzzzzzzzzzzzzzz", 'M',
    10, 'M', "ZM",
    "ZM")
    ,new BKlasse015("znzzzzzzzzzzzzzzzzzzzzz", 'M',
    10, 'M', "ZM",
    "ZM"),new BKlasse015("znzzzzzzzzzzzzzzzzzzzzz", 'M',
    10, 'M', "ZM",
    "ZM")})
    Nun habe ich keine Ahnung wie ich das auslesen kann.

    ContainerKlasse015 ist eine Container der auch einem Indexer und GetEnumerator besitzen soll, nur habe ich keine Ahnung wie ich das machen soll.
     
    Bei Nachteilen nicht jammern, sondern neue Wege finden.
    The worst decision is indecision.

  2. #2
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    Da muss dein Container IEnumerator implementieren. Oder du machst aus deinem Container selbst eine generische Liste

    Gehen wir davon aus, dass AKlasse015 und BKlasse015 vom gleichen Basisobjekt Klasse015 ableiten:
    Code csharp:
    1
    2
    3
    4
    
    public class ContainerKlasse015 : List<Klasse015>
    {
      // implementation goes here
    }
    Und schon ist deine Klasse eine Liste. Du kannst natürlich auch noch anders einschränken:
    Code csharp:
    1
    2
    3
    4
    5
    
    public class ContainerKlasse015 : List<T>
       where T : AKlasse015, BKlasse015
    {
       // implementation goes here
    }
    Alles klar?
     

  3. #3
    Avatar von gnetos
    gnetos gnetos ist offline Mitglied Brokat
    Registriert seit
    May 2004
    Ort
    Baden-Württemberg
    Beiträge
    400
    Blog-Einträge
    1
    Hi,
    die AKlasse ist die Basisklasse, BKlasse und CKlasse sind Vererbungen davon.

    Ich habe nun keine Ahnung wie ich auf den Inhalt dieser Liste komme und wie ich den Container dazu schreibe, dein Beispiel hat den Fehler "CS0080" ausgelöst.

    "Einschränkungen für nicht generische Deklarationen sind unzulässig"

    Ich hab die drei Klassen als Anhang, ich habe auch schon die MSDN Libary durchsucht. Aber es gibt dort eine Reihe von Möglichkeiten und daher finde ich mich einfach nicht zurecht, sogar 2 Bücher haben nicht weitergeholfen. Den nirgends ist so ein Fall beschrieben.
    Angehängte Dateien Angehängte Dateien
     
    Bei Nachteilen nicht jammern, sondern neue Wege finden.
    The worst decision is indecision.

  4. #4
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    Abgesehen dass der Programmierstil sehr übel ist:
    Code csharp:
    1
    2
    3
    
    public class MyContainer : List<AKlasse015>
    {
    }
    Und dann kannst du so damit arbeiten:
    Code csharp:
    1
    2
    3
    
    MyContainer container = new MyContainer();
    container.Add(new BKlasse015("test", 'a', 1, 'b', "para5", "para6"));
    container.Add(new CKlasse015(true, 3.14d, 'a', "para1", "para5"));
    Und schon hast du GetEnumerator etc. implementiert.
     

Ähnliche Themen

  1. PHP-Liste in Div-Container laden
    Von centauro34 im Forum PHP
    Antworten: 17
    Letzter Beitrag: 27.09.09, 13:09
  2. Antworten: 4
    Letzter Beitrag: 18.08.08, 11:31
  3. Datenstruktur Feld + Verkettete Liste
    Von Sky00 im Forum Algorithmen & Datenstrukturen mit Java
    Antworten: 4
    Letzter Beitrag: 20.05.08, 21:13
  4. Antworten: 4
    Letzter Beitrag: 21.02.08, 19:50
  5. Stack als Feld oder verkettete Liste
    Von Pra_Castor im Forum Java
    Antworten: 5
    Letzter Beitrag: 01.08.07, 18:04