2016年2月15日 星期一

MQL4學習-compile遇到問題(implicit conversion from 'number' to 'string')

練習編寫以下程式,執行compile時,會出現"implicit conversion from 'number' to 'string'"的訊息。
雖然不會影響運作,但就是覺得很麻煩。

void OnStart()
  {
     double ma=iMA(Symbol(),PERIOD_CURRENT,20,0,MODE_EMA,PRICE_CLOSE,0);
     Print("ma="+DoubleToString(+ma));
     return;
  }


在網路上找了一些文章,還是看不太懂,花了不少時間。
終於找到一個類似的方法。
網路上的案例是用IntegerToString
說明如下:
    int Rperiod=123;

    Print(IntegerToString(Rperiod));

試了這個方法,卻出現"possible loss of data due to type conversion"

因為要把number轉換成string
找了另一個DoubleToString

修改成如下:
void OnStart()
  {
     double ma=iMA(Symbol(),PERIOD_CURRENT,20,0,MODE_EMA,PRICE_CLOSE,0);
     Print("ma="+DoubleToString(+ma));
     return;
  }

再做次compile就可以了。

沒有留言:

張貼留言