AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Case-Anweisung wird ignoriert

Ein Thema von ToFaceTeKilla · begonnen am 13. Mai 2008 · letzter Beitrag vom 13. Mai 2008
Antwort Antwort
ToFaceTeKilla

Registriert seit: 17. Mai 2006
Ort: Leipzig
283 Beiträge
 
Delphi XE2 Professional
 
#1

Case-Anweisung wird ignoriert

  Alt 13. Mai 2008, 12:41
Hallo zusammen!

Ich hab in meinem Programm folgende Case Anweisung:

Delphi-Quellcode:
case TypVergleich(aImpObj, aCurObj) of
         1: //Anweisung1
         2: //Anweisung2
         3: //Anweisung3
         end;
TypVergleich ist eine Funktion die aImpObj übergeben bekommt und neben dem Result noch aCurObj zurückliefern soll (ich brauche das aCurObj weil ich da noch drauf zugreifen will in den Anweisungen1,2,3).
Nun bin ich mir nicht sicher ob das überhaupt so funktionert (mit case eine funktion aufrufen und gleichzeitig aufs result zugreifen), deshalb hab ich das ganze wie folgt umgeschrieben:

Delphi-Quellcode:
TypVerglRes:= TypVergleich(aImpObj,aCurObj);
case TypVerglRes of
         1: //Anweisung1
         2: //Anweisung2
         3: //Anweisung3
         end;
TypVerglRes ist integer.

Bei beiden Varianten passiert allerdings nichts. Beim debuggen seh ich auch das auf TypVerglRes ein gültiger Wert steht, aber das CASE wird dann einfach übersprungen. Hab ich was falsch gemacht oder woran liegt das?

Danke schonmal im Voraus
Billy Gerwitz
"Bei der Softwareentwicklung suchen wir nicht den richtigen Weg, sondern den am wenigsten falschen." - frei nach V. Hillmann
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.549 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Case-Anweisung wird ignoriert

  Alt 13. Mai 2008, 12:45
Werden evtl. in den case-Labels nur Werte zugewiesen und anschließend nicht mehr benutzt? Dann wird das nämlich ggf. vom Compiler wegoptimiert.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
ToFaceTeKilla

Registriert seit: 17. Mai 2006
Ort: Leipzig
283 Beiträge
 
Delphi XE2 Professional
 
#3

Re: Case-Anweisung wird ignoriert

  Alt 13. Mai 2008, 12:50
Ah alles klar, das war mein Fehler.
Ich hatte die Anweisungen noch nicht vollständig geschrieben, weil ich erstmal testen wollte ob die Fkt. usw. alles funktioniert und deshalb nur ne Zuweisung drin.
Hatte mich schon gewundert warum bei "1: " der Haltepunkt ungültig wird

Danke dir
Billy Gerwitz
"Bei der Softwareentwicklung suchen wir nicht den richtigen Weg, sondern den am wenigsten falschen." - frei nach V. Hillmann
  Mit Zitat antworten Zitat
ToFaceTeKilla

Registriert seit: 17. Mai 2006
Ort: Leipzig
283 Beiträge
 
Delphi XE2 Professional
 
#4

Re: Case-Anweisung wird ignoriert

  Alt 13. Mai 2008, 12:53
Achso noch was: die Funktion mit
Case TypVergleich of aufrufen, bringt nichts oder? Also da wird nicht automatisch auf Result zugegriffen, wenn ich das richtige interpretiere, dass da der Debugger drüberspringt?!

EDIT: OK war Rotz, jetzt hält er ordnungsgemäß am Haltepunkt an...
Billy Gerwitz
"Bei der Softwareentwicklung suchen wir nicht den richtigen Weg, sondern den am wenigsten falschen." - frei nach V. Hillmann
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz