エラー、バグ、質問 - ページ 2211

 
pavlick_:

そのクラスは本当にネームスペース・クラスなのか?

 
pavlick_:

何かポイントはあるのでしょうか?修飾語のない名前の検索はどこで文書化されているのですか?参考文献より

---------

シンタックス

MQL5トレーディングストラテジーのプログラミング言語のシンタックスは、いくつかの機能を除いてC++プログラミング言語と非常によく似ています。

  • は、アドレス演算を行いません。
  • は、goto 演算子ではありません。
  • では、無名列挙を 宣言することはできません。
  • 多重継承を行わない。

------------

無条件に名前を調べるということは一言もなく、これは基本的なことです。まあ、レナーテの書き込みやドキュメントの少なさ、後方互換性から学ぶのは持ち主次第ですが、そうなると子供の遊び道具のような印象を受ける言語になってしまいますね。

私はそれを支持します、それは本質的にmql5はすでに別のプログラミング言語であるため、言語規則に向かってヘルプを放棄する時間についてです。

 
Konstantin:

私は、本質的にmql5はすでに別のプログラミング言語 であるため、ヘルプから言語のルールに移行する時期が来ていると思います。

どこかで逆のことを言われたのでしょうか?

 
Alexey Navoykov:

そのクラスは本当にネームスペース・クラスなのか?

はい、おっしゃるとおり、namespaceを参照しています。クラスについては別の条文がありますが、ポイントは同じです。

9.2.3.2  Static data members
[class.static.data]
2. The declaration of a non-inline static data member in its class definition is not a definition and may be of
an incomplete type other than cv void. The definition for a static data member that is not defined inline
in the class definition shall appear in a namespace scope enclosing the member’s class definition. In the
definition at namespace scope, the name of the static data member shall be qualified by its class name using
the :: operator. The initializer expression in the definition of a static data member is in the scope of its class (3.3.7).

[Example:
class process {
static process* run_chain;
static process* running;
};
process* process::running = get_main();
process* process::run_chain = running;

The static data member run_chain of class process is defined in global scope; the notation process::run_chain specifies that the member
run_chain is a member of class process and in the scope of class process. In the static data member definition, the
initializer expression refers to the static data member running of class process. — end example]
 
Alexey Viktorov:

どこかで逆のことを言ったかな?

私が何か逆のことを言ったか? なぜ私に質問しているのか?

 
pavlick_:

コンパイラーエラーです。

アラート:3

エラーが表示されないのですが。これは正しいと思います。

まず、構造体のstaticメンバに 値5を、変数に値3を代入します。

そして、その変数の値が構造体のstaticメンバにコピーされます。

この静的メンバには、変数に代入した値を入れておくことは明らかです。

とても理にかなっていると思います。

 
Georgiy Merts:

エラーが表示されないのですが。私の考えでは、すべてが正しいのです。

私には、すべてが非常に論理的だと思える。

論理は一様であるべきで、選択的であってはならない(そうでなければ論理ではない)

もし、ここで

int a = 1;
struct A {
    void f();
    int a;
};
void A::f()
{
   a = 2; //(*)
}

(*) は A::a = 2 を意味し、 ::a = 2 を意味するものではありません。

また、S::q = S::z を意味するはずで、S::q = ::z を意味するのではありません。

削除済み  

申し訳ございません。理解できない。で、俺を殺したのか?それとも、そうなのか?

この掲示板でおしっこをしてもいいのでしょうか?
 
B0biThec:

申し訳ございません。理解できない。で、俺を殺したのか?それとも、そうなのか?

この掲示板でおしっこをしても いいのでしょうか?

スパムのため、24時間アクセス禁止になりました。スパムが続くと1週間BAN→1ヶ月→アカウント削除となり、適当なところで小便を する。

 
Artyom Trishkin:

スパムのため、24時間のアクセス禁止となりました。1週間、1ヶ月とスパムを続け、アカウントを削除し、適切な場所で小便を する。

休暇から戻る?