演算子 == と != の状況を明らかにしてください。比較可能な変数が0以外の値を持つとき、それが真であると表現される(helpではそう記述される)。では、配列はどのように表現されるのでしょうか。そして、この例では、なぜ「2には等しくない」という比較があるのか、なぜ正確に2なのか、もし0以外の値が真であれば、差がなければ、1であれば、なぜ正確に2と書いてあるのか?以下は公式サンプルのコードです(Moving Average 2009-2017 v1.00 132行目より)。
MqlRates rt[2];
//--- go trading only for first ticks of new barif(CopyRates(_Symbol,_Period,0,2,rt)!=2)
{
Print("CopyRates of ",_Symbol," failed, no history");
return;
}
この方法でやるしかない。
また、非初期化時の処理についてもご教示ください。コードの中で、クラスのインスタンスだけが削除されるのを見たことがあるのですが。また、変数や配列はゼロにする必要があるのですか?何の役に立つんだ?クラスが削除されない場合はどうなりますか?端末がシャットダウンするまで、あるいはその後もメモリに残っているのでしょうか?
newで作成されたオブジェクトのみを削除する必要があります。
newで作成されたオブジェクトのみを削除する必要があります。
ありがとうございます。それはなぜか?
なぜなら、自分で削除することができないからです。
なぜなら、自分で削除することができないからです。
また、端末を閉じた場合、それは残るのでしょうか?
削除されるとは思いますが、確実ではありません。期待しないでください。作るのも、消すのも自分。
削除されると思いますが、確実ではありません。期待しないでください。作るのも、消すのも自分。
1.演算子"==" , "!="で比較すると、0以外の値はすべて真になるのですか?
2.配列はどのように表現されるのですか? 数値との比較は全くできないのですか?
3.なぜ "2 "がついているのですか?ヘルプによると、真実が0以外の値であれば、"1 "と書くのが論理的である。
4.CopyRatesの条件はエラーになったのですか?