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

FreeBASIC MemberSub

目次→言語リファレンス→変数とデータ型→ユーザ定義型SUB (Member)←オリジナル・サイト

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


メンバー手続きを、宣言、または、定義します。

構文:
{ Type | Class | Union } typename
declare [ static | const ] Sub fieldname [calling convention specifier] [ alias external_name ] ( [ parameters ] ) [ Static ]
End { Type | Class | Union }

Sub typename.fieldname ( [ parameters ] ) [ Export ]
statements
End Sub

パラメタ:
typename
Type か、Class か、Union の名前
fieldname
手続きの名前
external_name
外部にリンクから見える、項目の名前。
parameters
手続きに渡される、パラメタ
calling convention specifier
Cdecl か、Stdcall か、Pascal の内の、いずれか一つ

記述:
Sub メンバーは、メンバー手続きを呼ぶために、演算子 . (メンバーアクセス) や、演算子 -> (メンバーアクセスへのポインタ) でアクセスされます。そして、任意で、パラメタの byvalbyrefを受け入れることができます。
typename は、Overload 予約語を明示的に使わなくても、多重定義できます。

typename は、型の名前で、この型で、Sub メソッドが宣言されて、定義されます。
typename のための名前解決は、手続きが、Namespace で使用されるときと、同じ規則に従います。

隠された this パラメータは、typename と同じ型を持っていて、非静的メンバー手続きに渡されます。
this は、TypeClass や、Union の項目にアクセスするのに使用されます。

型の外側でグローバルとして定義された重複するシンボルにアクセスするには、接頭辞として 1つまたはできれば 2つの点を追加します:.SomeSymbol またはできれば ..SomeSymbolWith..End With ブロック内の場合は ..SomeSymbol のみ)。

Static(メンバー) を、Static 指定子を使って宣言することができます。
Const(メンバー) を、Const 指定子を使って宣言することができます。

例:
Type Statistics
  count As Single
  sum As Single
  Declare Sub AddValue ( ByVal x As Single )
  Declare Sub ShowResults ( )
End Type

Sub Statistics.AddValue ( ByVal x As Single )
  count += 1
  sum += x
End Sub

Sub Statistics.ShowResults ( )
  Print "値の数 = "; count
  Print "平均値 = ";
  If( count > 0 ) Then
    Print sum / count
  Else
    Print "N/A"
  End If
End Sub

Dim stats As Statistics

stats.AddValue 17.5
stats.AddValue 20.1
stats.AddValue 22.3
stats.AddValue 16.9

stats.ShowResults

Sleep


出力:
値の数 = 4
平均値 = 19.2

方言差:
参照:
ユーザ定義型 に戻る
←リンク元に戻る プログラム開発関連に戻る
ページ歴史:2021-09-28 10:04:00
日本語翻訳:WATANABE Makoto、原文著作者:JeffMarshall

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

表示-非営利-継承