コンパイラーによって実行される固有の定義(マクロ)。
構文:
__FB_ARG_RIGHTOF__( arg, sep [, ret]
)
パラメータ:
arg
引数
sep
区切り文字、明示的にコンマ (,) と変えます
ret
区切り文字が見つからない場合のデフォルトの戻り値
記述:
区切り文字 (sep) に基づいて、引数 (arg) の右のトークンを返します。
(引数の式では、トークンと区切り文字の間隔を空ける必要があります)
デフォルトでは、デフォルトの戻り値 (ret) が指定されていないと、区切り文字 (sep) が見つからなければ、マクロは何も返しません(空のトークン)。
一方、デフォルトの戻り値 (ret) が指定されていると、区切り文字 (sep) が見つからない場合、マクロはデフォルトの戻り値 (ret) を返します。
例:
#macro m( arg )
Scope
Var v = __FB_ARG_RIGHTOF__(
arg, versus, "Not found 'versus'" )
Print v
End
Scope
#endmacro
m(1 versus 2)
m("left-side" versus "right-side")
m(pi verso 3.14)
Sleep
/' Output:
2
right-side
Not
found 'versus'
'/
#macro count( range )
Scope
Dim x As
Integer = __FB_ARG_LEFTOF__(
range, To )
Dim y As Integer = __FB_ARG_RIGHTOF__( range,
To )
Dim s As Integer
= Sgn(y - x)
Print "Counting " & #range
For i As Integer = x To y Step s
Print i
Next i
End
Scope
#endmacro
count( 4 To 10
)
count( 7 To 2
)
Sleep
/' Output:
Counting 4 To
10
4
5
6
7
8
9
10
Counting 7 To 2
7
6
5
4
3
2
'/
バージョン:
QBからの違い:
参照: