Visszatérés és bezárás
Két kifejezés érhető el, amelyek az aktuális alrutin vagy a program végrehajtását zárják le; a return
és a fail
kifejezéseket. A hívhatók általában befejezhetik a végrehajtást, mielőtt az összes utasításukat egy return
vagy fail
kifejezéssel hajtanák végre. Egy return
kifejezés éppen befejezi az aktuális callalbe végrehajtását, míg egy fail
az egész program végrehajtását befejezi, és futásidejű hibát eredményez.
Kifejezés visszaadása
A return
kifejezés kilép az aktuális hívhatóból, és visszaadja a vezérlést a hívónak. Egy veremkeret felugratásával módosítja a végrehajtás környezetét.
A kifejezés mindig értéket ad vissza a hívó környezetének; a kulcsszóból return
áll, amelyet a megfelelő típusú kifejezés követ. A visszaadott érték kiértékelése a megszüntető műveletek végrehajtása és a vezérlő visszaadása előtt történik. A megszüntetési műveletek közé tartozik például a hívható környezetében lefoglalt qubitek tisztítása és felszabadítása. Szimulátoron vagy érvényesítőn való futtatáskor a megszakítási műveletek gyakran magukban foglalják a qubitek állapotával kapcsolatos ellenőrzéseket is, például azt, hogy megfelelően vannak-e eltávolítva az összes élő qubittől.
Előfordulhat return
, hogy a hívható végén lévő kifejezés, amely értéket ad Unit
vissza, kihagyható. Ebben az esetben a rendszer automatikusan visszaadja a vezérlőt, ha az összes utasítás lefutott, és az összes megszüntető műveletet végrehajtották. A hívható függvények több return
kifejezést is tartalmazhatnak, bár a több return
kifejezést tartalmazó műveletek szomszédos implementációja nem hozható létre automatikusan.
Példa:
return 1;
vagy
return ();
Feladatkifejezés
A fail
kifejezés teljesen befejezi a számítást. Ez egy végzetes hibának felel meg, amely megszakítja a programot.
A kulcsszóból fail
, majd egy típuskifejezésből String
áll.
A String
rendszernek meg kell adnia az észlelt hibával kapcsolatos információkat.
Példa:
fail "Impossible state reached";
vagy interpolált sztring használatával
fail $"Syndrome {syn} is incorrect";
A megadott String
mellett egy fail
kifejezés ideális esetben gyűjti és engedélyezi a programállapotra vonatkozó információk lekérését. Ez megkönnyíti a hiba forrásának diagnosztizálását és orvoslását, és támogatást igényel a végrehajtó futtatókörnyezettől és a belső vezérlőprogramtól, amelyek különböző céloktól függően változhatnak.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: