FreeBASIC マニュアルのトップに戻る

FreeBASIC Declare

目次→命令文→手続きDECLARE←オリジナル・サイト

DECLARE 左にメニュー・フレームが表示されていない場合は、ここをクリックして下さい

←リンク元に戻る プログラム開発関連に戻る

モジュールレベルか、メンバー手続きを、宣言します。

構文:
Declare Sub name [ param_list ]
Declare Function name [ param_list ] [ Byref ] As return_type
Declare Operator op_symbol param_list [ [ Byref ] As return_type ]

Type T
Declare Constructor [ param_list ]
Declare Destructor
Declare Sub name [ param_list ]
Declare Function name [ param_list ] [ Byref ] As return_type
Declare Operator name [ param_list ] [ [ Byref ] As return_type ]
Declare Property name [ ( [ param_list ] ) ] [ [ Byref ] As return_type ]
End Type

パラメタ:
param_list
パラメタを、コンマで区切ってカッコで囲んだ一覧。
return_type
Function演算子、または Property 手続き の、戻りの型
name
手続きの名前かシンボル。
op_symbol
演算子の、名前かシンボル。
T
新しくユーザ定義する型の名前。

記述:
Declare 命令文は、Sub, Function, Operator, Constructor, Destructor を宣言します。
手続きは、どこかで定義する必要がありますが、その定義を見ることなくコード内で参照できます。
つまり、Declare 命令文は、手続きの存在を紹介していて、他の場所で定義されていることを伝えます。
たとえば、関数はソース・モジュールの上部で宣言され、呼び出され、ソースファイルの下部で定義されます。下の例を参照して下さい。

手続きの宣言は、宣言の前に Declare キーワードがあり、本文がないことを除いて、手続きの定義の最初の行とほとんど同じです。
また、Export などの属性は宣言から除外されます。

QB としての FreeBASIC は、関数が、別のソースファイルで、または、同じファイルでも、呼び出す場所より後ろで定義されてる場合は、宣言が必要ですが、それ以外では、関数の宣言は必要ありません。
これは、Type 本体内で宣言された手続きには当てはまりません。 Type 本体は、使う前に、常に Type 本体で最初に宣言する必要があります。
Type 手続きを宣言しないと、エラーが発生します。

関数を使う全てのファイルは、宣言を持たなければなりません。このため、通常、宣言は、どのモジュールでも関数が使えるようにするために、1つ以上の include files に保たれます。そして、モジュールは、#include 命令文を使う必要が有ります。

例:
モジュールレベル関数:
'' 二つの整数を取って、一つの整数を返す、合計関数 を宣言します。
Declare Function sum( As Integer, As Integer ) As Integer

   Print "420 と 69 の合計は: " & sum( 420, 69 )    '' 関数 sum を呼びます。
Sleep

'' 二つの整数を取って、一つの整数を返す、合計関数 を定義します。
Function sum( a As Integer, b As Integer ) As Integer
   Return a + b
End Function



型レベルの Sub:
Type my_type
    my_data As Integer
    Declare Sub increment_data( )
End Type

Sub my_type.increment_data( )
    my_data += 1
End Sub

Dim As my_type an_instance

an_instance.my_data = 68

an_instance.increment_data( )

Print an_instance.my_data
Sleep


方言差:

QBからの違い:

参照:
手続きに戻る

←リンク元に戻る プログラム開発関連に戻る

ページ歴史:2019-10-20 02:34:01
日本語翻訳:WATANABE Makoto、原文著作者:SysOp

ホームページのトップに戻る

表示-非営利-継承