Утилита Graphics editor MT4 предназначена для создания и редактирования графических объектов типа: Удобный и интуитивно понятный интерфейс позволяет быстро и эффективно редактировать основные параметры графических объектов и сразу же видеть результат изменений. Входные параметры Languages - русский/английский; base_corner - угол привязки...
//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
//--- Объект 1
CMyClass my_obj1;
my_obj1.State(5);
PrintFormat("Состояние Объекта 1: %d",my_obj1.State());
//--- Объект 2 - методом клонирования
CMyClass *ptr_my_obj2;
ptr_my_obj2=my_obj1.Clone();
if(CheckPointer(ptr_my_obj2)==POINTER_DYNAMIC)
PrintFormat("Состояние Объекта 2: %d",ptr_my_obj2.State());
//--- Объект 3 - методом копирования
CMyClass my_obj3;
my_obj3.State(3);
PrintFormat("Состояние Объекта 3: %d",my_obj3.State());
if(my_obj1.Copy(my_obj3))
PrintFormat("Состояние Объекта 1: %d",my_obj1.State());
}
わざわざどこに行くのか?
メールをチェックする
モデレーターの皆さん、こんにちは。普通の質問をしたら、失礼なことを言われた。 破るなら、オペレーターやポインターの無意味さも破れ。
そして、SokolovをOOPの話題には一切登場させないでください。このようなOOP擁護派が掲示板にいると、彼は苦悩の末に死んでしまうでしょう。
モデレーターの皆さん、こんにちは。普通の質問をしたら失礼なことを言われたので、それを取り締まるなら、オペレーターや標識のくだりも取り締まってください。
そして、SokolovをOOPのトピックに一切登場させないでください。このようなOOP擁護者がいると、このフォーラムは苦悩のうちに消滅してしまうでしょう。
OOPを題材にした良い例です。
ご自身の見解について何か明らかにされましたか?いいえ。
演算子のオーバーライドは、構文上の糖分以外の何ものでもありません。このようなやり方はやめて、代入演算子の代わりにCopy()やClone()メソッドを使ったほうが、単純明快でよいでしょう。
Vasilyさん、ご意見ありがとうございます。私はあなたの考え方に賛成ですが、ひとつだけ小さな追加事項があります。
スクリプトを確認中。
標準的な比較文字は、ポインタの後ろに置いておくのがよいでしょう。
ポインターとはどういう意味ですか?そういう意味では?
あらら...
視点について何か説明されましたか?いいえ。
文盲でもある嫌われ者の挑発に乗らず、自分の主張を説明する。
通常のプログラミング言語(C++ではない)では、「=」演算子のオーバーロードは禁止 されています。そのようなオーバーロード、特に代入演算子を使う前に、なぜそのような愚かな言語の設計者がそのようなことをするのか、よく考えてみることをお勧めします。
個人的にはandreiに、「おいおい、そんな恥ずかしいことするなよ」と言いたくなりました。FPのこと、そしてオペレーターのこと......そんなバカなことを言っている場合ではありません。hayteriteしたい - 歓迎:権威あるソースへの参照を与える、正当化する、など。今やっていることは、狂信的で、何より全く無教養な憎悪です。プログラマー、それも本職のようですが、こんなことを書くのはもう情けないです。
アーテム、あなたは間違っている。女の子がいなくて何ができる?- 彼女たちはみんな私たちのものです :-))
しかし、真面目な話、ここで議論したいのは、このことです。コピーコンストラクタを記述し、代入演算 子をオーバーライドしたクラスがあります。質問です。どのような場合にそうなるのか、また、違うものでなければならないのか。
コンパイラ自身が、クラスや構造体の全メンバーを単純にコピーするコピーコンストラクタを作成するのです。
コピー中に他の動作をさせたい場合は、独自のコピーコンストラクタを定義します。
と代入演算子で構成されています。
代入演算子は、既存のオブジェクトに対して呼び出されるため、まず、代入演算子が存在するかどうかを確認する必要があります。
を生成し、必要に応じて既存のオブジェクトを解放した後、コンストラクタと同じ処理を行います。