代替の内部名を提供する、
Sub と
Function 命令文の節
構文:
用法:
declare sub usablename Alias "alternatename"
( ... )
または
declare function usablename Alias "alternatename"
( ... )
または
sub usablename Alias "alternatename"
( ... )
...
end sub
または
function usablename Alias "alternatename"
( ... )
...
end function
または
type typename Alias "alternatename" ( ... )
...
end type
記述:
Alias は、手続きに別名を与えます。
この代替の名前は、手続きを呼ぶプログラムの中で使うことができません。しかし、
他の言語で書かれているコードにリンクするとき、それはリンカに見えます(関数が非公開でないなら)。
Alias は、他の言語で書かれたライブラリの手続きにおいて一般的に使用されます。そのような手続き名は、BASICでは無効ですが、他の言語の方で有効です。
Alias を、
Declare と共に使うとき、別名だけがリンカによって使用されます。
通常の手続き名とは異なり、
Alias は代替名の大文字と小文字を変えません。このため、外部コードで特定の名前または特定の大文字と小文字の区別のあるエクスポート関数が必要な場合に、役立ちます。
Alias を使って、
type 定義の、代替名を指定できます。
Alias は、手続きパラメータの、代替名修飾を指定する、修飾子として使えます。
Alias (修飾子) を参照
例:
この例は、外部ライブラリに、
xClearScreen と呼ばれる sub があり、これを名前
ClearVideoScreen で参照したい場合、これを実現するものです。
Declare Sub ClearVideoScreen Alias "xClearScreen"
()
外部ライブラリに
MyFunctioninLib という名前の関数 (パラメーターと戻り値を含む) があり、これを
myfunction という名前で参照する場合は、次のサンプル コードを参照してください:
Declare Function myfunction Alias "MyFunctioninLib" (ByVal As Long, ByVal As Long, ByVal As ZString Ptr) As Integer
手続きは、
MyExportedProc として輸出され、外部の C コードによって使われることを意味します。
Function MultiplyByFive cdecl Alias "MyExportedProc" (ByVal Parameter As Integer) As Integer Export
Return Parameter * 5
End Function
QBからの違い:
-
QB では、Alias は、Declare と共に働いていただけです。
参照: