Gepostet: |
Frage zur Typ-Generierung | ||||||||||
Hallo, wie kann ich einen Typ erzeugen, der entweder ein Integer ist oder der String "inf"??? Und wie kann ich damit arbeiten ohne zu wissen, ob in der Variable nun "inf" steckt oder ein Integer? Asnnah |
|||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
du kannst deine Funktion so neutral schreiben das sie mit beiden arbeitet : z.b laenge::[a]->Int laenge []= 0 laenge (x:xs)=1+(laenge(xs)) in length kannst du jede liste reintun...egal welcher art dann erzeugst du dir einen eigenen Typen
und laenge test gibt 4 zurrück gruß jacke |
|||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Oh danke das hilft mir weiter :-) | |||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Geht die Variante auch irgendwie ohne S und I, weil dann beim Ausgeben der der Testliste immer das S und das I stehen??? | |||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Hallo, also wenn es nur um die Ausgabe geht, kannst du statt die Instanz der Klasse Show automatisch ableiten zu lassen, deine eigene definieren: data MeinTyp = I Int | S String Dann sieht deine Ausgabe so aus: [3,"Hallo",7,"hi"] Viele Grüße, Siracusa |
|||||||||||
Zum Seitenanfang | |||||||||||