文字列の追加
文字列の追加とは、特定の文字列の後ろに別の文字列を追加することを指します。例えば通貨ペアの名称に拡張子を付与したり、メール本文の行末に改行コードを挿入する、というような場面で使用出来るのが今回紹介する関数となります。
文字列を追加するStringAdd関数
文字列を追加するには、MQL4で提供されているStringAdd関数を使用します。
bool StringAdd( string& string_var, // string, to which we add string add_substring // string, which is added );
引数
string_var
第一引数のstring_varには追加される側の文字列を指定します。この引数は参照渡しとなり、引数として使用した変数の内容が直接書き換わる事になります。
add_substring
第二引数のadd_substringには追加する文字列を指定します。
戻り値
文字列の追加に成功した場合はtrue、それ以外の場合はfalseが返却されます。
使用例
string message = "chart symbol is "; bool result = StringAdd(message, Symbol()); if (result) { Alert(message); }
chart symbol is USDJPY
上記例では、messageという変数に格納された文字列の後ろにチャートの通貨ペア(Symbol関数で取得可能)を追加し、成功した場合はアラートで追加後の文字列を表示しています。
「+」による連結との違い
MQL4では文字列連結の方法として「+」を使用する方法も用意されていますが、StringAdd関数のように文字列の追加に成功したかどうかを判断することは出来ません。そのため、文字列の追加に成功した場合と失敗した場合で処理を分けたい場合はStringAdd関数を使用することになります。
StringConcatenate関数との違い
もう一つの文字列連結の方法としてStringConcatenate関数も用意されています。StringAdd関数では文字列の後ろに別の文字列を追加することしか出来ませんが、StringConcatenate関数では前後どちらにも別の文字列を追加することが出来ます。
まとめ
参考URL
StringAdd – MQL4 Reference
https://docs.mql4.com/strings/stringadd