問題タブ [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.

0 投票する
33 に答える
29038 参照

coding-style - メンバー変数にはどのようなプレフィックスを使用していますか?

「通常の」変数と簡単に区別できるように、メンバー変数に接頭辞を付けることがコードを理解する上で不可欠であることは間違いありません。

しかし、どのようなプレフィックスを使用しますか?

私はm_をプレフィックスとして使用するプロジェクトに取り組んできましたが、他のプロジェクトではアンダースコアのみを使用しました (アンダースコアのみでは十分に実証できないため、個人的には好きではありません)。

別のプロジェクトでは、変数の型も含む長いプレフィックス形式を使用しました。たとえば、mul_はunsigned long 型のメンバー変数のプレフィックスです。

使用しているプレフィックスの種類を教えてください (その理由を教えてください)。

編集:ほとんどの人は、メンバー変数に特別な接頭辞を付けずにコーディングしているようです! これは言語に依存しますか?私の経験から、C++ コードではメンバー変数のプレフィックスとしてアンダースコアまたはm_を使用する傾向があります。他の言語はどうですか?

0 投票する
6 に答える
46007 参照

c++ - メンバー関数ポインタを渡すにはどうすればよいですか?

クラス内のメンバー関数を、メンバー関数クラス ポインターを受け取る関数に渡そうとしています。私が抱えている問題は、 this ポインターを使用してクラス内でこれを適切に行う方法がわからないことです。誰にも提案はありますか?

メンバー関数を渡すクラスのコピーを次に示します。

関数 x.SetButton(...) は、「オブジェクト」がテンプレートである別のクラスに含まれています。

後で使用できるように、この関数を適切に送信する方法についてアドバイスがあれば。

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

c++ - テンプレート クラス メンバ関数への関数ポインタ

テンプレート化されたクラスを (部分的に) 次のように定義しています。

別のクラスから DoSomething を呼び出したいが、同じ場所にある複数の「T」型に対してこれを実行できる場合、メソッド関数ポインターはクラス型に一意に制約されているため、アイデアに行き詰まります。もちろん、各 MyClass は異なる型であるため、MyClassDoSomething() への関数ポインタを「ポリモーフィック」な方法で格納することはできません。

私のユースケースは、保持クラスに「DoSomething」への関数ポインターのベクトルを格納して、格納されているすべてのクラスを 1 か所から呼び出すことができるようにすることです。

誰か提案はありますか?

0 投票する
6 に答える
73585 参照

c - 構造内のメンバーを初期化できないのはなぜですか?

構造内のメンバーを初期化できないのはなぜですか?

例:

0 投票する
14 に答える
121250 参照

java - Static nested class in Java, why?

I was looking at the Java code for LinkedList and noticed that it made use of a static nested class, Entry.

What is the reason for using a static nested class, rather than an normal inner class?

The only reason I could think of, was that Entry doesn't have access to instance variables, so from an OOP point of view it has better encapsulation.

But I thought there might be other reasons, maybe performance. What might it be?

Note. I hope I have got my terms correct, I would have called it a static inner class, but I think this is wrong: http://java.sun.com/docs/books/tutorial/java/javaOO/nested.html

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

c# - 基本クラスのセッターまたはゲッターを使用するc#

サブクラスがこれらの変数にアクセスできるように、基本クラスのメンバー変数を保護に設定することをお勧めしますか? それとも、メンバー変数をプライベートに設定し、サブクラスがゲッターとセッターによって変数を取得または設定できるようにすることをお勧めしますか?

また、getter メソッドと setters メソッドの使用が推奨されている場合、保護された変数はいつ使用されますか?

0 投票する
8 に答える
12352 参照

c++ - C++ にメンバ関数型へのポインタがないのはなぜですか?

ここでは完全に間違っている可能性がありますが、私が理解しているように、C++ には実際にはネイティブの「メンバー関数へのポインター」型はありません。Boost や mem_fun などでトリックを実行できることは知っています。しかし、C++ の設計者は、たとえば、関数へのポインターとオブジェクトへのポインターを含む 64 ビット ポインターを使用しないことにしたのはなぜですか?

具体的には、型が不明な特定のオブジェクトのメンバ関数へのポインタです。IEコールバックに使用できるもの。これは、 2 つの値を含む型になります。最初の値は関数へのポインターであり、2 番目の値はオブジェクトの特定のインスタンスへのポインターです。

私が意味していないのは、クラスの一般的なメンバー関数へのポインターです。例えば

それはとても役に立ち、私の人生を楽にしてくれました。

ヒューゴ

0 投票する
13 に答える
21975 参照

c++ - C++ メンバー変数のエイリアス?

私はそれが行われたのを見たことがあると確信しているので、これが可能であると確信しています。素晴らしいと思いますが、「これはひどいアイデアです。なぜなら____だから」というような回答を喜んで受け入れます。

基本的な構造体があるとします。

ここで、これらの変数にエイリアスを実装したいと思います。

理想的には、3 番目の構文は配列と見分けがつかないものです。つまり、arrデータを格納する float の配列を期待する関数 (たとえば、OpenGLglGet関数の多く) に参照パラメーターとして送信した場合、正常に動作します。

どう思いますか?可能?可能ですが、愚かですか?

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

c++ - アクセサーとパブリック メンバー

読み取り/書き込みアクセス権を持つ多くの組み込み型メンバーを持つクラスがあります。それらをパブリック メンバーにして、それぞれに get/set メソッドを提供する必要がありますか? 構造物はどうですか?

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

c++ - クラスのプライベートメンバーにアクセスすることは可能ですか?

C++でクラスのプライベートメンバーにアクセスすることは可能ですか?

フレンド関数がなく、クラス定義にアクセスできない場合