次スレを立てる時は本文の1行目に以下を追加して下さい。
!extend:on:vvvvv:1000:512
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。
前スレ
C++相談室 part133
http://mevius.5ch.net/test/read.cgi/tech/1511509970/
このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.102【環境依存OK】
http://mevius.5ch.net/test/read.cgi/tech/1509780815/
■長いソースを貼るときはここへ。■
http://codepad.org/
https://ideone.com/
[C++ FAQ]
https://isocpp.org/wiki/faq/
http://www.bohyoh.com/CandCPP/FAQ/ (日本語)
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
C++相談室 part134
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 5fcb-Q2eK)
2018/01/20(土) 09:05:42.21ID:mJKRg6iz0231デフォルトの名無しさん (ワッチョイ bfe7-JyXB)
2018/02/18(日) 20:07:07.34ID:8oVyjimH0 m_だけならまだ我慢できるけど
this->を必ず付けるルールと併用するのは本当にやめろどっちかにしろ
this->を必ず付けるルールと併用するのは本当にやめろどっちかにしろ
232デフォルトの名無しさん (ワッチョイ 9fb9-T3WU)
2018/02/18(日) 20:15:52.43ID:eae4wPFh0 > this->を必ず付けるルール
破門だろ
C++使うなそんなボケどもは
破門だろ
C++使うなそんなボケどもは
233デフォルトの名無しさん (ワッチョイ 9f12-pjg9)
2018/02/18(日) 21:14:42.68ID:SQcbDAgv0 ちげえんだよなぁ
thisというキーワードが存在してるから、その存在そのものが、それを書かねばならないような強制力を産み出してる
「存在するが、書かなくてもいい」っていうどっちつかずが、一番論争になる
その反対が「存在しないから書けない」だ
これだと単純明快だ
なんせ、書けない
「書くべきか書かざるべきか」のどーーーでもいい二択に迫られると、とたんに宗教になる
thisというキーワードが存在してるから、その存在そのものが、それを書かねばならないような強制力を産み出してる
「存在するが、書かなくてもいい」っていうどっちつかずが、一番論争になる
その反対が「存在しないから書けない」だ
これだと単純明快だ
なんせ、書けない
「書くべきか書かざるべきか」のどーーーでもいい二択に迫られると、とたんに宗教になる
234デフォルトの名無しさん (ワッチョイ 9fb9-T3WU)
2018/02/18(日) 21:16:52.71ID:eae4wPFh0 キーワードが存在するのと実体が存在することの違いがそんなに大事なのか?
じゃあvtableのキーワードが存在しないことを、おまえはどう考えている?
じゃあvtableのキーワードが存在しないことを、おまえはどう考えている?
235デフォルトの名無しさん (ワッチョイ bf37-ytZF)
2018/02/18(日) 21:33:09.71ID:Pbt6vSqU0 >>231
オケツに_をつけてますわ
オケツに_をつけてますわ
236デフォルトの名無しさん (ワッチョイ ff8a-NmL4)
2018/02/18(日) 21:33:14.46ID:dLlRK2Wa0 おれがそのソースを引き継いだらまず初めにやることは一つ
「this->」から「」への全ソース一括置換
「this->」から「」への全ソース一括置換
237デフォルトの名無しさん (ワッチョイ d7f2-T3WU)
2018/02/18(日) 21:56:25.56ID:Ct2k6iqr0 「m_」はダメで「_」ならいいってのはなんというか、合理的な理由よりも感覚・感情的なものかね。
this-> つけるほうが分かりやすくていいと思うのですが、変てこな接尾辞・接頭辞よりも
239デフォルトの名無しさん (ワッチョイ d77f-T3WU)
2018/02/18(日) 22:00:36.01ID:tWqaO5mz0 m_xxx も xxx_ もなんの保証にもならんからな
this->は必ずメンバになるけど
this->は必ずメンバになるけど
240デフォルトの名無しさん (ワッチョイ 9f4c-C9DI)
2018/02/18(日) 22:37:59.28ID:UEE7OeWn0 _はグーグルスタイルの圧力
241デフォルトの名無しさん (ワッチョイ ff76-BAP3)
2018/02/18(日) 22:42:10.00ID:WjKwYRHz0 余計な命名規約を作るくらいなら言語機能を使った方が良いわな
this->派だわ
this->派だわ
242デフォルトの名無しさん (ワッチョイ bf0e-qi38)
2018/02/18(日) 23:21:23.43ID:AjuHfv4B0 thisで明示した方が所在がハッキリして良いナリ
当職は名前空間もusingせずに明示しろ派ナリ
安易な省略はタイプ数を減らすという軽微なメリットと引き換えに可読性を落としケアレスミスを誘発するという恐ろしいデメリットを孕むナリ
当職は名前空間もusingせずに明示しろ派ナリ
安易な省略はタイプ数を減らすという軽微なメリットと引き換えに可読性を落としケアレスミスを誘発するという恐ろしいデメリットを孕むナリ
243デフォルトの名無しさん (ワッチョイ 1f7e-T3WU)
2018/02/19(月) 00:00:39.93ID:hDVR9PRD0244デフォルトの名無しさん (ワッチョイ ff8a-NmL4)
2018/02/19(月) 00:14:25.92ID:o8qstbSZ0 _付けるなら変数の後ろだろ
245デフォルトの名無しさん
2018/02/19(月) 00:18:14.94 C/C++なら必然的に末尾に付けるしかない
先頭に_付けるような情弱は死ねばいい
Perl/Pythonだと先頭に付けるけどな
先頭に_付けるような情弱は死ねばいい
Perl/Pythonだと先頭に付けるけどな
246デフォルトの名無しさん (ワッチョイ 17c3-T3WU)
2018/02/19(月) 00:42:17.66ID:SSx66hQd0 やらんけど、前一つなら規約には引っかからないんじゃなかったけ
247デフォルトの名無しさん (ワッチョイ 1f7e-T3WU)
2018/02/19(月) 00:57:15.60ID:hDVR9PRD0 未定義なのは
_始まりでグローバルスコープにあるもの
_始まりでアルファベットの大文字が続くもの全て
__で始まるもの全て
1番目の_始まりなだけならローカル変数、引数、メンバでは予約されていないので使ってもよい
_始まりでグローバルスコープにあるもの
_始まりでアルファベットの大文字が続くもの全て
__で始まるもの全て
1番目の_始まりなだけならローカル変数、引数、メンバでは予約されていないので使ってもよい
248はちみつ餃子 ◆8X2XSCHEME (ワッチョイ bf6f-T3WU)
2018/02/19(月) 01:15:36.25ID:gMMBYzvP0249はちみつ餃子 ◆8X2XSCHEME (ワッチョイ bf6f-T3WU)
2018/02/19(月) 01:20:40.79ID:gMMBYzvP0250デフォルトの名無しさん (ワッチョイ 1f7e-T3WU)
2018/02/19(月) 02:05:55.66ID:hDVR9PRD0 コーディング規約はうろ覚えだけど自由度の高いBoostスタイルを薦める
publicな識別子はstdに合わせて小文字スネークケース
マクロはBOOST_から始める
インデントはスペース、一行の文字数は80文字を推奨
意味のある名前を付けることを推奨
ファイル構成に関するもの
その他細々としたもの
ライブラリごとのローカルルールがある場合もある
あとは自由
thisを付けろだとか改行の仕方だとかは一切書かれてない
publicな識別子はstdに合わせて小文字スネークケース
マクロはBOOST_から始める
インデントはスペース、一行の文字数は80文字を推奨
意味のある名前を付けることを推奨
ファイル構成に関するもの
その他細々としたもの
ライブラリごとのローカルルールがある場合もある
あとは自由
thisを付けろだとか改行の仕方だとかは一切書かれてない
251デフォルトの名無しさん (ワッチョイ bf0e-qi38)
2018/02/19(月) 02:37:36.58ID:SEa8F8NC0 >>248-249
お互いにマナーを守る世界は過ごしやすいがマナーの厳守を要求し出すと途端に息苦しくなるナリ
自分にも他人にも読み易いコードを書こうという気遣いが見て取れるなら細かく突っ込んだりはしないナリ
お互いにマナーを守る世界は過ごしやすいがマナーの厳守を要求し出すと途端に息苦しくなるナリ
自分にも他人にも読み易いコードを書こうという気遣いが見て取れるなら細かく突っ込んだりはしないナリ
252デフォルトの名無しさん (ワッチョイ ff3f-T3WU)
2018/02/19(月) 05:40:18.76ID:wBFQMwB50 this->で必ずメンバというやつら
じゃあ必ずブロック内変数という表記もしたらどうだ
じゃあ必ずブロック内変数という表記もしたらどうだ
253デフォルトの名無しさん (アウアウアー Sa4f-rtnb)
2018/02/19(月) 12:45:29.69ID:yTAVcy/Ya 使うライブラリや開発環境の内部のスタイルに合わせるけどな。
派生クラスとかAPIのラッパークラスとか作り始めると、
どうしても内部の書き方に合わせておいた方が読みやすいし。
今でもWin32とかMFCでやることもあるけど、
そのときはm_とかpとかhとかdwとかバンバンつける。
派生クラスとかAPIのラッパークラスとか作り始めると、
どうしても内部の書き方に合わせておいた方が読みやすいし。
今でもWin32とかMFCでやることもあるけど、
そのときはm_とかpとかhとかdwとかバンバンつける。
254はちみつ餃子 ◆8X2XSCHEME (ワッチョイ bf6f-T3WU)
2018/02/19(月) 13:19:17.15ID:gMMBYzvP0 使う側の都合に合わせろよ。 ラップしてるのに中身のスタイルが漏れてるんじゃラップの甲斐がなくね?
中身を知ってる人がちょっとした便利のためだけに薄いラッパを作る場合ならそういう選択もあるだろうけど。
中身を知ってる人がちょっとした便利のためだけに薄いラッパを作る場合ならそういう選択もあるだろうけど。
255デフォルトの名無しさん (ワッチョイ 9f9d-MriG)
2018/02/19(月) 14:36:30.11ID:00nJVfHA0 コンバータにあわせろよ。C#で作ってコンバータかけた方が綺麗スッキリするんだから。
256デフォルトの名無しさん (ドコグロ MMcb-dLOu)
2018/02/19(月) 19:36:41.65ID:2cNNs3G6M >>253
そりゃAPIに渡す構造体でdwSizeとか使われてたらそこだけは合わせざるを得ないけど自分のコードスタイルを合わせる必要はないだろ
そりゃAPIに渡す構造体でdwSizeとか使われてたらそこだけは合わせざるを得ないけど自分のコードスタイルを合わせる必要はないだろ
257デフォルトの名無しさん (ワッチョイ 9fbd-RFe/)
2018/02/19(月) 20:29:38.46ID:czaD+lHv0 Windows メインで作業されている方で、
valgrind を併用している方はおられませんか?
もしよろしければ使用感をお聞かせいただけませんか
operator new()/operator delete() 乗っ取りデバッグに限界を感じてしまっている状況です
(cl や bcc32/bcc32c/bcc64 では new/delete 乗っ取りができません)
いや、さっさと入れればいいのですが、仮想環境とかよくわからないし…Vine Linux 以来触ってないし…
valgrind を併用している方はおられませんか?
もしよろしければ使用感をお聞かせいただけませんか
operator new()/operator delete() 乗っ取りデバッグに限界を感じてしまっている状況です
(cl や bcc32/bcc32c/bcc64 では new/delete 乗っ取りができません)
いや、さっさと入れればいいのですが、仮想環境とかよくわからないし…Vine Linux 以来触ってないし…
259デフォルトの名無しさん (ワッチョイ 974f-4dOP)
2018/02/21(水) 01:13:14.52ID:wPLJFyuu0 windowsならapplication verifier使えば?
260デフォルトの名無しさん (ワッチョイ 1768-xgEu)
2018/02/21(水) 09:49:28.54ID:8k15W99L0 以下のURLのプログラムでSFINAEを試してみていて
https://wandbox.org/permlink/LqKmn50PaPbtohs5
BOOST_TTI_HAS_MEMBER_FUNCTIONを使えば
has_funcというメタ関数を使わずに済んで、短くできないかと試行錯誤中なのですが
うまく行きません。
どうやったらビルドが通るようになるでしょうか?
https://wandbox.org/permlink/LqKmn50PaPbtohs5
BOOST_TTI_HAS_MEMBER_FUNCTIONを使えば
has_funcというメタ関数を使わずに済んで、短くできないかと試行錯誤中なのですが
うまく行きません。
どうやったらビルドが通るようになるでしょうか?
261デフォルトの名無しさん (ワッチョイ 9fa2-T3WU)
2018/02/21(水) 18:31:01.90ID:8+abUSIR0 まずはそのうまく行かないコードを示したら?
262片山博文MZ ◆T6xkBnTXz7B0 (スププ Sdbf-ZgEC)
2018/02/21(水) 19:26:19.92ID:UifE8nP3d263260 (マクド FF6b-xgEu)
2018/02/21(水) 19:34:37.06ID:EmINyJBAF すみません、BOOST_TTI_HAS_MEMBER_FUNCTIONを使って短くする以前に元々が間違っていました。
以下の3つでオーバーロードしたかったのでした。
・funcというメンバ関数を持つダブルポインタ
・funcというメンバ関数を持たないダブルポインタ
・それ以外
それで思ったのですが多分、Boost.TTIライブラリで
〇〇というメンバ関数を持つクラス、を識別するメタ関数は作れても
〇〇というメンバ関数を持つクラスのダブルポインタ、は無理な気がしてきました。
一旦諦めようと思います。
以下の3つでオーバーロードしたかったのでした。
・funcというメンバ関数を持つダブルポインタ
・funcというメンバ関数を持たないダブルポインタ
・それ以外
それで思ったのですが多分、Boost.TTIライブラリで
〇〇というメンバ関数を持つクラス、を識別するメタ関数は作れても
〇〇というメンバ関数を持つクラスのダブルポインタ、は無理な気がしてきました。
一旦諦めようと思います。
264260 (マクド FF6b-xgEu)
2018/02/21(水) 23:10:49.37ID:EmINyJBAF265デフォルトの名無しさん (ワッチョイ c667-x4Or)
2018/02/22(木) 10:26:41.79ID:qwLRFwLN0 >>263
あと2年待てばconceptできるかもよ
あと2年待てばconceptできるかもよ
266デフォルトの名無しさん (ワッチョイ 8abd-2pQG)
2018/02/22(木) 21:31:34.66ID:SOkZDC9P0 (VBみたいな名前付き引数が実現されたら
システムハンガリアン否定論者をぎゃふんと言わせられるのに…
システムハンガリアン否定論者をぎゃふんと言わせられるのに…
267デフォルトの名無しさん (ワッチョイ c667-x4Or)
2018/02/22(木) 21:55:24.65ID:qwLRFwLN0 システムハンガリアン発祥の会社が何か作ったら否定論者がぎゃふんと言うのか?
おまえの頭の中は論点先取だか循環論法だかがグルグル回っているようだな
おまえの頭の中は論点先取だか循環論法だかがグルグル回っているようだな
268デフォルトの名無しさん (ワッチョイ 8abd-2pQG)
2018/02/23(金) 22:10:42.23ID:XlnyEs6k0 ↑
想像してごらん全ての人々が
dwRet = ::WaitForSingleObject( hHandle = m_hThread, dwMillisecond = m_hTCTmo )
と書く世界を、
想像してごらん全ての人々が
dwRet = ::WaitForSingleObject( hHandle = m_hThread, dwMillisecond = m_hTCTmo )
と書く世界を、
269デフォルトの名無しさん (ワッチョイ 8abd-2pQG)
2018/02/23(金) 22:11:40.62ID:XlnyEs6k0 ごめ
誤: m_hTCTmo
正: m_dwTCTmo
見れば間違いがワカルのがハンガリアンの極めて良いところ
誤: m_hTCTmo
正: m_dwTCTmo
見れば間違いがワカルのがハンガリアンの極めて良いところ
270デフォルトの名無しさん (ブーイモ MM5e-chUR)
2018/02/23(金) 22:21:40.17ID:R3lraTlNM271デフォルトの名無しさん (ワッチョイ ba12-SJjx)
2018/02/24(土) 10:44:07.22ID:mn7A8TMg0 一分間で間違いに気づいてはいるものの
そもそもの書く瞬間にはどうやら人智を用いても気付けないらしいから
IDEにエラー出してもらった方が早いんじゃあねえの
実は人間の集中力を超えたところにある方法論で、実践するとストレスが溜まるっぽいから、機械任せにした方がいい
それに、書いてる最中は変数の型まで考えたくない
見て分かることは、機械任せにすれば見なくても分かるから、
今のご時世、人間の有限の集中力を目視チェックなんかに使いたくない
脳みそのリソースはもっと別のところに使うべきだ
つまりは、書いてる最中は脳みそが「それが正しい」と思い込んでるから、
間違いは自分自身では絶対に分からない
これがバグを作り込む
hだったかdwだったかを脳が自動的に混同してるから、その分だけ余計に脳のリソースを使っている
「なんで書いている最中に自分自身で気付かないのか」、これ、とても重要だよ
そもそもの書く瞬間にはどうやら人智を用いても気付けないらしいから
IDEにエラー出してもらった方が早いんじゃあねえの
実は人間の集中力を超えたところにある方法論で、実践するとストレスが溜まるっぽいから、機械任せにした方がいい
それに、書いてる最中は変数の型まで考えたくない
見て分かることは、機械任せにすれば見なくても分かるから、
今のご時世、人間の有限の集中力を目視チェックなんかに使いたくない
脳みそのリソースはもっと別のところに使うべきだ
つまりは、書いてる最中は脳みそが「それが正しい」と思い込んでるから、
間違いは自分自身では絶対に分からない
これがバグを作り込む
hだったかdwだったかを脳が自動的に混同してるから、その分だけ余計に脳のリソースを使っている
「なんで書いている最中に自分自身で気付かないのか」、これ、とても重要だよ
272デフォルトの名無しさん (スップ Sd02-2/+O)
2018/02/24(土) 11:11:20.01ID:51zBno3Kd 変数名と型が一致してるという保証がゼロだからシステムハンガリアンなんて無駄以外の何物でもない
無駄というか悪
無駄というか悪
273デフォルトの名無しさん (ワッチョイ 8abd-2pQG)
2018/02/24(土) 12:15:45.87ID:mm9B9rZ50274デフォルトの名無しさん (ワッチョイ df7f-x4Or)
2018/02/24(土) 12:23:50.23ID:b3ZDZ7IS0 その場合、やめられる方だけやめればいいな
つまりハンガリアンを。
つまりハンガリアンを。
275デフォルトの名無しさん (ワッチョイ b7b3-x4Or)
2018/02/24(土) 12:27:42.98ID:pqM6ijVV0 まともな開発環境使っていれば必要ないのでは
276デフォルトの名無しさん (ワッチョイ c6cb-chUR)
2018/02/24(土) 12:34:43.53ID:B9f7/evx0 ハンガリアンはもうだめだ。
ポーランドを使おう。
ポーランドを使おう。
277デフォルトの名無しさん (ワッチョイ 520e-MTlB)
2018/02/24(土) 12:51:07.68ID:d7+fd25J0 >>272
そういう事言い出すと「関数名と機能が一致してる保証がゼロ」や「クラスメンバの隠蔽が完璧である保証がゼロ」などといくらでも難癖を付けれるナリ
ヒューマンエラーを理由に不要と結論付けるのならあらゆるコーディング規約が不要という結論になってしまう、これはいけない
命名規則は可読性の向上に結びつくものでなければならない、規約を違反する事で起きるトラブルはプログラマ側の責任、それは分かるよね?
そういう事言い出すと「関数名と機能が一致してる保証がゼロ」や「クラスメンバの隠蔽が完璧である保証がゼロ」などといくらでも難癖を付けれるナリ
ヒューマンエラーを理由に不要と結論付けるのならあらゆるコーディング規約が不要という結論になってしまう、これはいけない
命名規則は可読性の向上に結びつくものでなければならない、規約を違反する事で起きるトラブルはプログラマ側の責任、それは分かるよね?
278デフォルトの名無しさん (ワッチョイ df7f-x4Or)
2018/02/24(土) 13:26:14.86ID:b3ZDZ7IS0 ヒューマンエラーが起きる部分は極力排除して機械任せにできる部分は機械任せにすればいい
ハンガリアンを導入する理由はもはや無いな。可読性悪いし。
ハンガリアンを導入する理由はもはや無いな。可読性悪いし。
279デフォルトの名無しさん (ワッチョイ ea60-MTlB)
2018/02/24(土) 14:24:10.94ID:yWQ45jBy0280デフォルトの名無しさん (ワッチョイ 8abd-2pQG)
2018/02/24(土) 14:29:08.35ID:mm9B9rZ50 可読性ぐらいテンプレートによる高度なメタプログラミングに慣れた諸兄なら
ハンガリアンごとき目を慣らして解決できるはずなんじゃ…
ハンガリアンごとき目を慣らして解決できるはずなんじゃ…
281はちみつ餃子 ◆8X2XSCHEME (ワッチョイ e66f-x4Or)
2018/02/24(土) 15:03:19.72ID:ohURjCBl0283デフォルトの名無しさん (ワッチョイ 2f93-IXLF)
2018/02/24(土) 17:03:03.20ID:agv5rOmv0284デフォルトの名無しさん (ブーイモ MM5e-Clm8)
2018/02/24(土) 17:08:35.75ID:4JIC+wG/M なぁにその内、ロシアが併呑してくれるさ
285デフォルトの名無しさん (ワッチョイ 70b3-Tnpk)
2018/02/25(日) 14:16:53.97ID:8l5JrV0a0 >>266
名前付き引数イディオムとenable_if<is_same<...>::value>が最強と言うことだな
※プログラマが、使用者が型を間違えないようにと気を使うのが正しいなら、間違えたらコンパイルエラーになるこれが最強だろ?
名前付き引数イディオムとenable_if<is_same<...>::value>が最強と言うことだな
※プログラマが、使用者が型を間違えないようにと気を使うのが正しいなら、間違えたらコンパイルエラーになるこれが最強だろ?
286デフォルトの名無しさん (ワッチョイ ba12-SJjx)
2018/02/25(日) 14:35:24.31ID:zhzj1IkW0 >>277
ちげえんだよんぁ
可読性じゃねえんだよ
>>268を見てみろよ、
読む時じゃなくて書く時のヒューマンエラーだ
なんで入り込んだのか全く分からんようなミステイクだ
プログラミングが工業的生産の一種なら、その手のヒューマンエラーは無い方がいい
で、改めて>>268を見てみると、「可読性」があってプレフィクスの間違いに気付いてはいるものの、
そもそも書く段でなんで間違えたのか、それが全く分からない
他人はおろか本人すらも自覚できない謎の理由でプレフィクスを間違えてる(これがヒューマンエラーなんだけどな)
なんで、後だしジャンケンだと、「プレフィクスが最初から無ければ、間違いも発生しえなかった」、とも言える
もしかすると、書く時に間違える/読む時に間違える の比率を考えると、ハンガリアン記法は書く時に間違えやすいが読むときに間違いにくい……のトレードオフなだけかもしれん
要するに、可読性と生産性のトレードオフだけなんじゃあねえのか?
それに、読む時のヒューマンエラーと書く時のヒューマンエラーをわざと混同してるのはいただけない
ちげえんだよんぁ
可読性じゃねえんだよ
>>268を見てみろよ、
読む時じゃなくて書く時のヒューマンエラーだ
なんで入り込んだのか全く分からんようなミステイクだ
プログラミングが工業的生産の一種なら、その手のヒューマンエラーは無い方がいい
で、改めて>>268を見てみると、「可読性」があってプレフィクスの間違いに気付いてはいるものの、
そもそも書く段でなんで間違えたのか、それが全く分からない
他人はおろか本人すらも自覚できない謎の理由でプレフィクスを間違えてる(これがヒューマンエラーなんだけどな)
なんで、後だしジャンケンだと、「プレフィクスが最初から無ければ、間違いも発生しえなかった」、とも言える
もしかすると、書く時に間違える/読む時に間違える の比率を考えると、ハンガリアン記法は書く時に間違えやすいが読むときに間違いにくい……のトレードオフなだけかもしれん
要するに、可読性と生産性のトレードオフだけなんじゃあねえのか?
それに、読む時のヒューマンエラーと書く時のヒューマンエラーをわざと混同してるのはいただけない
287デフォルトの名無しさん (ワッチョイ 8a6e-x4Or)
2018/02/25(日) 16:15:03.29ID:s5td7qK+0 void func(int a)
{
{
288デフォルトの名無しさん (ワッチョイ 8a6e-x4Or)
2018/02/25(日) 16:15:31.06ID:s5td7qK+0 void func(int a)
{
//aが何型かわからない
//アホかおまえは
}
{
//aが何型かわからない
//アホかおまえは
}
289デフォルトの名無しさん (ワッチョイ 8a6e-x4Or)
2018/02/25(日) 16:46:37.12ID:s5td7qK+0 template <typename T>
void func(T lpszA)
{
//lpszって書いてあるからTはLPSTR型だな
//アホかおまえは
}
void func(T lpszA)
{
//lpszって書いてあるからTはLPSTR型だな
//アホかおまえは
}
290デフォルトの名無しさん (ワッチョイ 8abd-2pQG)
2018/02/25(日) 19:14:43.19ID:4jIr3vvu0291デフォルトの名無しさん (ワッチョイ 8abd-2pQG)
2018/02/25(日) 19:15:39.42ID:4jIr3vvu0 ごめ
×:テンプレート批判論者
○:ハンガリアン批判論者
×:テンプレート批判論者
○:ハンガリアン批判論者
292デフォルトの名無しさん (ワッチョイ df7f-x4Or)
2018/02/25(日) 19:29:08.16ID:s+qaK1zS0 テンプレートに対してはハンガリアンは全くの無力だよなあ
一貫性の観点からやっぱりハンガリアンは無い方がいいわ
一貫性の観点からやっぱりハンガリアンは無い方がいいわ
293デフォルトの名無しさん (ワッチョイ 8abd-2pQG)
2018/02/25(日) 19:48:52.19ID:4jIr3vvu0 .>>290のレスを見てテンプレートの実体化時までハンガリアンが無力なことにされてはかないませんなあ…
294デフォルトの名無しさん (ワッチョイ 0637-rG1w)
2018/02/25(日) 20:11:05.52ID:fbPK05Px0 そもそも関数が長い場合は型情報を持たすのもありだよな
システムハンガリアンをやめさせようとして先に関数を短くしなきゃだめだなと追う結論に至って放置した
システムハンガリアンをやめさせようとして先に関数を短くしなきゃだめだなと追う結論に至って放置した
295デフォルトの名無しさん (ワッチョイ 8a6e-x4Or)
2018/02/25(日) 20:37:38.24ID:s5td7qK+0 //1万行の最長不倒関数を書く
//アホかおまえは
//アホかおまえは
296デフォルトの名無しさん (ワッチョイ 8a6e-x4Or)
2018/02/25(日) 21:00:14.67ID:s5td7qK+0 void func(int lpszA)
{
//lpszって書いてあるからLPSTR型だな
//アホかおまえは
}
{
//lpszって書いてあるからLPSTR型だな
//アホかおまえは
}
297デフォルトの名無しさん (ワッチョイ c4e3-x4Or)
2018/02/25(日) 21:58:30.83ID:qLuvVokt0 システムハンガリ理解してない人の例上げてね?
298デフォルトの名無しさん (ワッチョイ 8abd-2pQG)
2018/02/25(日) 22:45:03.97ID:4jIr3vvu0 >>295
「1画面に収まらない」を都合よく無視しないように
「1画面に収まらない」を都合よく無視しないように
299デフォルトの名無しさん (ワッチョイ 4634-gMjx)
2018/02/25(日) 23:43:59.89ID:yscCG2q60 システムハンガリアンはDWORDをintに型名変更するだけでその変数名全部終わるからなしかも一瞬で
300デフォルトの名無しさん
2018/02/25(日) 23:57:37.89 >>299
dwをiに置換するだけだからリファクタリングが楽っていう意味?
dwをiに置換するだけだからリファクタリングが楽っていう意味?
301デフォルトの名無しさん (ワッチョイ 4634-gMjx)
2018/02/26(月) 00:59:51.78ID:VDQLjiDS0 まったく逆だ
dwからiに全部置換していかないと変数名の意味を為さなくなるからシステムハンガリアンは愚かさ甚だしいと云うておる
dwからiに全部置換していかないと変数名の意味を為さなくなるからシステムハンガリアンは愚かさ甚だしいと云うておる
302デフォルトの名無しさん (ワッチョイ 4634-gMjx)
2018/02/26(月) 01:02:48.27ID:VDQLjiDS0 アンパンマン調で例えるなら型名変えるだけでメンテ百倍みたいな
303デフォルトの名無しさん (ワッチョイ 147e-x4Or)
2018/02/26(月) 01:10:40.33ID:jQ6YvoyL0 組み込み型はいいけどクラスはどうすんのさ
意味の分からないサフィックスを付けられても困るぞ
意味の分からないサフィックスを付けられても困るぞ
304デフォルトの名無しさん (ワッチョイ 4634-gMjx)
2018/02/26(月) 01:11:26.04ID:VDQLjiDS0 ハンガリアン!新しい型だよ!
有難う!デザパタ娘ちゃん!
メンテ百倍!ハンガリアン!
有難う!デザパタ娘ちゃん!
メンテ百倍!ハンガリアン!
305デフォルトの名無しさん (ワッチョイ 0637-rG1w)
2018/02/26(月) 01:55:04.49ID:4PPe6ndQ0 そもそもDWORDをintに変えることが滅多にない
306デフォルトの名無しさん (ワッチョイ 147e-x4Or)
2018/02/26(月) 02:10:59.71ID:jQ6YvoyL0 dwとか書かれてもDWORDの定義を知らないと意味不明だし
やるなら符号の有無とサイズが分かるように書かないと意味ないでしょ
やるなら符号の有無とサイズが分かるように書かないと意味ないでしょ
307デフォルトの名無しさん (ワッチョイ 8a05-x4Or)
2018/02/26(月) 04:56:46.87ID:lxlU26hn0 >>298
おまえは間違いなく1万行と書いた
その史実を誤魔化すことはできない
「ありえないという根拠は」という問いを反論として用いるのは
俺が「ありえない」と言った(事実と違うが)ことが
おまえが「ありうる」と思っているのと違ったからだろう
いずれにせよ「アホかおまえは」にふさわしいハチャメチャだな
おまえは間違いなく1万行と書いた
その史実を誤魔化すことはできない
「ありえないという根拠は」という問いを反論として用いるのは
俺が「ありえない」と言った(事実と違うが)ことが
おまえが「ありうる」と思っているのと違ったからだろう
いずれにせよ「アホかおまえは」にふさわしいハチャメチャだな
308デフォルトの名無しさん (ワッチョイ 769f-PnyW)
2018/02/26(月) 08:02:35.99ID:SPD4iDfM0 ポインタのpとか参照のrとかは今でも使ってる
309デフォルトの名無しさん
2018/02/26(月) 08:09:57.39 >>307
史実とか言っちゃうのって。。。
史実とか言っちゃうのって。。。
310デフォルトの名無しさん (ワッチョイ 520e-MTlB)
2018/02/26(月) 08:16:32.18ID:TvC1o7QC0311デフォルトの名無しさん (ワッチョイ 8a05-x4Or)
2018/02/26(月) 09:55:53.14ID:lxlU26hn0312デフォルトの名無しさん (ワッチョイ 8a05-x4Or)
2018/02/26(月) 09:56:14.50ID:lxlU26hn0 >>310
ニホンゴワカリマスカ?
ニホンゴワカリマスカ?
313デフォルトの名無しさん (ワッチョイ d023-MTlB)
2018/02/26(月) 10:44:04.77ID:U+kFnN5D0 ハード直叩きのドライバ屋はデータバスやレジスタの幅を間違えると大変だから
物理層の実装ではハンガリアン使うこともあるよ
物理層の実装ではハンガリアン使うこともあるよ
314デフォルトの名無しさん (アウアウカー Sa11-2orQ)
2018/02/26(月) 10:55:31.04ID:n/n1Eejna >>313
むしろそれはアプリケーションハンガリアンじゃね?
むしろそれはアプリケーションハンガリアンじゃね?
315デフォルトの名無しさん (スップ Sdc4-aBV2)
2018/02/26(月) 11:21:30.74ID:mt/mMzV6d 間違えると大変だからハンガリアンを使ってはならないんだよ
偽の情報に頼るんではなくて元を逐一確かめないと
偽の情報に頼るんではなくて元を逐一確かめないと
316デフォルトの名無しさん (ワッチョイ 2f93-0l3D)
2018/02/26(月) 11:33:14.68ID:yfGCkThX0 今勉強してるんだけどC++ではポインタを使わずに参照で書くのがデフォルトなの?
317デフォルトの名無しさん (ワッチョイ 520e-MTlB)
2018/02/26(月) 11:36:50.47ID:TvC1o7QC0318デフォルトの名無しさん (アウアウカー Sa11-2orQ)
2018/02/26(月) 11:38:09.46ID:n/n1Eejna >>316
ポインタも必要に応じて使うけど、メモリ管理の煩雑さとミスの危険性を避けるために参照やスマートポインタやコンテナ、イテレータなど他に適切な物がある時はなるべくそちらを使うのが流儀かな。
ポインタも必要に応じて使うけど、メモリ管理の煩雑さとミスの危険性を避けるために参照やスマートポインタやコンテナ、イテレータなど他に適切な物がある時はなるべくそちらを使うのが流儀かな。
319デフォルトの名無しさん (ワッチョイ 8a05-x4Or)
2018/02/26(月) 11:51:17.55ID:lxlU26hn0 >>316
デフォ・・・まあ、そう言えなくもないか
参照でもポインタでもどっちでもいい用途には参照
ポインタでしかできないことはNULLに++や絶対番地指定
参照でしかできないことは一時オブジェクトやコピコン類
デフォ・・・まあ、そう言えなくもないか
参照でもポインタでもどっちでもいい用途には参照
ポインタでしかできないことはNULLに++や絶対番地指定
参照でしかできないことは一時オブジェクトやコピコン類
320デフォルトの名無しさん (ワッチョイ ba23-k8Zo)
2018/02/26(月) 12:15:47.61ID:z/vehsiL0 書き込むときは参照ではなくポインタにしろと言ってた人がいた。
理由を聞いたら「なんか書き込んでる感がない」だった。
理由を聞いたら「なんか書き込んでる感がない」だった。
321デフォルトの名無しさん (ワッチョイ 8a05-x4Or)
2018/02/26(月) 12:17:18.65ID:lxlU26hn0 std::cin >> &a;
やだよ、こんなの
やだよ、こんなの
322デフォルトの名無しさん (ワッチョイ df7f-x4Or)
2018/02/26(月) 12:21:09.58ID:W3q5coR10 グーグル規約だと書き込む引数は参照ではなくポインタにしろってなってる
でも標準ライブラリが普通に参照で書き込んでるので意味ないかなと思う
でも標準ライブラリが普通に参照で書き込んでるので意味ないかなと思う
323デフォルトの名無しさん (スフッ Sd94-OThY)
2018/02/26(月) 13:05:03.30ID:LqmnPPXld やC++糞
324デフォルトの名無しさん (ワッチョイ 147e-x4Or)
2018/02/26(月) 13:30:49.55ID:jQ6YvoyL0 好きな方使えとしか言いようがない
ただ参照はnullポインタが無いという特性はある
ただ参照はnullポインタが無いという特性はある
325デフォルトの名無しさん (ワッチョイ ba23-k8Zo)
2018/02/26(月) 13:42:09.37ID:z/vehsiL0326デフォルトの名無しさん (ワッチョイ 2f93-0l3D)
2018/02/26(月) 13:44:00.32ID:yfGCkThX0 レスサンクス
cからだからポインタで書いちゃいそうだわ
cからだからポインタで書いちゃいそうだわ
327デフォルトの名無しさん (アウーイモ MM3a-QuQl)
2018/02/26(月) 18:25:47.85ID:aHz4HBvIM ローカルで宣言したunique_ptrを他のメソッドに渡してデータをつめたいばあいってどういう引数で渡せば良いの?
unique_ptr<Hoge> ptr(new Hoge);
hogehoge(ptr);
Hogehoge::hoge(const unique_ptr<Hoge>& ptr){
ptr->aaa = 123;
}
これでいける?
なんかウェブサイトみてると&&二つとかあったりするの見かけて混乱してきた
unique_ptr<Hoge> ptr(new Hoge);
hogehoge(ptr);
Hogehoge::hoge(const unique_ptr<Hoge>& ptr){
ptr->aaa = 123;
}
これでいける?
なんかウェブサイトみてると&&二つとかあったりするの見かけて混乱してきた
328デフォルトの名無しさん (ワッチョイ fae7-RzsP)
2018/02/26(月) 18:46:48.22ID:6OgFttId0 &&は所有権ごとぶん投げる時に使う
渡した後も呼び出し元で使うんだったらそれて合ってるぞ
渡した後も呼び出し元で使うんだったらそれて合ってるぞ
329デフォルトの名無しさん (ワッチョイ d0e8-z5Dr)
2018/02/26(月) 19:00:19.12ID:r2m2Cr000 >>327
それだったらunique_ptrじゃなくて参照渡せば良いだけじゃ
それだったらunique_ptrじゃなくて参照渡せば良いだけじゃ
330デフォルトの名無しさん (ワッチョイ 0a80-IMbs)
2018/02/26(月) 19:31:15.52ID:NcBRNf650 知らない間に、&& みたいな参照渡しもできた
Rust の所有権ムーブの事
Rust の所有権ムーブの事
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- テレビ朝日 本社から男性が転落し死亡。関連会社社員か 当たった通行人が左肩軽傷 [阿弥陀ヶ峰★]
- テレビ朝日本社から20~30代の関連会社社員とみられる男性が転落し死亡 六本木けやき坂通りの通行人にはけが人なし [少考さん★]
- 小島瑠璃子さん、代表取締役を務める会社を破産申請 [牛丼★]
- 「残クレ」でマイホーム、国が銀行向け保険 新型住宅ローン普及促す -日経 ★3 [少考さん★]
- 【サッカー】日本代表、FIFAランキング“4位”の強豪イングランドとの対戦が正式決定! 来年3月に聖地ウェンブリーで激突へ [久太郎★]
- 日本、G7への中国招待を懸念 議長国フランスに慎重な対応要請 [どどん★]
- 女VIPPER抱きたい
- 【悲報】ジャップ、日中戦争に賛成が5割弱...軍歌の音が聞こえる... [856698234]
- ひまだねー
- 『エアジョーダンのゲン』にありがちなこと
- トンカツに塩つけて食う奴www
- 夢見るオマンコ
