C++相談室 part166 (611レス)
上下前次1-新
167: (ワッチョイ ebd6-TsVb) 05/29(木)16:30 ID:KimJmnNH0(2/3) AAS
どもです。勉強になります。
んじゃこれからは
private:
int data_=0; の感じで書くことにします。うん メンバ変数は他とは違うんだぞと思わせたくて。
ちなみに
private:
int data_(0);
って書くとエラーになるのね。NSDMIの仕様でしたけ?
168(1): (ワッチョイ 0f10-GFGd) 05/29(木)16:48 ID:ozJD0VM40(2/2) AAS
メンバ変数だけじゃなくメンバ関数も区別したくない?ってなるのでthis->を省略すると警告が出るスイッチこそ欲すい
169(1): はちみつ餃子◆8X2XSCHEME (ワッチョイ bb32-VkiR) 05/29(木)16:52 ID:SDgOXepR0(1) AAS
単にアンダースコアで始まる名前というだけなら「グローバル名前空間で」処理系のために予約されているだけなのでグローバル名前空間以外で使う分には問題ない。
アンダースコアふたつが連続で含まれるか、アンダースコアで始まって大文字が続く名前はあらゆる用途で予約されてるので一般ユーザが定義 (宣言) してはいけない。
外部リンク:timsong-cpp.github.io
>>161
> 予約語は別にして
予約語という言葉をコンパイラ一般の用語として使っている資料は多いんだけど C++ の仕様としては予約語という言葉は使ってない。
いや、ちょっと使ってるんだけどはっきりした定義なく脚注で一度出てくるだけなので正式な用語じゃないと思う。
外部リンク:timsong-cpp.github.io
コンパイラが直接的に認識して文法上の特別な地位にあるような名前として「キーワード」があり、
それとは別にライブラリの構成上の規約として「予約名」がある。
170: (ワッチョイ ebd6-TsVb) 05/29(木)17:07 ID:KimJmnNH0(3/3) AAS
>>169
> 単にアンダースコアで始まる名前というだけなら「グローバル名前空間で」処理系のために予約されているだけなのでグローバル名前空間以外で使う分には問題ない。
> アンダースコアふたつが連続で含まれるか、アンダースコアで始まって大文字が続く名前はあらゆる用途で予約されてるので一般ユーザが定義 (宣言) してはいけない。
ども了解です。基本外部で宣言する事はしないです。てかもうないですもんね。
171: (ワッチョイ bb7c-w/mX) 05/29(木)20:50 ID:lOyNyril0(1) AAS
キーワード以外にもmainとかdefinedとか__file__とか__VA_ARGS__とか規格で特殊な意味を与えられてる文字列は色々あるけど
その総称ってないんだよな
172(1): (ワッチョイ bb3c-79fi) 05/29(木)23:49 ID:hr2gWeV00(1) AAS
C#やPythonのように、クラスのフィールドをアンダースコアで始めるのが一般的という言語もあるから、そちらから来るとそうしてしまうのかも?
C++は統一的な指針はないけれど、GoogleのC++スタイルガイドでは value_ のように末尾にアンダースコアを付けるとしてるので、これで良いと思う
昔ながらのプロジェクトだと member の意味で m_value のようにするというのがあるけど、これはだいぶレガシー
173: (アウアウウー Sa8f-/+k6) 05/30(金)01:16 ID:Jzn0K6cGa(1) AAS
ハンガリアン記法などというワードも、もはや若人には通じない時代となってしまったのだ・・・
174: (ワッチョイ 4b01-DKvR) 05/30(金)01:39 ID:QwZ+U2hj0(1) AAS
個人で書くときはハンガリアン(もどき)だしm_付けてるけどな
サフィックスよりはプレフィックス付ける方がサジェストとか検索で絞りやすい
古いだのなんだのじゃなくて合理的ならなんでもいいと思うんだけどな
175: (ワッチョイ 3bf0-TsVb) 05/30(金)02:42 ID:qIE+EPsq0(1) AAS
m_も馬鹿っぽいけどな
176: (ワッチョイ 9fda-sPKC) 05/30(金)03:11 ID:DT1BzE420(1) AAS
FORTRAN方式こそ正義
177: (ワッチョイ 1bba-DKvR) 05/30(金)03:32 ID:a8PtKm050(1) AAS
前も似たようなこと言ったけど、馬鹿っぽいとか古いとか、ユーザーには何の利益にもならんぞ
178: (ワッチョイ 0b59-+7qT) 05/30(金)10:36 ID:9fSC83d40(1) AAS
最近のIDEは色がついていてローカル変数とメンバー変数が区別できるようになってるね
m_ などのプリフィックスは不要になってきてると思う
179(1): (アウアウウー Sa8f-q7Ty) 05/30(金)10:50 ID:XWQpoVmBa(1/3) AAS
m_ とか g_ は恥ずかしいね
180: (オイコラミネオ MM8f-rxm+) 05/30(金)11:00 ID:ORX18+JcM(1) AAS
>>179
そんなことない。
181: (ワッチョイ 9f52-WoVj) 05/30(金)12:05 ID:qi/53/kN0(1) AAS
一目でメンバ変数かを判断できるようにするべきだ
182: (オイコラミネオ MM8f-rxm+) 05/30(金)12:09 ID:MmHFotTIM(1) AAS
>>172
>C++は統一的な指針はないけれど、GoogleのC++スタイルガイドでは value_ のように末尾にアンダースコアを付けるとしてるので、これで良いと思う
でも、local auto 変数、local static 変数、メンバ変数と、(完全な)グローバル変数
global static 変数の少なくとも 5 種類あるので、
m_xxx, g_xxx, s_xxx の記法だと、区別しやすいが、
xxx_ だと難しい。
183: (ワッチョイ 9f06-XbnY) 05/30(金)12:55 ID:ST0oYfQR0(1) AAS
グローバル変数は爆弾だから特別な名前を付けるべき
データメンバーとローカル変数は(クラス内では)混ぜて多用されるから区別付けておくべき
それ以外は好みでいいよ
184: (アウアウウー Sa8f-q7Ty) 05/30(金)13:22 ID:XWQpoVmBa(2/3) AAS
>>168
判る
185: (ワッチョイ 8bbd-qYXw) 05/30(金)13:22 ID:FTEPrInt0(1) AAS
悪用されるのは当然です
高品質かつ高速な画像生成AI「FLUX.1 Kontext」が登場したので使ってみた、テキストと画像の入力に対応しアニメ風も実写風も生成可能
外部リンク:gigazine.net
全てのAIの推論をどうやって導き出したかがわかるのでプログラムの改造がはかどる
AnthropicがAIモデルの思考内容を可視化できるオープンソースツール「circuit-tracer」を公開
外部リンク:gigazine.net
186: (アウアウウー Sa8f-q7Ty) 05/30(金)13:23 ID:XWQpoVmBa(3/3) AAS
const は c_xxx ですね判ります
187: (ワッチョイ eff7-d0Aw) 05/30(金)15:34 ID:uDWPTWtO0(1/3) AAS
m_ とか s_とかg_つける習慣はやめられないな
スコープ明示は読みやすい
この程度をIDEに依存したくないわ
188(1): (ワッチョイ eff7-d0Aw) 05/30(金)15:35 ID:uDWPTWtO0(2/3) AAS
あと初見でautoだらけとかチェーンしまくるコードも読みにくくてしゃあない
書いた本人は無駄なくせて満足だろうけど、ある程度の冗長性は許容したほうが読みやすいし事故を防げる場合もあるんだよな
189: (ワッチョイ 2b01-+rG7) 05/30(金)15:42 ID:418TV5iU0(1) AAS
>>188
無駄をなくすのが目的じゃなくて
情報の重複を避けてるんじゃないかな?
190: (ワッチョイ ef6b-d0Aw) 05/30(金)16:01 ID:uDWPTWtO0(3/3) AAS
ちなみにautoでしか書けないやつとかあるのはわかってるよ
191: (ワッチョイ bb7c-w/mX) 05/31(土)02:34 ID:s94c4VR80(1) AAS
イテレータの型なんかはauto使わず律儀に書く方が間違ってる
192(2): はちみつ餃子◆8X2XSCHEME (ワッチョイ 8d32-2Myj) 06/02(月)09:16 ID:aX5lnsqr0(1/2) AAS
Stroustrup は名前に型やスコープなどの情報を埋め込むのは否定的だ。
外部リンク[html]:www.stroustrup.com
部分的に便利な場合があることは認めていて、型名を大文字で始める (アッパーキャメルケース) こととマクロは全て大文字にすることを紹介してる。
193: (アウアウウー Sac5-Uswy) 06/02(月)14:50 ID:DSKTrfoza(1) AAS
リファクタリングの途中でルールにずれるたびに名前変えてると効率悪過ぎですし
194: はちみつ餃子◆8X2XSCHEME (ワッチョイ 8d32-2Myj) 06/02(月)15:57 ID:aX5lnsqr0(2/2) AAS
出自が違うライブラリを組み合わせて使うのもよくあることだし、一貫した規約を保つのは難しいな。
D&E の 9.4.4 ではツールがより賢くなった理想的な開発環境について触れている。
プログラミング言語がテキスト表現を持つのはプログラマに対するインターフェイスに過ぎず、プログラムがテキストである必要はないという論だ。
ツール内部では抽象的なデータ構造として持っておいて必要に応じて (各プログラマの好みに合わせて) テキスト表現を調整するような仕組みにすれば名付けのスタイルなんかどうでもよくなる。
195(1): (JP 0H16-tLkV) 06/02(月)16:43 ID:wUlZIBZbH(1/2) AAS
あのー、話をぶったぎってすみません。
>>155の関数の戻り値は
decltype(auto) じゃなくて 単純にautoでいいです
よね?
RVOを使っているから値返しで良いし、参照返しも
okなdecltype(auto)は過剰スペックなような。
196: (ワッチョイ 5154-DcV8) 06/02(月)16:52 ID:Ca4PuVUf0(1) AAS
シャープ、PythonによるAIデバイス向け高位合成ツールをオープンソースで公開
外部リンク:news.mynavi.jp
博報堂メディカル、生成AIを用いた審査業務効率化ソリューションを開発 [
外部リンク:news.mynavi.jp
「AIをより魅力的にする戦略」がAIチャットボットに「薬物使用を促す」といった有害な考えを強化させる可能性があると研究で判明
外部リンク:gigazine.net
上下前次1-新書関写板覧索設栞歴
あと 415 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.032s