class ASD { private: // Здесь располагаются переменные и функции, доступные только внутри класса public: int Add(int a,int b) { Print(__FUNCTION__,": Результат сложения: a",a," + b",b," = ",a+b); return(a+b); } } ar; //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ voidOnStart() { //--- ar.Add( inputA, inputB ); } //+------------------------------------------------------------------+
class ASD { private: int d; int g (int a_s,int a_d){d=a_s+a_d;return (d=a_s+a_d); } public: void fg (int a_s,int a_d) { g (a_s,a_d); } void sf () {Alert (d);} };
class ASD { private: int d; int g (int a_s,int a_d){d=a_s+a_d;return (d=a_s+a_d); } public: void fg (int a_s,int a_d) { g (a_s,a_d); } void sf () {Alert (d);} };
ここで、クラス内の関数の呼び出しについて、private: public: の方法、クラスへのデータの渡し方、クラスからの結果の取得方法について説明します。今のところこれです!
クラス内では、結果は何らかの方法で計算されなければならない。また、あなたが関与しないクラスは、今結果を返す必要があるが、他の時点では必要ないことをどのように理解するのでしょうか?
そこで、外部から呼び出せるクラス内部のメソッドが必要になります。だから、公開しなければならないのです。
もちろん、クラス内のすべてのデータを読み込んでクラス変数に書き込むプライベートメソッドを作り、パブリックメソッドはそのプライベートメソッドを呼び出すということもできますが。しかし、いずれにせよ何らかのメソッドが呼び出されなければならない。そして、プライベートメソッドで何をカウントするのか、どれだけ複雑な計算をするのか、どんな変数で計算するのか、すべて自分次第、自分の責任で決めることができるのです。
それは、クラスの中でどのように関数を呼び出すか、すなわちprivate:public:をどうするか、クラスにどのようにデータを渡すか、クラスからどのように結果を得るか、という点だ。今のところ、これだ!
#property strict
#property script_show_inputs
//--- input parameters
input int inputA=1;
input int inputB=3;
class ASD
{
private:
// Здесь располагаются переменные и функции, доступные только внутри класса
public:
int Add(int a,int b)
{
Print(__FUNCTION__,": Результат сложения: a",a," + b",b," = ",a+b);
return(a+b);
}
} ar;
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
//---
ar.Add( inputA, inputB );
}
//+------------------------------------------------------------------+
動作するはずです。正しいかどうかは確認していません)
お待たせしました!ありがとうございます!もう動き出しましたよ〜。
スクリプトの
ASD ar;
void OnStart()
{
ar.fg (3,5);
ar.sf ();
}
クラスとなります。
{
private:
int d;
int g (int a_s,int a_d){d=a_s+a_d;return (d=a_s+a_d); }
public:
void fg (int a_s,int a_d) { g (a_s,a_d); }
void sf () {Alert (d);}
};
Alert の結果は 8 ですが、これはクラスからのアラートであり、スクリプトからのアラートが必要です。
ほら、ありがとう、もう動き出しましたよ〜。
スクリプトの
ASD ar;
void OnStart()
{
ar.fg (3,5);
ar.sf ();
}
クラスとなります。
{
private:
int d;
int g (int a_s,int a_d){d=a_s+a_d;return (d=a_s+a_d); }
public:
void fg (int a_s,int a_d) { g (a_s,a_d); }
void sf () {Alert (d);}
};
Alert の結果は 8 ですが、これはクラスからのアラートであり、今はスクリプトからのアラートが必要です。
さて、クラスでAlert()メソッドを宣言し、ar.Alert()と呼びますが、今はsf()メソッドでも同じことができますね。フィールドdに値を書き込んだ後、何を確認したいのかがよくわからないのですが?
動作するように見えるが、まだ確認していない)
みんな!!(笑本当にありがとうございました。了解しました。
スクリプトを使用します。
ASD ar;
void OnStart()
{
ar.fg (3,5);
Alert ( ar.sf ());
}
クラスとなります。
{
private:
int d;
int g (int a_s,int a_d) {return (d=a_s+a_d); }
public:
void fg (int a_s,int a_d) { g (a_s,a_d); }
int sf () {return (d);}
};
噛み砕きます!
このスレッドで誰がテスターが壊れたと書いたか覚えていませんが、壊れたも同然かもしれないと答えることができます。異なる時間の塊を飲み込んだり、任意のセグメントからカウントを開始したりする(ただし、すべての引用は存在する)。
見るべき人が見ればわかると思うんです。
からインポート することができるかどうか教えていただけませんか?
(指定された値の倍数に丸められた数値を返す)
または丸め方、例えば 2285.13 は (0.25) の倍数になるように 2285.00 __ 2285.25 __ 2285.50 __ 2285.75
口座ではなく、ペアのレバレッジを知るには?
提供されるレバレッジの大きさ。