|
参考各位指点,我搞出了一个方法,定向计次循环,是否逆向直接在第二个参数中设置为真,并且还额外支持取回计次总数、计次初始值
<火山程序 类型 = "通常" 版本 = 1 />
方法 定向计次循环 <公开 静态 注释 = "根据条件来决定是正向计次还是逆向计次。将子语句体循环指定所指定的次数."
注释 = "在子语句体中,可以使用\"取循环值\"方法取回当前循环索引值(0到\"循环次数\"参数值-1)." 注释 = "在子语句体中,可以使用\"取循环数\"方法取回当前循环次数"
注释 = "在子语句体中,可以使用\"取循环初值\"方法取回当前循环一开始的循环索引值(逆向时是循环次数-1否则是0)" 折叠
@嵌入式方法 = "name = counter\r\nhas_loop_body = true">
参数 循环次数 <类型 = 整数 编辑时信息 = "11AA99, 0, 0, 0">
参数 逆向 <类型 = 逻辑型 注释 = "假为正向,真则为逆向" @默认值 = 假>
{
@ for (INT nx = @<逆向>?1:0, __vol_counter_sum_sm = @<循环次数>, __vol_counter_index_sm = nx?__vol_counter_sum_sm - 1:0; nx?__vol_counter_index_sm >= 0: __vol_counter_index_sm < __vol_counter_sum_sm;nx?__vol_counter_index_sm--: __vol_counter_index_sm++)
}
方法 取循环值 <公开 静态 类型 = 整数 注释 = " 只能在\"正向计次\"/\"逆向计次\"语句的子语句体中使用,用作取回当前循环索引值,"
注释 = "所取回的值范围为从0到\"正向计次\"调用语句中所指定的\"循环次数\"参数值-1."
注释 = " 如果有多层\"正向计次\"/\"逆向计次\"嵌套,本方法将返回所处最近层\"正向计次\"/" 注释 = "\"逆向计次\"的索引值." 折叠
@嵌入式方法 = "parent = \"counter\"">
{
@ __vol_counter_index_sm
}
方法 取循环数 <公开 静态 类型 = 整数 注释 = " 只能在\"正向计次\"/\"逆向计次\"语句的子语句体中使用,用作取回当前循环总数" 折叠
@嵌入式方法 = "parent = \"counter\"">
{
@ __vol_counter_sum_sm
}
方法 取循环初值 <公开 静态 类型 = 整数 注释 = " 只能在\"正向计次\"/\"逆向计次\"语句的子语句体中使用,用作取回当前循环的初始值" 折叠
@嵌入式方法 = "parent = \"counter\"">
{
@ nx?__vol_counter_sum_sm-1:0
}
|
|