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

FreeBASIC ProPgConstantExpressions

目次→教本→プログラマーのための案内Constant Expressions←オリジナル・サイト

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

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

定数表現は、コンパイル時に評価できるを定義します。

序文:
定数式は、定数だけを含む式で(これは、評価時に変数が含まれないことを意味します)、一部の演算子/関数が許可され、演算子の優先順位を上書きするために括弧を含める場合があります。
定数式は、実行時ではなくコンパイル中に評価でき、定数が発生する可能性のある任意の場所で使うことができます。

定数式が主に必要とされる場合:
- プリプロセッサ指示文および組み込み定義マクロの引数として、
- 列挙型/型構造体や、グローバル/静的 変数の初期化子として、
- データ命令文のデータ定数として。

定数式で許可される演算子/関数のリスト
fbc はスクリプト言語ではなく、フロントエンドにフル機能のマクロプロセッサがありません。
定数畳み込みは、定数式を受け取り、コンパイル時に定数式を評価し、単一の定数の結果を生成する fbc の最適化です。
定数畳み込みが機能するためには、演算子/関数のコンパイル時の実装が書かれている必要があります。

定数式を構成するために使えるのは、定数引数を持つ次の演算子/関数だけです:

Bit, BitReset, BitSet, HiByte, HiWord, LoByte, LoWord
+, -, *, /, \, ^, Mod, Shl, Shr
=, <>, <=, >=, , >
And, Eqv, Imp, Or, Not, Xor
Abs, Acos, Asin, Atan2, Atn, Cos, Exp, Fix, Frac, Int, Log, Sgn, Sin, Sqr, Tan
Asc, Chr, CVD, CVI, CVL, CVLongInt, CVS, CVShort, Len, SizeOf
Cast, CBool, CByte, CDbl, CInt, CLng, CLngInt, CShort, CSign, CSng, CUByte, CUInt, CULng, CULngInt, CUnsg, CUShort
さらに明らかにすべての事前定義されたシンボル


定数式の基本的な使用例
3つの異なる使用例を示す例:
#define pi 4 * Atn(1)

Dim Shared As Double d = Sqr(2)

Type pt
    Dim As Integer x = 300 * Cos(pi / 6)
    Dim As Integer y = 300 * Sin(pi / 6)
End Type

Dim As pt p

Print pi        ''  3.14159...
Print d         ''  1.41421...
Print p.x, p.y  ''  260           150

Sleep

参照:
プログラマーのための案内に戻る
目次に戻る
←リンク元に戻る プログラム開発関連に戻る
ページ歴史:2021-10-02 13:53:04
日本語翻訳:WATANABE Makoto、原文著作者:fxm

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

表示-非営利-継承