CheckPointer

オブジェクトポインタのタイプを返します

CheckPointer

ENUM_POINTER_TYPE  CheckPointer(
   object* anyobject,     // オブジェクトポインタ
   );
  • 引数
引数名初期値I/O詳細
anyobject-INオブジェクトポインタを渡します
  • 戻り値

ENUM_POINTER_TYPE列挙の値を返します

  • その他

配列はAlert()関数に渡す事が出来ません。

不正なポインタを使用する事はプログラムの致命的エラを招く為、
ポインタを使用する前にCheckPointer()関数を呼ぶ必要があります。

不正なポインタのケースは以下の通りです。
 ・ポインタがNULL
 ・オブジェクトがdelete演算子を使用して削除されている

この関数は、ポインタの有効性を確認する為に使用する事が出来ます。
ポインタがアクセスする為に使用できる値はゼロ以外です。

  • サンプルソース
#property strict

void OnInit(){
    double   tmp_double = 0.123456789;
    double    tmp_float  = 0.123456789;
    bool     tmp_bool   = false;
    datetime tmp_date  = D'23.1.2345 11:22:33';
    color    tmp_color1 = clrRed;
    color    tmp_color2 = C'12,34,56';

    Alert("test1" ,
          "test2\n" ,
          "double(d2s)   =", DoubleToStr(tmp_double,10) ,           "\n",
          "double        =", tmp_double,                              "\n",
          "float         =", tmp_float,                               "\n",
          "tmp_bool      =", tmp_bool,                                "\n",
          "tmp_date      =", tmp_date,                                "\n",
          "tmp_date(d2s) =", TimeToString(tmp_date,TIME_SECONDS ),"\n",
          "tmp_color1    =", tmp_color1,                              "\n",
          "tmp_color2    =", tmp_color2,                              "\n"
          );
}

Twitterでフォローしよう

おすすめの記事