q#中的“ break”是什么意思?

时间:2018-07-07 17:46:12

标签: break q#

满足条件后如何跳出循环圈? 例如:

for (i in 0..10){
    if (i==3){
        // equivalent of break
     }
}

1 个答案:

答案 0 :(得分:6)

Q#中没有中断;但是,您可以使用repeat-until-success loop来实现此行为。

Q#不是通用语言,旨在允许对何时在量子设备上执行程序进行许多优化。循环是这种设计的一个示例:如果您事先知道循环将执行多少次迭代,请使用for循环,如果需要迭代直到满足某些条件,请使用repeat-until-success循环。

您的示例(这并不是为什么需要休息的一个很好的示例)将被写成这样:

mutable i = 0;
repeat {
    set i = i + 1;
} until (i == 10 || i == 3)
fixup {
    ();
}