- C++相談室 part137
990 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 00:00:43.80 ID:JjdhAE/r0 - >>985
>そういうのはoopやtmpと相性が悪いんで… どういう意味?
|
- C++相談室 part137
992 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 00:07:22.53 ID:JjdhAE/r0 - 何で相性が悪いのかが分からぬ。
|
- C++相談室 part137
994 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 00:14:20.26 ID:JjdhAE/r0 - ずっと前に、ハンガリアン記法で書かれた比較的大きなソース・コードを見て
とても分かりやすかったので自分もそれに習っただけなんだよね。
|
- C++相談室 part137
997 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 00:33:38.42 ID:JjdhAE/r0 - でも、BOOL 値の変数の先頭に b を付けたりすると、ミスを発見するのに大いに役立つ
事があるよ。
|
- C# vs Java どっちが好き? その5
635 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 01:21:47.02 ID:JjdhAE/r0 - >>634
分かる方法は存在している。
|
- C++相談室 part139
3 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 01:29:10.07 ID:JjdhAE/r0 - >>2
あれは複数形のsのつもりだった。 個人的には、コードにおいては、aaa に対する複数形の s は、aaas と書かずに aaa_s と書いた方が分かりやすいと感じることがあるので。 ただ、配列の場合は、複数形の _s を付けて、リンクリストの場合は、 list または、List を付けるようにしている。 今回の場合も、リストなら List と書いたほうがいいかもしれない。
|
- C++相談室 part139
4 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 01:31:32.02 ID:JjdhAE/r0 - システム・ハンガリアンは、コーディング時の思考の節約になる事がある:
https://mevius.5ch.net/test/read.cgi/tech/1494147712/376
|
- C++相談室 part139
6 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 02:00:06.62 ID:JjdhAE/r0 - >>5
ところで、あなたは巨大なプログラムを作った経験ある?
|
- C++相談室 part139
8 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 02:10:13.19 ID:JjdhAE/r0 - >>5
たとえば、ポインタの場合の先頭に「p」が付いているだけでも、立派な「意味」になっている。 このような一般法則を用いないで、ポインタであるとう意味まで含めた変数名を 付けることは、基本的に不可能。 また、たとえば、名前の入った0終端文字列へのポインタを「pszName」という変数名を 付けているのは、かなり適切に意味を表していると思う。 「name」だけだと CString 型と 0終端文字列なのかの区別も付かない。 また、長いテキストの中の一部だけに着目した文字列の場合は、そのどちらでもないから 「psz」の接頭辞はつけない。 これにより、発見しにくいバグも減る。
|
- C++相談室 part139
9 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 02:17:56.90 ID:JjdhAE/r0 - >>5
決められたフォーマットでファイルにデータを書き込むような場合、コード中、 メモリ中のデータのポインタと、これから書き込む fseek するためのファイルポインタ、 サイズなどが「対」または「コンビ」のようになって存在することがある。 そのとき、接頭の、fpos、p、size、len などでそれらが区別できることはとても有りがたい。 その場合、 fposData1 = pData1 - pTop; のようなパターンが現れるだろう。 それに加えて、同じではない微妙に違った関数化が難しいようなパターンが現れくることがある。 そういうような場合に、ハンガリアン記法は、とても重宝する。 正しいコードが、記法からだけでほとんど機械的に分かってしまう事も多い。
|
- C++相談室 part139
12 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 02:27:05.24 ID:JjdhAE/r0 - >>10
自分の場合は、自作テンプレートの中でも使ってる。たとえば、 TYPE m_data; TYPE *m_pPrev; TYPE *m_pNext; xxx( TYPE *pPos ) { ・・・ } などのように。
|
- C++相談室 part139
13 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 02:31:46.61 ID:JjdhAE/r0 - >>11
たとえば、floatをdoubleに変更したことはあるが、 BYTE 型を int 型に変えたりすることはまず無い。 16BIT時代から32BIT時代へ移行するような場合は、 変更したことはあるが、機械的に置換すればいいというわけではなかった。 32BIT時代から64BIT時代への以降においても、機械的に置換して 済むものではないと思う。
|
- C++相談室 part139
52 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 18:01:49.07 ID:JjdhAE/r0 - >>25
自分がやってるやり方だと、システム・ハンガリアンについては、 文字列(CStringでstrXxxx、0終端文字列で、szXxxxなど) と BOOL 型 (bXxxx)、 ポインタ(pXxxx)、についてだけ接頭辞を必ず使っている。 整数型、浮動小数点型については原則的には接頭辞を付けてない。 ただし、浮動小数点と整数を明確に区別したいときには、特に浮動小数点変数 についてだけは、「f」を付ける事があるが、float と double は区別してない。 int 整数についは、どうしても必要な場合は「i」を付ける場合があるが、普段は付けない。 今のところ、リストについては、接頭辞ではなく、接尾語のように、 XxxxList と付けているが、メンバ変数としては、 class CYyyyy { ・・・ CMyList<Aaaa> m_listXxxx; ・・・ }; と書くことはある。 配列の添え字は、idxXxxx、個数は、numXxxx、id 番号は、idXxxx。 最大値については命名に迷うことが多い。maxXxxx とすることもあるが、 numXxxx とは、「1」しか値が違わないことも多いので迷う。 新しく作ったクラスのオブジェクトについては、基本的には接頭辞としては 付けないが、どこか、変数名の一部でクラスが分かるようにすることはある。 たとえばの話、CPerson クラスのオブジェクトなら、person1、person2 などとすることが多い。
|
- C++相談室 part139
53 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 18:02:16.20 ID:JjdhAE/r0 - >>52
[続き] 自分で作った Tree クラスの template なら、それを使った Tree クラスの オブジェクトは、XxxxTree という名前にすると思う。
|
- C++相談室 part139
54 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 18:05:29.36 ID:JjdhAE/r0 - >>25
それから、今のところ、std::string は使わずに、CString ばかり使っているので、 std::string と CString の文字列を区別する命名法は普段は考えたことが無い。 多分、std::string を、sstrXxxx、CString を strXxxx にするか、逆に、 strXxxx と、cstrXxxx にするかだと思う。 それは、どちらか好んで使いたい方を短くするように命名法を決める。
|
- C++相談室 part139
56 :デフォルトの名無しさん (ワッチョイ 6ee3-BkfR)[sage]:2018/10/06(土) 18:13:01.41 ID:JjdhAE/r0 - >>25
>std::unordered_set<Company>みたいなテンプレ使ったクラス、 これは使ったこと無いけど、list の命名に習うなら、グローバル変数の場合は、 g_setXxx g_usetXxxx みたいな事になるかと思う。長すぎるのは困るので迷いどころ。
|