Projektbeurteilung Ampelsteuerung

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 109 Antworten in diesem Thema. Der letzte Beitrag () ist von Amelie.

    ​Abstrakte Beispiele.... Damit tue ich mich eh schwer
    Das ist auch dass was mich bei den Tutorials etc sooft verwirrt...

    OK habe das nun gemacht.
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Friend Class Straße
    2. Private IstHauptstraße As Boolean
    3. Private ReadOnly Ampeln As New List(Of Ampel)
    4. Friend Sub New()
    5. Ampeln.Add(New Ampel)
    6. Ampeln.Add(New Ampel)
    7. End Sub
    8. End Class
    9. Friend Sub ErstelleKreuzung(ByVal IstHauptstraße As Boolean)
    10. Straßen.Add(New Straße)
    11. Straßen.Add(New Straße)
    12. 'Hier weiß ich nicht weiter
    13. If IstHaupstraße Then .....
    14. End Sub

    Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen. :huh:
    Neenee, das war nicht das Ziel der Übung. Aber wenigstens hast Du die erste Frage indirekt beantwortet. Ja, die von Dir in der Klasse Straße zu erstellende Property muss vom Typ Boolean sein. Das Unterstrichene bitte machen und posten. Dann kümmern wir uns um Aufgabe 2.
    Den Methoden-Parameter (!) IstHauptstraße entfernst Du wieder, den brauchst Du nicht. Ergibt auch keinen Sinn. ErstelleKreuzung(True) -> wozu soll das führen? Nix gutes, von daher: weg damit. Und damit auch weg mit der If-Geschichte.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Moin moin
    ​...für die neue Straße mithilfe der neuen Property fest...
    Hmm.. Ich muss doch irgendwie eine "Wenn Dann" etc machen? (meine Logik)
    ​Wenn IstHauptstr = True ==> Dann neue Straße ..??

    Brauchen wir noch soetwas?

    VB.NET-Quellcode

    1. Enum strassen
    2. Hauptstr
    3. Nebenstr
    4. End Enum


    Spoiler anzeigen

    VB.NET-Quellcode

    1. Friend Class Straße
    2. Private IstHauptstraße As Boolean
    3. Private ReadOnly Ampeln As New List(Of Ampel)
    4. Friend Sub New()
    5. Ampeln.Add(New Ampel)
    6. Ampeln.Add(New Ampel)
    7. End Sub
    8. End Class
    9. Friend Sub ErstelleKreuzung()
    10. Straßen.Add(New Straße)
    11. Straßen.Add(New Straße)
    12. End Sub

    Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen. :huh:
    Sehr schön, dass Du selbst auf das Straßen-Enum gekommen bist. Das wär die nächste Stufe gewesen. Das ersetzt dann nämlich die frisch eingeführte IstHauptstraße-Property. Das Enum am besten umbenennen in Straßentyp.
    Damit ergibt sich

    VB.NET-Quellcode

    1. 'nur zu Sicherheit: das muss eine selbständige Klasse außerhalb der Kreuzungssteuerungsklasse sein:
    2. Friend Class Straße
    3. Private TatsächlicherStraßentyp As Straßentyp 'ich würde die Property zwar nur Straßentyp nennen, aber dann verwirrt Dich das vielleicht mich dem Enum an sich
    4. Private ReadOnly Ampeln As New List(Of Ampel)
    5. Friend Sub New()
    6. Ampeln.Add(New Ampel)
    7. Ampeln.Add(New Ampel)
    8. End Sub
    9. End Class
    10. 'das ist Teil der Kreuzungssteuerungsklasse
    11. Friend Sub ErstelleKreuzung()
    12. Straßen.Add(New Straße)
    13. Straßen.Add(New Straße)
    14. End Sub
    15. 'das sollte wieder außerhalb jeglicher anderer Klassen sein:
    16. Friend Enum Straßentyp
    17. Hauptstraße 'die Namen ruhig ausformulieren
    18. Nebenstraße
    19. End Enum

    ok, nochmal zur Frage: Wie legst Du (nun nach Einführung des neuen Enums) die Property TatsächlicherStraßentyp einer Straßeninstanz auf den Wert Enumwert Straßentyp.Hauptstraße fest?
    kleiner Tipp: das hat nix mit If zu tun.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Das war mein Versuch den ich eigentlich noch an meinem letzen Beitrag anhängen wollte.

    Spoiler anzeigen

    VB.NET-Quellcode

    1. Friend Class Straße
    2. Enum strassen
    3. Hauptstr
    4. Nebenstr
    5. End Enum
    6. Private HStr As strassen
    7. Private IstHauptstraße As Boolean
    8. Private ReadOnly Ampeln As New List(Of Ampel)
    9. Friend Sub New()
    10. Ampeln.Add(New Ampel)
    11. Ampeln.Add(New Ampel)
    12. End Sub
    13. End Class
    14. Friend Sub ErstelleKreuzung()
    15. 'Straßen.Add(New Straße)
    16. 'Straßen.Add(New Straße)
    17. 'Aber hier gibts Fehler und ich weiß nicht weiter.
    18. Straßen.Add(New Straße(Straße.Hstr.Hauptstr, True))
    19. End Sub




    EDIT: 10:00
    ​das muss eine selbständige Klasse außerhalb der Kreuzungssteuerungsklasse sein

    Also so richtig?
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Public Class Kreuzung
    2. Private ReadOnly Straßen As New List(Of Straße)
    3. End Class
    4. Friend Class Straße
    5. Private TatsächlicherStraßentyp As Straßentyp
    6. Private IstHauptstraße As Boolean
    7. Private ReadOnly Ampeln As New List(Of Ampel)
    8. Friend Sub New()
    9. Ampeln.Add(New Ampel)
    10. Ampeln.Add(New Ampel)
    11. End Sub
    12. Friend Sub ErstelleKreuzung()
    13. 'Straßen.Add(New Straße)
    14. 'Straßen.Add(New Straße)
    15. End Sub
    16. End Class
    17. Friend Enum Straßentyp
    18. Hauptstraße
    19. Nebenstraße
    20. End Enum
    21. Friend Class Ampel
    22. Private ReadOnly Lichtkästen As New List(Of Lichtkasten)
    23. End Class
    24. Friend Class Lichtkasten
    25. Private AnzahlLampen As Integer
    26. Private Farbe As List(Of Color) = Nothing
    27. Private Sub Signalfarben()
    28. Farbe = New List(Of Color) From {Color.Red, Color.Yellow, Color.Lime}
    29. End Sub
    30. End Class

    Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen. :huh:

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Amelie“ ()

    Und zu welchem Ergebnis führt Dein Versuch?
    @Amelie: Du hast noch nicht die Frage beantwortet, wie Du für eine bestehende Straßeninstanz die Straßentyp-Property änderst.
    Angenommen, Du hast an einer anderen Stelle den Code

    VB.NET-Quellcode

    1. Dim NeueStraße As New Straße
    Wie legst Du danach die Straßentyp-Property für NeueStraße auf Straßentyp.Hauptstraße fest?
    Zusatzfrage (steht im Code):

    VB.NET-Quellcode

    1. Friend Sub ErstelleKreuzung()
    2. Straßen.Add(New Straße)
    3. Straßen.Add(New Straße)
    4. 'wie greifst Du ab hier auf die 2. hinzugefügte Straße richtig zu?
    5. End Sub


    Amelie schrieb:

    Also so richtig?
    Ja richtig, alles trennen, nicht schalchteln.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()

    ​ Private ReadOnly Straßen As New List(Of Straße) Das kommt doch auch in die Klasse "Straße"?

    ​Und zu welchem Ergebnis führt Dein Versuch?

    Leider zu keinem, den Fehler bekomme ich nicht weg.

    ​Wie legst Du danach die Straßentyp-Property für

    hmmm...

    VB.NET-Quellcode

    1. Friend Class Straße
    2. Private ReadOnly Straßen As New List(Of Straße)
    3. Private TatsächlicherStraßentyp As Straßentyp
    4. Private IstHauptstraße As Boolean
    5. Private ReadOnly Ampeln As New List(Of Ampel)
    6. Friend Sub New()
    7. Ampeln.Add(New Ampel)
    8. Ampeln.Add(New Ampel)
    9. End Sub
    10. Dim NeueStrasse As New Straße
    11. Friend Sub ErstelleKreuzung()
    12. Straßen.Add(New Straße)
    13. Straßen.Add(New Straße)
    14. NeueStrasse.TatsächlicherStraßentyp = Straßentyp.Hauptstraße
    15. End Sub
    16. End Class
    17. Friend Enum Straßentyp
    18. Hauptstraße
    19. Nebenstraße
    20. End Enum
    Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen. :huh:

    Amelie schrieb:

    Private ReadOnly Straßen As New List(Of Straße) Das kommt doch auch in die Klasse "Straße"?
    Nee, das würde doch bedeuten, dass eine Straße eine Liste von Straßen hat. Die Straßenliste bleibt in der Kreuzung. Eine Kreuzung hat einige Straßen und nicht: "Eine Straße hat einige Straßen", denn das ergibt keinen Sinn. Auch die Sub ErstelleKreuzung gehört nicht in die Straßenklasse, sondern in die Kreuzungsklasse! Und Private IstHauptstraße As Boolean wird dank TatsächlicherStraßentyp gar nicht mehr benötigt.

    Amelie schrieb:

    Leider zu keinem, den Fehler bekomme ich nicht weg.
    Von einem Fehler hast Du nix geschrieben. Ja, es kommt ein Fehler, aber wenn einer auftritt und Du damit nicht weiterkommst, solltest Du diesen Fehler mit Wortlaut in Stelle melden, sonst kann Dir nicht gut geholfen werden. Von daher: welcher Fehler kommt genau?

    Amelie schrieb:

    hmmm...
    …ist richtig. Das ist eine von mehreren Möglichkeiten. Andere für Dich relevante Möglichkeiten sind bei Erstellung:

    VB.NET-Quellcode

    1. Friend Sub ErstelleKreuzung()
    2. Straßen.Add(New Straße With {.TatsächlicherStraßentyp = Straßentyp.Hauptstraße})
    3. Straßen.Add(New Straße With {.TatsächlicherStraßentyp = Straßentyp.Nebenstraße}))
    4. End Sub

    und
    innerhalb der Klasse Kreuzung:

    VB.NET-Quellcode

    1. Friend Sub ErstelleKreuzung()
    2. NeueStrasse.SetzeStraßentyp(Straßentyp.Hauptstraße)
    3. End Sub
    4. 'in der Straßenklasse:
    5. Friend Sub SetzeStraßentyp(NeuerStraßentyp As Straßentyp)
    6. Me.TatsächlicherStraßentyp = NeuerStraßentyp
    7. End Sub

    letzterer Punkt ist möglich, aber nicht schön. Der Typ einer bestehenden Straße kann sich ja nicht plötzlich ändern. Wir korrigieren das, sobald Du die Methoden und Properties wieder zu den richtigen Klassen gepackt hast, IstHauptstraße gelöscht hast und Dich zum Fehler äußerst.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    ​Straßen.Add(New Straße(Straße.Hstr.Hauptstr, True))
    Bei dem Fehler: Zu viele Argumente. Aber ist ja eh hinfällig.
    -----
    So habe nun alles neu sortiert und bekomme Fehler und komme mit deinen letzten Schritten durcheinander.
    ​Fehler 1 "Straßen" wurde nicht deklariert. Auf das Objekt kann aufgrund seiner Schutzstufe möglicherweise nicht zugegriffen werden.

    Spoiler anzeigen

    VB.NET-Quellcode

    1. Public Class Kreuzung
    2. Private ReadOnly Straßen As New List(Of Straße)
    3. End Class
    4. Friend Class Straße
    5. Private TatsächlicherStraßentyp As Straßentyp
    6. Private ReadOnly Ampeln As New List(Of Ampel)
    7. Friend Sub New()
    8. Ampeln.Add(New Ampel)
    9. Ampeln.Add(New Ampel)
    10. End Sub
    11. Dim NeueStrasse As New Straße
    12. Friend Sub ErstelleKreuzung()
    13. Straßen.Add(New Straße) 'Der Fehler....
    14. 'Straßen.Add(New Straße)
    15. NeueStrasse.TatsächlicherStraßentyp = Straßentyp.Hauptstraße
    16. End Sub
    17. End Class
    18. 'Das Enum ist außerhalb aller Klassen
    19. Friend Enum Straßentyp
    20. Hauptstraße
    21. Nebenstraße
    22. End Enum
    23. Friend Class Ampel
    24. Private ReadOnly Lichtkästen As New List(Of Lichtkasten)
    25. End Class
    26. Friend Class Lichtkasten
    27. Private AnzahlLampen As Integer
    28. Private Farbe As List(Of Color) = Nothing
    29. Private Sub Signalfarben()
    30. Farbe = New List(Of Color) From {Color.Red, Color.Yellow, Color.Lime}
    31. End Sub
    32. End Class



    Demzufolge geht das auch nicht.

    VB.NET-Quellcode

    1. Friend Sub ErstelleKreuzung()
    2. Straßen.Add(New Straße With {.TatsächlicherStraßentyp = Straßentyp.Hauptstraße})
    3. Straßen.Add(New Straße With {.TatsächlicherStraßentyp = Straßentyp.Nebenstraße}))
    4. End Sub
    Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen. :huh:
    nochemol: Weil Du die Methode ErstelleKreuzung immer noch in der falschen Klasse hast. Die gehört nicht in Straße, sondern in Kreuzung. Zeile#14 kannst Du löschen.

    Amelie schrieb:

    Aber ist ja eh hinfällig.
    Oh nein, darum kümmern wir uns, nachdem Du die Methode in der Kreuzungs-Klasse platziert hast. Obwohl, während Du die Verschiebung vornimmst, kannst Du ja gleich darauf noch antworten: Welche Methode von welcher Klasse wird denn bei diesem Code aufgerufen: Straßen.Add(New Straße(Straße.Hstr.Hauptstr, True)). Achtung, Fangfrage! Denn es wird je eine Methode von je einer Klasse aufgerufen. Welche jeweils?
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Achtung, Fangfrage!... ja verstehe ich glaube ich nicht richtig.
    Straßen.Add(New Straße(Straße.Hstr.Hauptstr, True))
    Straßen.Add kommt von der ListOf
    Straße.Hstr.Hauptstr stammt von Klasse "Straße" und dem alten "Enum"

    Im Moment kommt mir das wieder so kompliziert vor.. ;(
    Also nochmal umsortiert und geändert:
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Public Class Kreuzung
    2. Private ReadOnly Straßen As New List(Of Straße)
    3. Friend Sub ErstelleKreuzung()
    4. Straßen.Add(New Straße With {.TatsächlicherStraßentyp = Straßentyp.Hauptstraße})
    5. Straßen.Add(New Straße With {.TatsächlicherStraßentyp = Straßentyp.Nebenstraße})
    6. End Sub
    7. End Class
    8. Friend Class Straße
    9. Public TatsächlicherStraßentyp As Straßentyp
    10. Private ReadOnly Ampeln As New List(Of Ampel)
    11. Friend Sub New()
    12. Ampeln.Add(New Ampel)
    13. Ampeln.Add(New Ampel)
    14. End Sub
    15. End Class
    16. Friend Enum Straßentyp
    17. Hauptstraße
    18. Nebenstraße
    19. End Enum
    20. Friend Class Ampel
    21. Private ReadOnly Lichtkästen As New List(Of Lichtkasten)
    22. End Class
    23. Friend Class Lichtkasten
    24. Private AnzahlLampen As Integer
    25. Private Farbe As List(Of Color) = Nothing
    26. Private Sub Signalfarben()
    27. Farbe = New List(Of Color) From {Color.Red, Color.Yellow, Color.Lime}
    28. End Sub
    29. End Class

    Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen. :huh:
    Der Code sieht gut aus. Bis auf die Lichtkastenklasse. Ein Lichtkasten kann nur eine Farbe haben. Oder täusche ich mich? Habe noch nie gesehen, dass der untere der drei Lichtkästen einer "Autoampel", die sonst immer nur grün leuchtet, plötzlich rot leuchtet. Korrigier mich, wenn ich mich irre.
    Die Methoden-Klassen-Frage hast Du zur Hälfte richtig beantwortet und damit den Fangfragenteil beseitigt. Eine Klasse ist vom Typ List(Of Straße), die aufgerufene Methode ist die Add-Methode. Aber es wird noch eine Methode einer anderen Klasse aufgerufen. Kleiner Tipp: sie steht in den runden Klammern. Du hattest sie selber beinahe erwähnt. Nenn nochmal den genauen kompletten Fehlerlaut der Meldung, die bei Straßen.Add(New Straße(Straße.Hstr.Hauptstr, True)) auftritt.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Also ich hab mal ein Bild gemacht um mir das alles etwas zu verdeutlichen.
    Hoffe das ist so richtig.
    -------------------
    Der Lichterkasten ist für mich das komplette Teil mit den Lampen; deswegen habe ich da:
    "Private AnzahlLampen As Integer" mit drin.
    Bei Autos 3 Lampen, bei Fussgänger 2 Lampen oder Autos 1 Lampe wenn der grüne Rechtsabbiger dabei wäre.
    -------------------
    Den genauen Fehler weiß ich nicht mehr. Aber ich denke das "True" was von dem IstHaupstrasse kam.
    Bilder
    • kreuzung.jpg

      148,86 kB, 800×567, 72 mal angesehen
    Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen. :huh:
    Frage, deren Antwort ich nicht kenne: Was ist für Dich der Unterschied zwischen Ampel und Lichtkasten? Davon hängt natürlich ab, welche Klassen überhaupt im Programm benötigt werden.

    Amelie schrieb:

    Den genauen Fehler weiß ich nicht mehr.
    Füge die Codezeile an der entsprechenden Stelle wieder ein und schau Dir die Fehlermeldung an und poste sie. Wenn Du die Zeile löschst und der Fehler nicht mehr da ist, kannst Du nicht daraus lernen und weißt auch (beim nächsten Mal) nicht, was der Compiler für ein Problem mit der Zeile hatte.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Bild: Eine Ampel mit 4 Lichterkästen.
    Merke gerade das da noch jede Menge käme um das alles in die Klassen zu packen. Aber es reicht ja ein Lichterkasten (RGG)
    Der kann dann ja "Ampel" heißen ;)
    --------
    Habe das so gut es ging wieder in den alten zustand gebracht.
    Fehler:
    Fehler 1 "Straßen" wurde nicht deklariert. Auf das Objekt kann aufgrund seiner Schutzstufe möglicherweise nicht zugegriffen werden.
    Fehler 2 Der Verweis auf einen nicht freigegebenen Member erfordert einen Objektverweis.

    Also kann man nicht auf die ListOf etc. zugreifen
    Bilder
    • ampel.jpg

      102,53 kB, 380×318, 71 mal angesehen
    Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen. :huh:

    Amelie schrieb:

    Der kann dann ja "Ampel" heißen
    Wie Du das Ding in Deinem Code nennst, musst Du selbst und am besten jetzt entscheiden. Wenn Ampel zu flapsig/umgangssprachlich oder gar falsch ist, nenn es Lichtkasten. Das werd ich akzeptieren. Nur muss es klar festgelegt werden, sonst reden wir aneinander vorbei, weil wir dann eine andere Vorstellung von den Objekten haben. Also: Sehen wir dort eine rotgelbgrün-Ampel oder einen rotgelbgrün-Lichtkästen? Das legst Du jetzt bitte fest.

    Amelie schrieb:

    Habe das so gut es ging wieder in den alten zustand gebracht.
    Oje. Es hätte der Code aus Post#51 gereicht. Da hättest Du nur zwischen Zeile#5 und #6 folgende Codezeile gebraucht: Straßen.Add(New Straße(Straße.Hstr.Hauptstr, True))
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Also gut nennen wir das Teil dann "Lichtkasten". Das wären dann pro Strasse 2 Lichtkästen mit je 3 Lampen. OK?
    So hier noch der jetzt wieder hergestellte Code.

    Spoiler anzeigen

    VB.NET-Quellcode

    1. Public Class Kreuzung
    2. Private ReadOnly Straßen As New List(Of Straße)
    3. Friend Sub ErstelleKreuzung()
    4. Straßen.Add(New Straße With {.TatsächlicherStraßentyp = Straßentyp.Hauptstraße})
    5. Straßen.Add(New Straße With {.TatsächlicherStraßentyp = Straßentyp.Nebenstraße})
    6. End Sub
    7. End Class
    8. 'neue Class
    9. Friend Class Straße
    10. Public TatsächlicherStraßentyp As Straßentyp
    11. Private ReadOnly Ampeln As New List(Of Ampel)
    12. Friend Sub New()
    13. Ampeln.Add(New Ampel)
    14. Ampeln.Add(New Ampel)
    15. End Sub
    16. End Class
    17. 'neue Class
    18. Friend Class Ampel
    19. Private ReadOnly Lichtkästen As New List(Of Lichtkasten)
    20. End Class
    21. 'neue Class
    22. Friend Class Lichtkasten
    23. Private AnzahlLampen As Integer
    24. Private Farbe As List(Of Color) = Nothing
    25. Private Sub Signalfarben()
    26. Farbe = New List(Of Color) From {Color.Red, Color.Yellow, Color.Lime}
    27. End Sub
    28. End Class
    29. 'Außerhalb aller Classes
    30. Friend Enum Straßentyp
    31. Hauptstraße
    32. Nebenstraße
    33. End Enum

    Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen. :huh:
    "Lichtkasten" also. Ok.
    Dann kann aber die Klasse Ampel weg. Und in Straße muss dann auch alles was Ampel hieß, nun entsprechend umbenannt werden.
    Und an der Klasse Lichtkasten müssen wir später noch einiges machen.
    Ich warte immernoch auf die genaue Fehlermeldung.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    OK Das mit der Class Ampel und den Lichtkasten ist erledigt.
    --
    Das war der Fehler in meiner alten Version.
    ​Fehler 1 "Straßen" wurde nicht deklariert. Auf das Objekt kann aufgrund seiner Schutzstufe möglicherweise nicht zugegriffen werden. Fehler 2 Der Verweis auf einen nicht freigegebenen Member erfordert einen Objektverweis.
    Asperger Autistin. Brauche immer etwas um gewisse Sachen zu verstehen. :huh:
    Das ist aber nicht der Fehler, über den ich reden wollte. Änder mal bitte die ErstelleKreuzung-Sub wieder zurück in:

    VB.NET-Quellcode

    1. Friend Sub ErstelleKreuzung()
    2. Straßen.Add(New Straße(Straßentyp.Hauptstraße, True))
    3. 'Straßen.Add(New Straße With {.TatsächlicherStraßentyp = Straßentyp.Hauptstraße})
    4. 'Straßen.Add(New Straße With {.TatsächlicherStraßentyp = Straßentyp.Nebenstraße})
    5. End Sub

    und berichte.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.