【MetaTrade/MQL4】変数宣言

MQLに戻る

目次

概要

プログラミングを使って様々なデータを扱って計算や処理を行なっていくのだが、そのデータを扱うということは、一時的にデータをプログラムが行われている間は保存しておくということだ。
今こうしてスマホやPCを操作していると思うが、ログイン情報、今開いているWebページ、ホーム画面の画像など、保存しているデータはたくさんある。

プログラムの中でもデータを保存しておくための箱を用意して様々な処理を行う。
今回はその箱、つまり変数の宣言の仕方を勉強していく。

ソースコード

//+------------------------------------------------------------------+
//|                                                       Sample.mq4 |
//|                                 Copyright 2024, SeekingStar LLC. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2024, SeekingStar LLC."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   int hp = 100;
   int attack = 30;
   double weakRate = 1.25;
   string name = "ミミッキュ";
   bool isEsper = true;
   
   Print(name);
   Print("HP:" + hp);
   Print("攻撃力:" + attack);
   Print("弱点ダメージ:" + (attack * weakRate));
   Print("エスパータイプ?:" + isEsper);
   
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   
  }
//+------------------------------------------------------------------+

実行結果

詳細

変数宣言のフォーマット

変数宣言は以下のように書く。

[型名] [変数名] = [初期値];

例題として以下を見てみよう。

int hp = 100;

上記の場合は、intは型名、hpは変数名、100が初期値になっている。
そして、忘れてはならないのが、行末には「;」をつける必要がある。
日本語で言うと「。」にあたるものだ。これが一つの処理の終わりを表す。

型名の種類

変数には色々な種類がある。表にするとこんな感じだ。

変数名内容
int整数を扱う
double小数を含む数字を扱う
string文字列を扱う。文字列は、「”」で囲った文章が対象になる。
booltrueかfalseを表す。数学が得意な人には「真」がtrue、「偽」がfalseだ。
「はい」がtrue、「いいえ」がfalseとなる。

こうすることで、まずはデータを一時的に保存しておくことが可能となる。
為替で例えるなら

  • 日本国内の株価はint型(円は整数のみだから)
  • 1ドルあたりの円がdouble型(小数だから)
  • 銘柄の名前がstring(名前は数字でなく、文字列だから)
  • 前日比より高値を表しているのをtrueとするなら、前日比より安値ならfalse(この辺りは開発者が決めることになる)
MQLに戻る