問題タブ [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 に答える
96 参照

c++ - メンバー機能

Gate_ptrをまだ定義していないため、コンパイル時に「voidoperation」という行でエラーが発生します。関数defで、代わりに「Gate_ptr」を「Gate*」だけに交換することを考えました。しかし、私の現在のスタイルを維持する方法はありますか?

0 投票する
5 に答える
13263 参照

python - Python の非メンバー関数とメンバー関数

私は Python に比較的慣れていないので、言語の機能と、C++ と Java のバックグラウンドから身につけた習慣をうまく調和させるのに苦労しています。

私が抱えている最新の問題は、カプセル化に関係しています。具体的には、Meyer の「Effective C++」の項目 23 によって最もよく要約されているアイデアです。

メンバー関数よりも非メンバー非フレンド関数を優先します

メカニズムの欠如をfriend少し無視して、非メンバー関数は Python のメンバー関数よりも好ましいと見なされますか?

義務的で愚かな例:

が与えられると、ベクトルの大きさを 2 倍にするまたはをv = Vector(10, 20)呼び出すことができます。v.scale(2)scale(v, 2)

この場合にプロパティを使用しているという事実を考慮して、2 つのオプションのどちらが優れているか (もしあれば)、そしてその理由は?

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

c++ - クラスとメンバー関数 (初級)

私は現在 C++ の本を読んでいますが、いくつか質問があります。

1) void は、この例で戻り値の型を宣言するためにのみ使用されていますか?

2) void によって呼び出し元の関数にデータが返されない場合、「成績表へようこそ!」というメッセージがまだ表示されるのはなぜですか?

3) オブジェクトを作るより、単純な関数を作る方が簡単ではありませんか?

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

class - オブジェクト、クラス、メンバー関数の概念

これまでのところ、これが私がオブジェクトについて理解していることです。私が正しいかどうかを知るためにフィードバックが必要です。

クラスメンバー関数で構成されます。クラスもintのように型を定義します。オブジェクトはそのクラスによって定義され、オブジェクトはそのクラス内のメンバー関数を呼び出します(オブジェクトが定義されたクラス内のみ)。

何かが足りないのか、何か間違っているのかを知る必要があります。ありがとう

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

php - メンバー関数の静的変数のスコープ

クラスの(非静的)メンバー関数内で静的変数が宣言されている場合、それはそのクラスの各インスタンスに対して静的ですか、それともすべてのインスタンスにわたって静的ですか?答えが明白な場合は申し訳ありませんが、どこにも見つかりません。

編集:

私はzerkmsの答えを受け入れましたが、ここに別の例があります:

出力 :
42123

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

c++ - (同じクラスタイプの)ローカルオブジェクトのプライベートメンバーにアクセスする

メンバー関数からローカルオブジェクトのプライベートメンバーにアクセスする必要があります。例はそれをよりよく説明していると思います。*を公開せずに、または* aに割り当てるための関数を提供せずにこれを行う方法はありますか?このoperator+関数は、ローカルオブジェクトに*aを何度も割り当てたり割り当て解除したりする必要がある場合があります。

この投稿は、これが機能するはずであることを示唆しているようです。

私のコンパイルエラー(g ++ 4.6.3)は次のとおりです。

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

c++ - 未使用のメンバー関数をリンカで報告できますか?(C ++)(gcc)

std :: stringには、文字列オブジェクトで呼び出すことができる30を超えるメンバー関数があります。
それらのいくつかだけを使用した場合はどうなりますか?

未使用のメンバー関数は、実行可能コードセクションのスペースを占有しないと思います。リンカが未使用のメンバー関数を判別し、コンパイルされたバイナリの一部から削除して、どの関数を破棄したかを報告
できるかどうかを知りたいです。 これを行う方法はありますか?gccのリンカーフラグを見ていましたが、関連するものが見つかりませんでした。

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

c++ - C++のメンバー関数へのポインター

これは実際にはチェスプレイプログラム用ですが、コードが長すぎてここに投稿できないため、より単純な無関係の例を使用します。

私がこのようなオブジェクトを持っているとしましょう:

すべてのオブジェクトのすべてのx1およびx2値のすべての平均(またはそれらへのポインター)を格納するAveragesListというベクトルが必要です。だから私はこれをやってみました:

しかし、これを試してみると、「バインドされた関数へのポインターは、関数を呼び出すためにのみ使用できます」というメッセージが表示されます。回避策はありますか?x1またはx2の値が変更されても、AveragesListの値は変更されないため、単純にx1とx2の平均値をAveragesListに入れたくありません。また、私の本はC ++クラスでパブリック変数を使用しないと言っていたので、パブリック変数を使用すべきかどうかわかりません。

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

c++ - C++リストとポインター

私は宿題に取り組んでおり、これが実際に何として定義されているのか知りたいと思っていました。

名前の由来は次のstructとおりです。

私はそれが何であるかを知りたいので、それに挿入する方法またはそれにアクセスする方法を知っています:push_back、、などinsert

だから私は今これを理解していますが、ある種のメモリアクセスのために立ち往生しています:それはセグメンテーション違反を引き起こし、私はこれを理解することができませんでした。新しいリストをどこで初期化する必要がありますか?コンストラクターや関数では機能しません。参考までに、これはプライベートリストであるため、メンバー関数(つまり、m_ofList)にのみ使用できます。誰かが助けたいなら、私はコードを作成することができます...