Laden...

Klasse mit Listen: NullReferenceException oder ungültiges Token

Erstellt von Kashan vor 12 Jahren Letzter Beitrag vor 12 Jahren 1.675 Views
Thema geschlossen
K
Kashan Themenstarter:in
2 Beiträge seit 2011
vor 12 Jahren
Klasse mit Listen: NullReferenceException oder ungültiges Token

Hallo liebe myCSharp Com!

Also ich habe in meinem Projekt 2 Klassen. Ich nenne diese Klasse jetzt einfach mal Klasse 1 und Klasse 2.

In Klasse 2 Habe ich nur 3 Listen drin. Aus klasse 1 Heraus kann ich die Listen in Klasse 2 ansprechen aber nicht beschreiben. Sobald ich etwas hinein schreiben möchte, kommt ein Fehler: Nullreferenceexception.
Ich habe mich bereits erkundigt worum es sich bei diesem Fehler Handelt.
Ich bin der ganze Sache nachgegangen und habe deutlich gesehen das die Listen NULL sind. In Klasse 2 kann ich keine Objekte für die Listen erstellen.

Wie kann ich dies beheben oder umgehen?

Hier mal ein Code-beispiel:


//Klasse 1


namespace Project
{
    public partial class Klasse1 : Form
    {
        public Klasse1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Klasse2 k2 = new Klasse2();
            k2.m_strListe1.Add("Test");
        }

        private void button2_Click(object sender, EventArgs e)
        {
            Klasse2 k2 = new Klasse2();
            k2.m_iListe2.Add("123");
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Klasse2 k2 = new Klasse2();
            k2.m_ptListe3.Add(Location);
        }
    }
}




namespace Projekt
{
    class Klasse2
    {
        public List<String> m_strListe1;
        public List<int> m_iListe2;
        public List<Point> m_ptListe3;
    }   
}



M
402 Beiträge seit 2005
vor 12 Jahren

Ich habe mich bereits erkundigt worum es sich bei diesem Fehler Handelt.
Ich bin der ganze Sache nachgegangen und habe deutlich gesehen das die Listen NULL sind.

Fein, du hast den Fehler also lokalisiert.
Wobei das für mich aber kein Fehler ist sondern ein ganz korrektes Verhalten.
Schließlich wurden die Listen ja nur definiert und nicht initialisiert...

In Klasse 2 kann ich keine Objekte für die Listen erstellen.

Echt? Warum?

namespace Projekt
 {
     class Klasse2
     {
         public List<String> m_strListe1;
         public List<int> m_iListe2;
         public List<Point> m_ptListe3;
         
         public Klasse2()
         {
               m_strListe1 = new List<string>();
               m_iListe2 = new List<int>();
               m_ptListe3 = new List<Point>();
         }

     }
 }

Das ist aber btw. Grundwissen, dass in jedem Buch/Tuturial,.. steht...

K
Kashan Themenstarter:in
2 Beiträge seit 2011
vor 12 Jahren

Ja so hatte ich das vorher, allerdings bekommen ich dann eine "Ungültiges Token in Klasse Fehlermeldung" fehlermeldung.

5.742 Beiträge seit 2007
vor 12 Jahren

Ja so hatte ich das vorher, allerdings bekommen ich dann eine "Ungültiges Token in Klasse Fehlermeldung" fehlermeldung.

Dann hast du irgendeine Klammer zu viel / zu wenig etc., ...
Siehe aber bitte [Hinweis] Syntaxfehler selbst lösen (Compilerfehlermeldungen)

Thema geschlossen