問題タブ [member-functions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
98 参照

javascript - javascriptコンストラクターこれは正しくバインドされていません

問題:JavaScriptでコンストラクターを定義しましたが、考えられるほとんどすべてのパターンを試しました/Google。何らかの理由で、そのオブジェクトのメンバー関数を呼び出すときに何をしても、thisキーワードは常ににバインドされwindowます。どうしたらいいのかわからない。

JsFiddle: http: //jsfiddle.net/za6SN/2/

0 投票する
1 に答える
2390 参照

c++ - メンバー メソッド内の C++11 Lambda 関数がスコープを継承する

foreachラムダ関数 ala を受け入れる関数を作成しました。

メインループからラムダ関数を渡すと、意図したとおりに機能します。

ただし、メンバー メソッド内から同じ関数を呼び出そうとすると、ラムダ関数はメンバー関数のスコープを "継承" し、コンパイラ エラーが発生します。たとえば、Objectという名前のクラスのメンバー メソッド内にそれを含めようとするmethod()と、次のエラーが発生します。

ラムダ関数内にインスタンス固有の変数を含めることができるため、これはコンパイラが安全であることを認識しています。その場合、ラムダをスコープする必要がありますが、このラムダを「静的」にすることが可能かどうか疑問に思っています。

を試しましたが、次のreinterpret_castエラーが表示されます。

staticbefore を指定[&](pNode ...しても有効な構文とは思えません。

必死に、 、 、 に変更しようとしました[&]が、どれもうまくいきませんでした。[=][][a]

「静的」ラムダ関数を作成するという私の目標を達成する方法があるかどうか、またはそのために受け入れられるラムダ関数の任意の種類で誰かが知っていますか?

ありがとう!


答え:

Cat Plus Plusの助けを借りて、間違ったコードを有効にすることができました。

完全に機能するコードに:

それは私が探していたものを完全に実行します。

0 投票する
4 に答える
256 参照

javascript - グローバル関数の「this」ポインタとは何ですか?

重複の可能性:
「this」キーワード、
javascript でこの演算子をクリアしない

グローバル関数のメンバーとは何ですかthis? グローバル スコープまたはメンバー関数として呼び出されている場合、関数内からどのようにテストできますか?

foo編集: ここではJQuery が違いを生んでいるようですnull。JQuery はこれをどのように変更しますか?

OPは、以下のコメントで、これはGreasemonkeyスクリプトにあると述べていることに注意してください。

0 投票する
3 に答える
4287 参照

javascript - JavaScriptで親クラスと子クラスを宣言するには?

JavaScript について私が気に入らないことの 1 つは、何百もの方法があることです。私が知りたいのは、クラスを宣言する方法です。function() アプローチを使用しますか? Class.create() を呼び出す必要がありますか? 「標準的な慣行」とは何ですか?メンバー関数を宣言する「標準的な方法」とは何ですか? プロトタイプを使用しますか? myClass.method() を使用しますか? 最後に、基本的な親子継承を行うにはどうすればよいですか? 私が質問している理由は、インターネット上でこれらのことを行う多くの方法を受け取ったからです. 「標準的な慣行」とは何か知りたいです。

0 投票する
2 に答える
1311 参照

c++ - Windowsスレッドプールを取得してクラスメンバー関数を呼び出す方法は?

Windows スレッド プール (QueueUserWorkItem()) でクラスのメンバー関数を呼び出す必要があります。

残念ながら、これは、メンバー関数ポインターを引数として QueueUserWorkItem() に渡すことによって直接行うことはできません。

難しいのは、複数のメンバー関数を呼び出し可能にする必要があり、それらのシグネチャが異なることです (ただし、すべて void を返します)。

これを機能させるには、おそらくいくつかの抽象化レイヤーを追加する必要がありますが、これにアプローチする方法がわかりません。何か案は?

0 投票する
4 に答える
721 参照

c++ - sizeof() 演算子を非静的クラスメンバーメソッドに適用する方法は?

外部sizeof()からメンバーメソッドに適用できますか? オブジェクトを取得するためにオブジェクトを宣言する必要がありますか?class

編集:上記のコードでエラーが発生することはわかっています(そのため、「明らかに」という言葉があります)。sizeof() をメンバーメソッドに適用できるかどうか知りたいです。その使用例を長々と説明したくありません。

0 投票する
2 に答える
13133 参照

c++ - メンバー関数宣言で修飾名は使用できますか?

このコードは MSVC9.0 で受け入れられます。私の質問は、標準(古いものおよび/または新しいもの)に従って合法であるかどうかです。お見積りも大歓迎です。

0 投票する
1 に答える
56 参照

constants - 'const'関数、c++に関する質問

メンバー関数をconstとして宣言するとき、実際にはクラスを変更しないと言っていることを理解しています。私の質問-「クラス」は(*)このインスタンスを指しますか、それとも一般的なクラスを指しますか?

たとえば、同じクラスの新しいインスタンスを作成してこのインスタンスを編集するconstメンバー関数がある場合、それは合法ですか?

ありがとう!

0 投票する
3 に答える
845 参照

c++ - 非メンバー関数は複数回宣言できますが、メンバー関数は1回しか宣言できませんか?

非mumber関数は複数回削除できますが、メンバー関数は1回しか宣言できませんか?これは正しいですか ?私の例は「はい」と言っているようです。

しかし、なぜ ?

0 投票する
4 に答える
661 参照

c++ - テンプレートの部分的な特殊化 - メンバーの特殊化

このテンプレート クラスがあるとします。

そして、私はそれを特化したいので、同様に次のように定義します:

さて、少人数のクラスについて話している限り、これは問題ありません。クラスが非常に長い場合は、print()一人で専門化する方がはるかに賢明です. 非メンバー関数でそれを行う方法を知っています。メンバー関数でそれを行う方法はありますか?