- ベストアンサー
フィールド(メンバ変数)のプリフィックスについて
C#でプログラムを作っていて、ふと思ったのですが、 皆様は「メンバ変数」であることをあらわすために どんなプリフィックスをつけられていますか? また、その理由も教えていただけると幸いです。 一般的にどんなプリフィックスを使うのかわからなくて、 ネットで検索してみたら、『m_変数名』というものがあったのですが、 別のサイトでは「『m_変数名』は古い」みたいな記述もあり…。 どれが正解でどれが間違いというのは一概に言えないと思うので、 いろんな方の意見を伺いたく存じます。よろしくお願い致します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- talepanda
- ベストアンサー率58% (45/77)
- dekopa-
- ベストアンサー率42% (161/378)
- επιστημη(@episteme)
- ベストアンサー率46% (546/1184)
関連するQ&A
- クラス型のメンバ変数について
クラス型のメンバ変数って、どういったメリットがあるのでしょうか? 以下のプログラムは疑問点の部分だけ書いたプログラムです。 class Caaa { (内容) }; class Cbbb { protected: Caaa m_bbb; } 上のプログラムの、 Caaa m_bbb; の部分が、どういった意味(使い道)があるのかわかりません。 int型やvoid型のメンバ変数は分かるのですが、他のクラスの型をもったメンバ変数はどういった意味があるのでしょうか。 どなたが教えてください。
- 締切済み
- C・C++・C#
- クラスのメンバー変数の書き方。
クラスのメンバー変数の書き方。 クラスのメンバー変数を書くとき、以下の3つはどちらでも同じ動作をします。 ◆privateの場合、privateを明示的に書く or 書かない ◆null初期化の場合、= nullを明示的に書く or 書かない ◆メンバー変数名に接頭辞(mTextなど)をつける or つけない チームなどで書き方をどちらかに統一するとすれば、どちらに統一するのがいいと思いますか。 理由も含めて教えて下さい。 明示的に書くとJavaに不慣れな人にも分かりやすくて良いと思います。 書かないとタイプ数が減ってコーディングが若干楽です。 接頭辞はthisを書かなくていいのが楽なのですが、なんだか気持ち悪いです。 気持ち悪いのですが、デメリットは明確に説明できません。
- ベストアンサー
- Java
- ラジオボタンのメンバ変数
VC++6.0でMFC AppWizard(exe)というプロジェクト、ダイアログベースでプログラミングしています。 ダイアログにラジオボタンを三つ配置し、Radio1を右クリック→プロパティ→グループにチェックを入れました。 そして、IDC_RADIO1にメンバ変数m_Radio(int)を追加してコンパイルすると「問題が発生したため終了します」というダイアログが出ます・・。 メンバ変数を削除するとコンパイルは成功します。 何が間違いでこんなエラーが出るのでしょうか? どうかよろしくお願いします。
- ベストアンサー
- C・C++・C#
- クラスメンバの中で配列を利用したい
Cで書いたプログラムをC++に移植してます。 普通の変数はクラスメンバに置き換えてしまえばよろしいのですが、 配列の場合そのままクラスメンバに置き換えたら 問題が発生します。(予想はついていたのですが…) class test{ private: int m_test[100]; }; クラスメンバを配列に設定するにはどうすればよいですか?
- 締切済み
- C・C++・C#
- Java変数について
こんにちは。Javaの初心者です。 そこそこ基礎知識もついてきたかと思いまして、初めて実用プログラムを組むことにしました。 そこで、今問題にあたってるんですが、 メソッド内にあるローカル変数に入ってる値を、メンバ変数に代入することは出来るのでしょうか? もしできるのでしたら、その方法をご教授してくだされば幸いです。 プログラムの初心者なので、勘違いしてることが多々あるかと思われますが、 ご回答の方、宜しくお願い致します。
- ベストアンサー
- Java
- Python のクラスのメンバ変数
class foo( object ): __result = [] def __init__( self, n, m ): # self.__result = [] self.__result.append( n + m ) def func( self ): print self.__result[0] hoge = foo( 1, 2 ) fuga = foo( 3, 4 ) hoge.func() # 3 fuga.func() # 3 ... !? 数値や文字列といったメンバ変数は、コンストラクタで意図的に初期化してやらなくても正常な値になりますが、それ以外のオブジェクトや配列だと fuga は hoge のメンバと同じものになってしまいます。他の言語の感覚ですと、__result は foo のメンバな上にプライベートなので、fuga の __result が hoge.__result を指すのは考えられない事なのですが、この書き方がマズいのでしょうか。 また、もしこのようになっている理由等もありましたら、併せてお教えください。
- ベストアンサー
- その他(プログラミング・開発)
- テーブルというグローバル変数
学生時代にプログラミングを習ったときには、 グローバル変数は悪のものであると習いました。 しかし、プログラマーに就職してみると、 テーブルというなのグローバル変数がいたるところで 使われています。 グローバル変数を使用しないようなソースに することはできるのでしょうか? また、テーブルというのは一般的によく使われるもの なのでしょうか?検索してもそれらしいサイトが 見当たらないですし、Cの参考書を見ても、そのような ものは出てきません。
- 締切済み
- C・C++・C#
- フィールド名を変数で指定するには
$device = 'a'; $Field = $device.'_type'; $sql = 'select "'.$Field.'" from table where member_id = "'.$id.'"'; $res = mysql_query($sql); $row = mysql_fetch_assoc($res); if ($row){ echo $row[$Field]; } $row[$Field]をechoで表示すると『a_type』と表示され、中身が表示されません。 フィールド名を変数ではなくa_typeと直接入力すると正常な結果が表示されます。 ちなみにtableにはa_type、b_type、c_typeテーブルが存在します。 ドコモからのアクセスはa_type、auからはb_typeと、ユーザーエージェントによって分けています。 フィールド名を変数で指定して値を取得するには、どのようにすればよいでしょうか? 宜しくお願いいたします。
- ベストアンサー
- MySQL
- マルチスレッドと変数
マルチスレッドのプログラムを組んでいます。 そこで、複数のスレッドからアクセスする変数があるのですが、これの扱いについて解らないことがあります。 ・変数を複数のスレッドから書き換える場合は、予想していた結果と違うことになる。 ここまではいいのですが、 ・変数を複数のスレッドから、参照だけするのは問題ない。 ・変数を複数のスレッドから、参照し、書き換えるのはひとつのスレッドだけならば、問題はない。 (上の"変数"は全て、Lockをかけていない状態です。) という認識をもっているのですが、これは間違いなのでしょうか? 「参照だけならばLockはかけなくてよい」というのをどこかで読んだような覚えがあり、そのまま勝手に最後の推測をしています。 現状ではうまくいっているようなのですが、とても不安です。 もしくは、状況、環境、コーディングによって上の仮定は成立したり、成立しなかったりするのでしょうか?環境はC#ですが、もしどのような言語、環境であっても一般的に、同じような結果になるのなら、それも合わせてご教授お願いします。
- ベストアンサー
- その他(プログラミング・開発)
お礼
ご回答ありがとうございました。 「m_」はやはりありえないのですか…。 そういえば、「_」だけというのは本でも何回か見たことがあります。