Hallo Forum, hat hier schon jemand mit QP gearbeitet? Ich benutze es grade und ich brauche eine Funktion die angibt aus welcher der letzte State war(vor dem Aktuellen State). Mit der Info will ich unter anderem entscheiden in welchen State ich springen muss. Kennt jemand die entsprechende Funktion bzw. gibts es sowas QP? Bsp. Last_Steate = get_last_state(); if( Last_Steate == B){ wechsle zu state G } else{ wechsle zu state Z }
Was bedeutet die Abkürzung "QP" hier? Möglicherweise handelt es sich hier um ein spezielles Problem im Zusammenhang mit "QP", aber im allgemeinen, wird ist der Folgezustand einer Zustandsmaschine nur vom gegenwärtigen Zustand und den Eingangssignalen abhängig. Magst Du einmal erklären, warum Du annimmst, dass das in Deinem Fall nicht so sein sollte.?
Das ist QP http://www.state-machine.com/ Weils einem das Leben erleichtert und im meinem Fall Code Spart. Bei mir unterscheiden sich check1 & check 2 nur in dem sinne dass sie in verschiedene Stati springen. Wenn ich wüste aus welchen Status die state maschiene kommt bräuchte ich nur ein check mit einer if else Anweisung.
oder du lagerst den check in ein unterprogramm aus und rufst dieses von den beiden unterschiedlichen zuständen auf.
Hm. Tja. Du könntest natürlich in Init und makeA eine Variable jeweils so setzen, das klar ist, welcher der beiden Zustände aktiv war. Die kannst Du dann mit einer Bedingung abfragen. ABER: Das ist nicht fachgerecht! Ich rate Dir ernsthaft davon ab. An sich gibt es in einer "fachgerechten" State-Machine auch keinen Grund den vorherigen Zustand zu speichern, so daß es sehr wahrscheinlich auch garkeine Funktion geben wird, um ihn festzustellen. (Das mag hier anders sein, die Funktion sollte dann aber in der Referenz zu QP irgendwie zu finden sein. Da kann ich leider keinen Rat geben. Tut mir leid). Die Codegröße wird sich in beiden Fällen (dem fachgerechten und dem "Würgaround" :-) sehr wahrscheinlich nicht wesentlich unterscheiden. Ein "Erleichterung" ist es meiner Ansicht nach in keinem Fall, weil es denn Code schwerer verstehen lässt zumal es von der formal korrekten Methode eine solche State-Machine zu implementieren abweicht. Ist nur meine Meinung. Mache es wie Du denkst.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.