問題タブ [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.
c++ - CrazyC++テンプレート-クラスの個々の属性にアクセスするためのテンプレート
私は初心者のC++プログラマーですが、仕事でこのようなコードに出くわし、実際にどのように機能するかを理解できなかった今日まで、C++について十分に知っていると思いました。
ある程度理解できたと思います。しかし、テンプレート宣言のこの特定PropType PropObject::* Prop
は私を悩ませます。どういう意味ですか?C++の専門家からの説明を探しています。私はそれを理解したいので、私はそれをよりよく使うことができます。しかし、それは非常に便利に見えます。
c++ - 構造体内からPointer-to-Member-Functionが指す関数を呼び出す
Test
独特のデータ構造を持つクラスがあります。クラスのメンバーTest
はastd::map
であり、キーはastd::string
であり、マップされた値はstruct
次のように定義されます。
マップの初期化はOKです。問題は、指定された関数を呼び出そうとしているときです。問題を再現したおもちゃの例を作りました。ここにあります:
よろしくお願いします、ジル
c++ - Ptr-to-member テンプレート パラメーターのフレンド構文
さて、これは純粋な C++ の厄介な構文の質問だと思います。
テンプレート パラメーターの 1 つとして、ptr-to-member を使用して定義されたクラスがあります。
このクラスの友達である別の単純なクラスがあります。通常、私は次のように書きます。
...しかし、2 番目のテンプレート パラメータはそれほど自由ではないため、友情をどのように表現すればよいでしょうか?
ありがとう!
c++ - ポインターからメンバーへの親の回復
クラスのフィールドを指しているクラスメンバーへのポインターがあるとします。クラスの特定のインスタンスの特定のフィールドへのポインタもあります。たとえば、次のようなものがあります。
使用ptr
しmemPtr
て回復する方法はありmyA
ますか?つまり、 への明示的なポインターがまだない場合、 と からポインターをmyA
作成できますか?ptr
memPtr
c++ - メンバー変数へのポリモーフィックポインター
ポリモーフィックな方法でメンバー変数へのポインターを使用しようとしています。
これは機能します:
メンバーは同じタイプ(BaseClass)ではないため、これは行われません。
g++によって報告されるエラーは次のとおりです。
これを機能させる方法、つまり、メンバーポインタをその基本クラスに「アップキャスト」する方法はありますか?
c++ - 括弧で囲まれたメンバー関数のアドレスのエラー
面白いものを見つけました。エラーメッセージはそれをすべて言います。非静的メンバー関数のアドレスを取得するときに括弧を許可しない理由は何ですか? gcc 4.3.4でコンパイルしました。
エラー: main.cpp:14: エラー: ISO C++ では、メンバー関数へのポインターを形成するために、非修飾または括弧付きの非静的メンバー関数のアドレスを取得することを禁止しています。「&myfoo::foo」と言います
c++ - メンバー関数ポインターの奇妙な C++ ルール?
重複の可能性:
括弧で囲まれたメンバー関数のアドレスのエラー
この最近の質問では、メンバー関数名が括弧で囲まれている場合、OP はメンバー関数のアドレスを取得することを違法にする C++ 言語の奇妙な規定に遭遇しました。たとえば、次のコードは違法です。
これを調べたところ、C++ ISO 仕様の §5.3.1/3 が原因であることがわかりました。
メンバーへのポインターは、明示的な & が使用され、そのオペランドが括弧で囲まれていない修飾 ID である場合にのみ形成されます [...]
仕様にこのルールがある理由を知っている人はいますか? メンバーへのポインタに固有のものであるため、これで解決される文法上のあいまいさがあると思われますが、正直なところ、それが何であるかはまったくわかりません。
c - cのメンバー名を使用せずに構造体メンバーに値を割り当てますか?
私には構造があり、私がやりたいのは、forループを使用してそのメンバーに値を割り当てることです。そうすれば、メンバー名を使用する必要がなくなります。構造が長くて20本くらいは欲しくないp_struct->member_name
ので。これまでのところは下にありますが、正しい方向に進んでいるかわかりません。
ヘッダーファイル:
.cファイル内..。
c++ - Convert vector to map with pointers to members?
I'm having trouble understanding why the code below
gives this error:
Context does not allow for disambiguation of overloaded function
How do I fix this?