web-dev-qa-db-ja.com

変数名が文字「m」で始まることが多いのはなぜですか?

メモ帳のチュートリアル などのAndroidチュートリアルを見ると、ほとんどすべての変数の名前が文字「m」で始まることに気付きました。これはどのような慣習であり、どこから来たのですか?

231
Kallja

メンバーの略です。私はこの慣習は役に立たないと思いますが、主観的です。

284

貢献者向けのコードスタイルガイドライン:フィールドの命名規則に従う を参照してください。 「m」プレフィックスの使用は、「メンバー」変数を単に示すより具体的です。「非パブリック、非静的フィールド名」用です。

104
Warren Chu

Androidソースコードのドキュメントによる

  • 非パブリック、非静的フィールド名はmで始まります。
  • 静的フィールド名はsで始まります。
  • 他のフィールドは小文字で始まります。
  • パブリック静的最終フィールド(定数)はALL_CAPS_WITH_UNDERSCORESです。

これはAndroidソースコードを記述するためのものです。 Androidアプリを作成するには、 Google Java St​​yle Guide がより役立つ場合があります。

81
Danilo Dughetti

Mはm ember変数を示すためにここにあります。

2つの大きな利点があります。

  • それを見ると、すぐにそれをメンバー変数として認識します。
  • Mを押すと、オートコンプリータを介してすべてのメンバーが取得されます。 (これは他の答えにはありません)
38
Klaus

「m」はクラスのメンバーを意味します。したがって、IDEを使用してメンバーを強調表示しないと、その名前がメンバーであることを理解できます。

16
Vladimir Ivanov

すでに答えたように、このプレフィックスは変数がメンバーであることを示しています。

「i」または「s」で始まる変数を見つけた場合、他のプレフィックスを使用することもあります ハンガリー表記

5
stacker

「m」は、変数がクラスのメンバー変数であることを意味します...

2
swcai

javaだけでなく、cocos2d + box2dのサンプルでも、変数の一部がm_で始まるものもあれば、そうでないものもあり、非常に紛らわしい。


b2World* world;
GLESDebugDraw *m_debugDraw;

C++ box2d変数とObj-C変数を区別すると思います。

0
chunkyguy