問題タブ [pointer-to-member]
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.
windows - VisualC++ /vmg /vms に相当する G++
アプリケーションのプラグインを動的ライブラリとしてコンパイルしたいと考えています。通常、プラグインは VisualC++ でコンパイルされますが、G++ を使用したいと考えています。SDKドキュメントには明示的に記載されています
メンバーへのポインター表現のコンパイラ オプションは、C++ タブ/C++ 言語 (/vmg /vms) で "汎用常に" および "単一継承クラスを指す" に設定する必要があります。設定されていない場合、プラグインは即座にクラッシュします!
実際、プラグインからアプリケーションに値を渡すとすぐにクラッシュします。/vmg /vms
VisualC++と同じ動作になるオプションはありますか?
プラットフォーム: Windows 7 x64
コンパイラ: MingW32 G++ 4.6.2
c++ - 関数ポインタのオーバーロード エラー?
次の定義とプロトタイプ (クラスのメンバー関数) を使用して、基本的に関数ポインターを使用して、異なるタイプの戦略をdivideQuery メソッドに渡します。
ただし、呼び出しようとすると(query
パラメーターはラッピング関数から渡されます):
次のエラー メッセージで失敗します。
Web から読む限り、過負荷エラー (または他の何か) のように見えますが、いずれにせよ、正確に何が間違っているのかよくわかりません。ヒント/説明をいただければ幸いです。
乾杯
c++ - メンバー演算子へのポインターは、どのオブジェクト ポインター値に対して未定義の動作を呼び出しますか?
メンバーへのポインター演算子 (->*) を使用する場合、未定義の動作を引き起こすオブジェクトのポインター値はどれですか?
具体的には、問題のメンバー関数がメンバーにアクセスせず、仮想でない場合、次のいずれかが悪いですか?
- ヌル ポインター
- すでに削除されたオブジェクトへのポインタ
この質問は似ていますが、通常のメンバー関数呼び出しについて説明しています。
コードで説明するには:
未定義の動作に関する質問は C++ 標準に関する質問であるため、C++ 標準のセクションへの具体的な参照を探しています。
c++ - メンバーのメンバーへのC++ポインター?
2 つのクラスがあるとします。
次のように、B のメンバーへのポインター整数を受け入れる関数もあるとします。
ref
内部 Bのメンバーを指す方法はありますか?
のように、int B::* ptr = &(B::ref.x)
または似たようなものですか?
c++ - メンバーへのポインタテンプレート引数を持つ暗黙の型?
テンプレート内のメンバーへのポインター型を使用していますが、現在、次のようなことが起こっています。
ただし、BaseとTypeはVarの型に含まれているため、Base、Type、Varの順に定義する必要があるのは少し冗長に思えます。
これを行う方法はありますか?たとえば、Member構造体を使用/呼び出すときに、単一のメンバーへのポインター引数のみを使用する必要がありますか?理論的には、次のようなものです。
助けてくれてありがとう!
c++ - Error with pointers to member variables as parameters; why?
Why do I keep on getting the following error in this code in Visual C++ 2010, and how do I fix it while maintaining the type inference capability for the member variable?
error C2825:
'Foo<T>::value_type':
must be a class or namespace when followed by'::'
c++ - 関数ポインタ-コンパイル時エラー
関数ポインタは初めてですので、よろしくお願いします。私は方法を持っています:
次に、別の方法(メインではない)で私は行います:
私が読んだ例から、これは大丈夫のようです。ただし、コンパイル時エラーが発生します。
testFile.cpp:277:25:エラー:タイプ'int({anonymous} :: CheckingConsumer ::)(int)'の引数が'int(*)(int)'と一致しません</ p>
何が悪いのかわかりません。どんな助けでもいただければ幸いです。
どうもありがとう。
c++ - クラスにTMPを使用したコピーコンストラクターがあるかどうかを確認する
私は、ジェネリック型 T に使用できるコピー コンストラクターがあるかどうかを判断する方法を作成するために、少し SFINAE を試みてきました。これが私が現在いる場所です。
しかし、これは私がちょっと立ち往生しているところでもあります。 &T::T(const T&)
たとえptm関数であっても、メンバーへのポインターを含む引数リストを提供できないため、明らかに無効なステートメントです。私はいつでも何らかのvoid (T::*ptmf)(const T&) = &T::T
.
他の誰かが私がトレッキングできるアイデアを持っていますか? (代入演算子のチェックにも同様の概念を適用する必要があります。)
ありがとうございます。
c++ - テンプレートオブジェクトの操作
免責事項私はBOOSTまたは他のライブラリを使用することは許可されていません。標準のみです。
私のクラスには、オブジェクトへのポインターとこのオブジェクトへのポインター-メンバー関数の2つのパラメーターをFoo
受け取るテンプレート関数があります。ご覧のとおり、この関数は任意のクラスのポインターで機能します。どのクラスが渡されるのかわかりません。この関数は、テンプレート構造のインスタンスを作成します。foo
foo
私の質問はBar
、で作成されたのオブジェクトをどのように格納するかですfoo
。これにより、後でそれらを反復処理して、次のようにオブジェクトメンバー関数へのポインタを呼び出すことができます。
c++ - フリー関数が必要な場合にメンバー関数を渡すにはどうすればよいですか?
問題は次のとおりです。次のコードを検討してください。
a
のaClass::test
引数としてを使用するにはどうすればよいfunction1
ですか? クラスのメンバーにアクセスしたいと思います。