!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を3行貼り付けること
次スレは>>980が立てること
無理なら細かく安価指定
※前スレ
C++相談室 part162
https://mevius.5ch.net/test/read.cgi/tech/1667194175/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
C++相談室 part163
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ bbda-Axul)
2022/12/30(金) 23:16:31.37ID:DPUEZfMS0544デフォルトの名無しさん (ワッチョイ 8bf0-/uvd)
2023/02/17(金) 22:56:59.77ID:iM8Xviia0 ◯◯のコンパイラや◯◯のチェックツールで警告が出るから直しとけ
って言われたら何の疑問も持たずに直すの?
◯◯はバグの元だから直せって言われたら
何の疑問も持たずに直すの?
思考停止?
って言われたら何の疑問も持たずに直すの?
◯◯はバグの元だから直せって言われたら
何の疑問も持たずに直すの?
思考停止?
545デフォルトの名無しさん (ワッチョイ d301-GLFt)
2023/02/17(金) 23:43:41.95ID:KJxAAApA0546デフォルトの名無しさん (ワッチョイ 835f-XGDL)
2023/02/17(金) 23:45:03.57ID:BuPJ3Mmy0 ぶっちゃけテストしてるなら警告放置でもいいけど、
テストするような人は警告にも対処するからな
テストするような人は警告にも対処するからな
547デフォルトの名無しさん (ワッチョイ d301-GLFt)
2023/02/17(金) 23:48:24.98ID:KJxAAApA0548デフォルトの名無しさん (ワッチョイ a712-NLDk)
2023/02/17(金) 23:53:50.54ID:wDoqrfUd0 見も知らん第三者にwell-formedなコードにケチつけられたら
言いなりにしろと押しつけてくるやつ、自分の姿をビデオでも鏡でもいいから見てみたら?
言いなりにしろと押しつけてくるやつ、自分の姿をビデオでも鏡でもいいから見てみたら?
549デフォルトの名無しさん (ワッチョイ ed7c-aJXl)
2023/02/18(土) 00:40:30.23ID:U7F6huSe0 多分「直す」を「何も考えずに警告抑止なりキャストなりで握り潰す」の意味で言ってるから噛み合ってないんだと思う
警告無視マンセー君以外はもちろんバグがないか確認した上で範囲チェックやクランプや(問題ないことを確認して)キャストなどを加えてプログラムを改良する意味で言ってる
警告無視マンセー君以外はもちろんバグがないか確認した上で範囲チェックやクランプや(問題ないことを確認して)キャストなどを加えてプログラムを改良する意味で言ってる
550デフォルトの名無しさん (オイコラミネオ MM91-4mn0)
2023/02/18(土) 02:15:58.71ID:AZBhix5KM551デフォルトの名無しさん (オイコラミネオ MM91-4mn0)
2023/02/18(土) 02:21:04.46ID:AZBhix5KM >>550
間違いました。unorderd_map の rehashingについて、こう有ります:
https://cplusplus.com/reference/unordered_map/unordered_map/rehash/
>Iterator validity
>If a rehash happens, all iterators are invalidated, but references and pointers to individual elements remain valid.
>If no actual rehash happens, no changes.
なので、iteratorは無効化されるが、個々の要素への参照やポインタは有効なまま残ります。
間違いました。unorderd_map の rehashingについて、こう有ります:
https://cplusplus.com/reference/unordered_map/unordered_map/rehash/
>Iterator validity
>If a rehash happens, all iterators are invalidated, but references and pointers to individual elements remain valid.
>If no actual rehash happens, no changes.
なので、iteratorは無効化されるが、個々の要素への参照やポインタは有効なまま残ります。
552デフォルトの名無しさん (オイコラミネオ MM91-4mn0)
2023/02/18(土) 03:03:49.37ID:AZBhix5KM >>551
ソース読まないとはっきりしないけど、恐らく、イテレーターが指している
オブジェクトのポインタを取得すると以前と同じ値になっている。
しかし、イテレーターには ++ で直後の要素に移動する機能が有る。
恐らくその機能が正しく働かない場合があるということらしい。
ゴミレスでごめん。
ソース読まないとはっきりしないけど、恐らく、イテレーターが指している
オブジェクトのポインタを取得すると以前と同じ値になっている。
しかし、イテレーターには ++ で直後の要素に移動する機能が有る。
恐らくその機能が正しく働かない場合があるということらしい。
ゴミレスでごめん。
553デフォルトの名無しさん (ワッチョイ 85f0-ivXK)
2023/02/18(土) 06:19:29.80ID:hapPzQ8z0554デフォルトの名無しさん (ワッチョイ 85f0-ivXK)
2023/02/18(土) 06:45:26.64ID:hapPzQ8z0 キャストして警告を隠す事がプログラムの改良だと思ってるアホとは会話しても無駄だな
555デフォルトの名無しさん (スッップ Sd43-f8s2)
2023/02/18(土) 06:50:44.99ID:FqZBdMS3d >>548
それだと多分うっとりしておしまいになるやつ
それだと多分うっとりしておしまいになるやつ
556デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 07:23:37.23ID:/Gi8XN260 ナルシストか
そうだろうな
そうだろうな
557デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 07:58:59.69ID:c4QxGie20 > キャストして警告を隠す事がプログラムの改良だと思ってるアホ
>>554 のことだなw
>>554 のことだなw
558デフォルトの名無しさん (ワッチョイ ed7c-aJXl)
2023/02/18(土) 09:42:41.72ID:U7F6huSe0 まだ直すと隠すの区別ついてないアホのためによくある例書いとくね
std::vector<Foo> foos = /* なんか入ってる */
for(int i = 0; i < GetLegacyLength(); ++i){
Hoge* item = GetLegacyItem(i);
if (i < foos.size()) // WARNING: signedとunsigned比較してんぞ
{ hoge(foos[i], item); }
else
{ fuga(item); }
}
アホの隠し方(1):脳死でif文のiかfoos.size()をキャストして隠蔽
アホの隠し方(2):脳死でiの型をsize_tに変更、そしてi < GetLegacyLength()でまた同じ警告が出て激怒「コンパイラの警告なんて無意味だ!」
正しい直し方:
なぜ長さを返すのに戻り値型がintなのか、GetLegacyLength()のマニュアルを見て仕様を確認する。
するとある条件でエラー値として-1を返すことがあると判明したので、
forループの前にGetLegacyLength()を取得するようにして、負の場合のエラー処理を追加した。
/*略*/
int len = GetLegacyLength();
if (len < 0) { /* エラー処理 */ }
else {
for(size_t i = 0; i < static_cast<size_t>(len); ++i) { //lenは0以上と確認済みなので安全にキャストできる
/*略*/
std::vector<Foo> foos = /* なんか入ってる */
for(int i = 0; i < GetLegacyLength(); ++i){
Hoge* item = GetLegacyItem(i);
if (i < foos.size()) // WARNING: signedとunsigned比較してんぞ
{ hoge(foos[i], item); }
else
{ fuga(item); }
}
アホの隠し方(1):脳死でif文のiかfoos.size()をキャストして隠蔽
アホの隠し方(2):脳死でiの型をsize_tに変更、そしてi < GetLegacyLength()でまた同じ警告が出て激怒「コンパイラの警告なんて無意味だ!」
正しい直し方:
なぜ長さを返すのに戻り値型がintなのか、GetLegacyLength()のマニュアルを見て仕様を確認する。
するとある条件でエラー値として-1を返すことがあると判明したので、
forループの前にGetLegacyLength()を取得するようにして、負の場合のエラー処理を追加した。
/*略*/
int len = GetLegacyLength();
if (len < 0) { /* エラー処理 */ }
else {
for(size_t i = 0; i < static_cast<size_t>(len); ++i) { //lenは0以上と確認済みなので安全にキャストできる
/*略*/
559デフォルトの名無しさん (ワッチョイ cbf2-D5Yo)
2023/02/18(土) 09:55:17.94ID:q7/8BBWI0 >>558
そもそもforの条件判定の部分で関数を呼ぶのは間違いだ
そもそもforの条件判定の部分で関数を呼ぶのは間違いだ
560デフォルトの名無しさん (ワッチョイ ed7c-aJXl)
2023/02/18(土) 10:01:12.90ID:U7F6huSe0 そこは間違いコード例だから意図的にそうしたんだけど
元がfor(int i = 0, len = GetLegacyLength(); i < len; ++i)だとしても話の本旨には関係ないよね?
お前が警告無視する時みたいに脳死で食いつくからそうなる
元がfor(int i = 0, len = GetLegacyLength(); i < len; ++i)だとしても話の本旨には関係ないよね?
お前が警告無視する時みたいに脳死で食いつくからそうなる
561デフォルトの名無しさん (スプッッ Sd43-avQ1)
2023/02/18(土) 10:30:22.39ID:Cp9I+Lmgd 警告を無視するのと握りつぶすのを混同しとるな
562デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 11:02:45.42ID:c4QxGie20563541 (ワッチョイ 1bad-BTrK)
2023/02/18(土) 12:30:58.62ID:XNyuFiWW0 >>551,552
いえいえ、わざわざ調べてもらってありがとうございます!
vectorのメモリ再配置によるアボート障害が発生したので、ハッシュのときも
同様のことがないか気になっていました。
とりあえずハッシュの場合はアボートすることはなさそうですね。
いえいえ、わざわざ調べてもらってありがとうございます!
vectorのメモリ再配置によるアボート障害が発生したので、ハッシュのときも
同様のことがないか気になっていました。
とりあえずハッシュの場合はアボートすることはなさそうですね。
564デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 12:34:06.96ID:/Gi8XN260565デフォルトの名無しさん (スフッ Sd43-1XUy)
2023/02/18(土) 12:47:29.66ID:jI/cauq9d >>558
BOOL GetMessage のことですね判ります
BOOL GetMessage のことですね判ります
566デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 12:49:33.03ID:c4QxGie20567デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 13:05:02.97ID:/Gi8XN260568デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 13:09:54.02ID:/Gi8XN260 なんかおまえさんの話し方なのか口癖なのかわからんが鼻につくんだよ
well-formedなコードに対する警告をどうするかなんて
おまえさんが感情的に喚いたからって誰も考えは変えないぞ
技術的な議論で誰も分かったと言って来ない現実を
おまえさんはDQN口調でどうかしようとしているようだが恥を知れ
well-formedなコードに対する警告をどうするかなんて
おまえさんが感情的に喚いたからって誰も考えは変えないぞ
技術的な議論で誰も分かったと言って来ない現実を
おまえさんはDQN口調でどうかしようとしているようだが恥を知れ
569デフォルトの名無しさん (スッププ Sd43-Kpzp)
2023/02/18(土) 13:12:16.36ID:WT5oC+Bfd 諭されて反論できなくなったから重箱の隅突き始めたよ
ダッサ
ダッサ
570デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 13:17:40.85ID:/Gi8XN260 あのforに違和感を覚えないセンスのやつに
上から目線でご高説いただいても
自分はああはなりたくないと思うだけだからな
上から目線でご高説いただいても
自分はああはなりたくないと思うだけだからな
571デフォルトの名無しさん (スッププ Sd43-Kpzp)
2023/02/18(土) 13:22:48.24ID:ldhLkjQ5d そうだな
悪い例として出されたコード例に向かって粗探ししてハイセンス気取るような恥ずかしいアホにはなりたくないものだ
悪い例として出されたコード例に向かって粗探ししてハイセンス気取るような恥ずかしいアホにはなりたくないものだ
572デフォルトの名無しさん (ワッチョイ ed7c-aJXl)
2023/02/18(土) 13:24:53.20ID:U7F6huSe0 ああいうダメコードを見つけ出すヒントとしてコンパイラ警告は使えるんだよっていう例を出したつもりだったんだけど難しかった?
573デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 13:28:32.75ID:/Gi8XN260 たまーに実在するからな、ああいうfor書くやつ
そういう手合いの言い訳はどいつが言っても同じ雑音でしかない
そういう手合いの言い訳はどいつが言っても同じ雑音でしかない
574デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 13:38:53.64ID:c4QxGie20 >>567
> 確認してないんだな?
> じゃあ一般論としてあんな変なコードをいつも書いているのか?
たった2行でよくこんなアホさが滲み出る文章書けるもんだな...
1行目もアホだと思うが2行目は脈絡もないのに「じゃあ」とかアホすぎる
こういう奴があの手のクソコードを書くんだろうなw
> 確認してないんだな?
> じゃあ一般論としてあんな変なコードをいつも書いているのか?
たった2行でよくこんなアホさが滲み出る文章書けるもんだな...
1行目もアホだと思うが2行目は脈絡もないのに「じゃあ」とかアホすぎる
こういう奴があの手のクソコードを書くんだろうなw
575デフォルトの名無しさん (スッププ Sd43-Kpzp)
2023/02/18(土) 13:40:46.05ID:U67S6hSRd 警告警察アンチ君がfor文警察になってしまった
576デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 13:44:53.99ID:/Gi8XN260 >>574
頭冷やせよ
特定の関数の仕様が理由でなくて
あんなコード書いたのかと言っている
おまえさんこそあの手のクソコードとやらはどれのことで
それをなぜ俺が書いていることになったのか説明できるか?
頭冷やせよ
特定の関数の仕様が理由でなくて
あんなコード書いたのかと言っている
おまえさんこそあの手のクソコードとやらはどれのことで
それをなぜ俺が書いていることになったのか説明できるか?
577デフォルトの名無しさん (スップ Sd03-f8s2)
2023/02/18(土) 13:45:46.69ID:8+fxePVqd >おまえさんの
ごめん無理
ごめん無理
578デフォルトの名無しさん (ワッチョイ e328-Qzdv)
2023/02/18(土) 13:58:29.96ID:5mGZNzlM0 低能警察に糞コードで反駁しようとしたら
収集がつかなくなったでござるの巻
警告を回避するためのコード変更がそんなに嫌ならコンパイラのオプションで警告を出さなくしたら良い……
収集がつかなくなったでござるの巻
警告を回避するためのコード変更がそんなに嫌ならコンパイラのオプションで警告を出さなくしたら良い……
579デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 14:07:37.26ID:/Gi8XN260 警告どころかコンパイラのバグを回避することだってある
むろん思い切り処理系に依存する内容となるが嫌とか好きとか言ってらんない
必要が出ればやるだけで感情の入る余地はない
どっかの思い上がった坊やの俺様節が五月蠅いだけ
黙ってくれれば俺にそれ以上の望みはない
むろん思い切り処理系に依存する内容となるが嫌とか好きとか言ってらんない
必要が出ればやるだけで感情の入る余地はない
どっかの思い上がった坊やの俺様節が五月蠅いだけ
黙ってくれれば俺にそれ以上の望みはない
580デフォルトの名無しさん (ワッチョイ e328-Qzdv)
2023/02/18(土) 14:12:09.71ID:5mGZNzlM0 警告をOFFにしたら警告を回避しようとしてバグを仕込んでしまう事故は確実に防げる
ていうか本質論としてはそもそも警告に頼らねばプログラミングもできない程度の低能はそもそもプログラミングをすべきではないという話、
これは反駁のしようが無い
ていうか本質論としてはそもそも警告に頼らねばプログラミングもできない程度の低能はそもそもプログラミングをすべきではないという話、
これは反駁のしようが無い
581デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 14:13:36.72ID:c4QxGie20582デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 14:15:48.28ID:/Gi8XN260 はいはい「俺じゃない」のね
IDコロコロする人とは話にならないな
IDコロコロする人とは話にならないな
583デフォルトの名無しさん (ワッチョイ ed7c-aJXl)
2023/02/18(土) 14:32:47.85ID:U7F6huSe0 なんかすまんな
何気なく書いたダメコードのそれっぽいfor文がこんなにキチガイの琴線を刺激するとは思わなかった
何気なく書いたダメコードのそれっぽいfor文がこんなにキチガイの琴線を刺激するとは思わなかった
584デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 14:35:25.61ID:/Gi8XN260 559の指摘にあの返事だからな
うわー香ばしいと思ったのよ
うわー香ばしいと思ったのよ
585デフォルトの名無しさん (ワッチョイ ed7c-aJXl)
2023/02/18(土) 14:36:45.33ID:U7F6huSe0 黙れキチガイ
586デフォルトの名無しさん (ワッチョイ e328-Qzdv)
2023/02/18(土) 14:47:19.84ID:5mGZNzlM0 ↑うんこ
587デフォルトの名無しさん (ワッチョイ ed1f-EWEl)
2023/02/18(土) 14:52:57.45ID:aA0Lr1WO0588デフォルトの名無しさん (ワッチョイ 755f-rVJW)
2023/02/18(土) 15:00:31.81ID:AfjXtSgB0 forやwhileの条件でstring::sizeを呼んでるけどダメ?
589デフォルトの名無しさん (ワッチョイ cbf2-D5Yo)
2023/02/18(土) 15:01:44.62ID:q7/8BBWI0 >>588
意図したものならまぁいいけど、後々のことも考えると普通は禁止
意図したものならまぁいいけど、後々のことも考えると普通は禁止
590デフォルトの名無しさん (ワッチョイ e328-Qzdv)
2023/02/18(土) 15:12:52.01ID:5mGZNzlM0 ループ内で変更しないstd::stringのstd::string::size()なら
コンパイラが頑張ってギリ括り出し最適化をしてくれるかもしれんがコンパイラに優しくない……
ていうか以降値が変化しないことがわかっているメンバ変数やグローバル変数は
intやsize_tみたいな単純型ならさっさとローカル変数にコピーした方がメモリからのロード命令削減のために良い
実体(メンバ変数やグローバル変数)と同じ値を保持するローカル変数(エイリアス)があったら混乱するというのは
そんな関数が(担当者の脳のキャパに比べて)デカすぐる……
コンパイラが頑張ってギリ括り出し最適化をしてくれるかもしれんがコンパイラに優しくない……
ていうか以降値が変化しないことがわかっているメンバ変数やグローバル変数は
intやsize_tみたいな単純型ならさっさとローカル変数にコピーした方がメモリからのロード命令削減のために良い
実体(メンバ変数やグローバル変数)と同じ値を保持するローカル変数(エイリアス)があったら混乱するというのは
そんな関数が(担当者の脳のキャパに比べて)デカすぐる……
591デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 15:14:50.51ID:c4QxGie20592デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 15:26:22.78ID:/Gi8XN260 だから他人に指図すんな
警告をどうしようが回線をどうしようが
おまえさんに言われる筋合いはない
依頼心の強い甘ったれ野郎か?
警告をどうしようが回線をどうしようが
おまえさんに言われる筋合いはない
依頼心の強い甘ったれ野郎か?
593デフォルトの名無しさん (スッププ Sd43-Kpzp)
2023/02/18(土) 15:32:46.92ID:3QwlbD5xd 依頼心の塊はこんなゴミ溜めでイキリ倒さないと自分を保てないお前さんの方だろ
for文警察出来て楽しかったでちゅか?
for文警察出来て楽しかったでちゅか?
594デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 15:37:11.41ID:/Gi8XN260 こんなゴミ溜めでイキリ倒さないと自分を保てない → 依頼心が強い
全くつながらなくて説得力ないね
子供言葉にお似合いのしょーもない言い返しだなw
全くつながらなくて説得力ないね
子供言葉にお似合いのしょーもない言い返しだなw
595デフォルトの名無しさん (スッププ Sd43-Kpzp)
2023/02/18(土) 15:46:04.40ID:DOhL3WBHd j「コンパイラの警告は全てゴミだから無視するべき、なぜなら>>558のfor文がダサいから」なんて主張をしてる奴への罵倒になぜ論理性が求められるのか分からない
バカアホマヌケ依頼心野郎で充分だろお前もそうなんだし
バカアホマヌケ依頼心野郎で充分だろお前もそうなんだし
596デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 15:55:18.34ID:/Gi8XN260 へー、この流れをそう読んでいたのか
我ながらひどく買い被りすぎてたもんだ
そりゃー話になるわけないよな
我ながらひどく買い被りすぎてたもんだ
そりゃー話になるわけないよな
597デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 15:58:59.97ID:/Gi8XN260 警告は内容によっては無視する場合があると言ったのを
全て無視すると改変してまで言い返さないと気が済まないのか
子供言葉にry
全て無視すると改変してまで言い返さないと気が済まないのか
子供言葉にry
598デフォルトの名無しさん (ワッチョイ 4501-oojT)
2023/02/18(土) 16:00:51.47ID:hE3AXWNH0 そのうち惰性で内容を吟味せずに無視するようになりそうなので
がんばって警告は消してくスタイル
がんばって警告は消してくスタイル
599デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 16:02:45.49ID:/Gi8XN260 無視してたらコンパイラのバージョンが上がって警告しなくなったやつもあるな
600デフォルトの名無しさん (スッププ Sd43-Kpzp)
2023/02/18(土) 16:04:23.86ID:kbl+yJpad なるほど558は警告を無視する場合な訳ね、理由はfor文がダサいからw
やっぱこのチンパンジーオモロイわ
何か言い返してくるだろうけど、畜生の鳴き声に論理性なんて求めないから本能剥き出してくれていいよ
かわいいね
やっぱこのチンパンジーオモロイわ
何か言い返してくるだろうけど、畜生の鳴き声に論理性なんて求めないから本能剥き出してくれていいよ
かわいいね
601デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 16:05:46.49ID:c4QxGie20 >>592
IDコロコロに触れられず顔真っ赤w
IDコロコロに触れられず顔真っ赤w
602デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 16:13:38.69ID:/Gi8XN260 for文の話で脳死が出てくる自己紹介な人だから
for文についての指摘が警告の話に短絡してしまったわけか
治してあげんの面倒臭いから放置するぜ
for文についての指摘が警告の話に短絡してしまったわけか
治してあげんの面倒臭いから放置するぜ
603デフォルトの名無しさん (スッププ Sd43-Kpzp)
2023/02/18(土) 16:20:07.00ID:QwP9/dM9d 凄い、>>602が何一つ意味が分からない
本当に猿がランダムな日本語もどき書いてたんだな感動した
本当に猿がランダムな日本語もどき書いてたんだな感動した
604デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 16:31:14.25ID:/Gi8XN260 忘れてるかも知れんがここは全世界から閲覧かのうな掲示板だよ
おまえさんの発言見てんの俺だけじゃないからね
第三者にクスクスされる文面には気をつけたら?
おまえさんの発言見てんの俺だけじゃないからね
第三者にクスクスされる文面には気をつけたら?
605デフォルトの名無しさん (ワッチョイ fd10-h1Ka)
2023/02/18(土) 16:43:35.96ID:xVxS8guk0 自覚あったのに驚き。
606デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 16:47:29.84ID:c4QxGie20 顔真っ赤な人はクスクスどころかドン引きされてるみたいだけどねw
607デフォルトの名無しさん (オッペケ Sre1-ywjO)
2023/02/18(土) 17:27:32.13ID:GQ7TKK8Hr 小杉の煽りが下手すぎてつまらん
608デフォルトの名無しさん (オイコラミネオ MM91-4mn0)
2023/02/18(土) 22:16:29.02ID:tx6k3oAyM >>563
unorderd_map のテストプログラムを作り、デバッガのステップ実行で、
ソースを調査することを進めます。デバッガを併用すると、単純にテキスト
エディタでソースを眺めるより楽です。
わざとrehashされる条件を作っておいて、*it が返すポインタが変化してないことを
確認したりもしてみてください。
unorderd_map のテストプログラムを作り、デバッガのステップ実行で、
ソースを調査することを進めます。デバッガを併用すると、単純にテキスト
エディタでソースを眺めるより楽です。
わざとrehashされる条件を作っておいて、*it が返すポインタが変化してないことを
確認したりもしてみてください。
609デフォルトの名無しさん (オイコラミネオ MM91-4mn0)
2023/02/18(土) 22:20:44.13ID:tx6k3oAyM >>608
誤: ソースを調査することを進めます。
正: ソースを調査することを薦めます。
誤: わざとrehashされる条件を作っておいて、*it が返すポインタが変化してないことを
正: わざとrehashされる条件を作っておいて、&*it が返すポインタが変化してないことを
unorderd_map<K,V>::iterator it に対して *it が V 型、&*it が V* 型ですね、確か。
誤: ソースを調査することを進めます。
正: ソースを調査することを薦めます。
誤: わざとrehashされる条件を作っておいて、*it が返すポインタが変化してないことを
正: わざとrehashされる条件を作っておいて、&*it が返すポインタが変化してないことを
unorderd_map<K,V>::iterator it に対して *it が V 型、&*it が V* 型ですね、確か。
610デフォルトの名無しさん (スップ Sd03-ivXK)
2023/02/19(日) 01:04:05.04ID:j1lo6n64d 警告警察
goto警察
例外警察
いろいろいるね
goto警察
例外警察
いろいろいるね
611デフォルトの名無しさん (ワッチョイ 755f-rVJW)
2023/02/19(日) 02:44:27.50ID:XBUFkCxR0 本題から逸れた細かいことばかり言う人って他人から相談されなくなるよね
とりあえず本題に触れてあげたほうがいいと思う
とりあえず本題に触れてあげたほうがいいと思う
612デフォルトの名無しさん (オッペケ Sre1-/VjF)
2023/02/20(月) 10:46:49.72ID:4EtRnxBTr >>607
小杉?
小杉?
613デフォルトの名無しさん (アウアウエー Sa13-o4eO)
2023/02/20(月) 21:38:28.53ID:bUrAUmQja614デフォルトの名無しさん (ワッチョイ 1bba-/+FQ)
2023/02/20(月) 23:51:57.53ID:7qph/rf50 >>610
警察警察もじきにあらわれるでしょう
警察警察もじきにあらわれるでしょう
615デフォルトの名無しさん (スップ Sd03-f8s2)
2023/02/21(火) 06:19:53.28ID:lGumlqGfd >>613
なんで?
なんで?
616デフォルトの名無しさん (ワッチョイ 23ad-TXHw)
2023/02/23(木) 12:36:30.12ID:v5/05dNG0 >>613
セーブ警察(定期的に保存しない者を取り締まる人)ですね
セーブ警察(定期的に保存しない者を取り締まる人)ですね
617デフォルトの名無しさん (ワッチョイ 7a28-SAq/)
2023/02/25(土) 09:42:29.51ID:EkXmct6Y0 >>616
西部警察が東部を取り締まるみたいなロジック何それ……
西部警察が東部を取り締まるみたいなロジック何それ……
618デフォルトの名無しさん (ワッチョイ b17c-SWHG)
2023/02/25(土) 10:26:54.98ID:+hyOJw/l0 まともなエディタなら自動セーブ機能くらいあるだろ
メモ帳で開発してんの?
メモ帳で開発してんの?
619デフォルトの名無しさん (ワッチョイ daad-OFS/)
2023/02/25(土) 10:42:44.98ID:FxeL/Fyd0 池袋駅は東口に西武デパートあるから問題ない
そして西口に東武
そして西口に東武
620デフォルトの名無しさん (ワッチョイ 7a28-SAq/)
2023/02/25(土) 12:32:14.92ID:EkXmct6Y0 質問なのですが<random>の疑似乱数クラス(いっぱいある)って共通の基底クラスとかインターフェースとか無
いの?
乱数のseedをプログラムの中で1回だけ与えて初期化した疑似乱数オブジェクトを
関数foo()に渡したりして使いまわしたいのだけどfoo()は特定の疑似乱数クラスに依存させたくないという場合、
foo()を疑似乱数クラスTを受け取るテンプレートで実装するとか自作のインターフェースで疑似乱数クラスをwrapする以外に他無し?
それともそもそもそういうことはすべきではない(関数の中で都度乱数のseedをプログラムの中で1回だけ与えて初期化した疑似乱数オブジェクトを作れ
と神はお命じなのやろうか……
いの?
乱数のseedをプログラムの中で1回だけ与えて初期化した疑似乱数オブジェクトを
関数foo()に渡したりして使いまわしたいのだけどfoo()は特定の疑似乱数クラスに依存させたくないという場合、
foo()を疑似乱数クラスTを受け取るテンプレートで実装するとか自作のインターフェースで疑似乱数クラスをwrapする以外に他無し?
それともそもそもそういうことはすべきではない(関数の中で都度乱数のseedをプログラムの中で1回だけ与えて初期化した疑似乱数オブジェクトを作れ
と神はお命じなのやろうか……
621デフォルトの名無しさん (ワッチョイ 7a28-SAq/)
2023/02/25(土) 12:35:52.57ID:EkXmct6Y0 訂正orz、
誤: 自作のインターフェースで疑似乱数クラスをwrapする
正: 自作のインターフェースで疑似乱数クラスとDistributionクラスをセットでwrapする
<random>はテンプレート全振りすぎてオブジェクト指向的でない
ヤヴァイ……
誤: 自作のインターフェースで疑似乱数クラスをwrapする
正: 自作のインターフェースで疑似乱数クラスとDistributionクラスをセットでwrapする
<random>はテンプレート全振りすぎてオブジェクト指向的でない
ヤヴァイ……
622デフォルトの名無しさん (ワッチョイ 76f2-l+fH)
2023/02/25(土) 12:52:10.86ID:k1cc/WLc0623デフォルトの名無しさん (ワッチョイ 0d01-PJrl)
2023/02/25(土) 13:02:15.45ID:sAnrfOr80 >>620
>関数foo()に渡したりして使いまわしたいのだけど
>foo()は特定の疑似乱数クラスに依存させたくないという場合、
foo()を関数テンプレートにし疑似乱数クラスをテンプレート引数とする
じゃだめなの?
>関数foo()に渡したりして使いまわしたいのだけど
>foo()は特定の疑似乱数クラスに依存させたくないという場合、
foo()を関数テンプレートにし疑似乱数クラスをテンプレート引数とする
じゃだめなの?
624デフォルトの名無しさん (ワッチョイ 7a28-SAq/)
2023/02/25(土) 13:06:02.14ID:EkXmct6Y0 >foo()を関数テンプレートにし疑似乱数クラスをテンプレート引数とする
>じゃだめなの?
通常はそれでも良いが
foo()が1万行ある関数だったとしてヘッダファイルに書くのかっていうか、
なんで疑似乱数を使うことと、書き方がテンプレートに制限されてしまうことが相関されねばならないのか
疑問に思わないのかそうか、、、
>じゃだめなの?
通常はそれでも良いが
foo()が1万行ある関数だったとしてヘッダファイルに書くのかっていうか、
なんで疑似乱数を使うことと、書き方がテンプレートに制限されてしまうことが相関されねばならないのか
疑問に思わないのかそうか、、、
625デフォルトの名無しさん (ワッチョイ 7a28-SAq/)
2023/02/25(土) 13:19:38.23ID:EkXmct6Y0 んまー現実解としてはどうせstd::mt19937をstd::random_deviceで初期化するような使い方しかしないのだろうから
using rand_t = std::random_device;
using psrand_t = std::mt19937;
class FooTest : public ::testing::Test {
protected:
psrand_t m_psrand;
public:
FooTest() : m_psrand(rand_t()()) { }
};
ぐらいで過度の抽象化はやめておいた方が良いのかもしれん……
(別名にする、程度にしておけば疑似乱数クラスの選択とDistributionクラスの選択を分離できる
using rand_t = std::random_device;
using psrand_t = std::mt19937;
class FooTest : public ::testing::Test {
protected:
psrand_t m_psrand;
public:
FooTest() : m_psrand(rand_t()()) { }
};
ぐらいで過度の抽象化はやめておいた方が良いのかもしれん……
(別名にする、程度にしておけば疑似乱数クラスの選択とDistributionクラスの選択を分離できる
626デフォルトの名無しさん (ワッチョイ 615f-+MOc)
2023/02/25(土) 13:21:23.18ID:a4UZTu4a0 標準ライブラリのテンプレートもみんなヘッダに書いてるんだしいらない疑問だと思うが……
使ったことは無いけど、気にするならC++20モジュールとして書いてみるといいかもしれない
使ったことは無いけど、気にするならC++20モジュールとして書いてみるといいかもしれない
627デフォルトの名無しさん (ワッチョイ 0d01-PJrl)
2023/02/25(土) 13:25:58.19ID:sAnrfOr80628デフォルトの名無しさん (ワッチョイ 9d5f-XTx3)
2023/02/25(土) 15:15:43.98ID:0MW4CaX30629デフォルトの名無しさん (ワッチョイ 2e9a-0raA)
2023/02/25(土) 19:34:51.11ID:pcyV0/Fb0630デフォルトの名無しさん (テテンテンテン MM0e-Z5QA)
2023/02/26(日) 06:44:53.09ID:wlYkLcj5M631デフォルトの名無しさん (ワッチョイ b6d2-xnN+)
2023/02/26(日) 07:48:51.16ID:Gr0Cvu5K0632デフォルトの名無しさん (ワッチョイ b6d2-xnN+)
2023/02/26(日) 07:49:07.86ID:Gr0Cvu5K0 _engine
633デフォルトの名無しさん (ワッチョイ 9d5f-XTx3)
2023/02/27(月) 00:29:36.28ID:gYXyoIsy0 _eringi
634デフォルトの名無しさん (アウアウエー Sa02-mjxs)
2023/02/27(月) 17:17:04.08ID:3MgFEhuya サンプラザ中野が亡くなったのはびっくり
635デフォルトの名無しさん (アウアウウー Sa39-EsFZ)
2023/02/27(月) 18:32:42.37ID:uiaf09PPa >>634
どこ情報?
どこ情報?
636デフォルトの名無しさん (ワッチョイ 9501-ZYAP)
2023/02/28(火) 06:11:10.06ID:gPlIR4bB0 会議で「テレメトリーの結果、オートコレクトをオフにしているユーザーさんが多い、どうしたら良いか」ということを話し合った。
「小文字にする方法」を解説するページを作っておけば儲かるぞ。
「小文字にする方法」を解説するページを作っておけば儲かるぞ。
637デフォルトの名無しさん (スップ Sdda-5jsL)
2023/02/28(火) 07:28:04.38ID:K4SOyNvXd どこの誤爆だろう
638デフォルトの名無しさん (スッップ Sdfa-bCJ8)
2023/02/28(火) 07:34:53.09ID:3dbS5K+md くんさんついてない方の事では?
639デフォルトの名無しさん (アウウィフ FF39-mjxs)
2023/02/28(火) 14:17:12.73ID:8Tfx2t07F https://youtu.be/OC1PvKjgREo
C++沼へようこそ
C++沼へようこそ
640デフォルトの名無しさん (スップ Sdfa-5jsL)
2023/02/28(火) 15:20:52.24ID:dNNgH11Kd g++のu8クソ過ぎワロタ
641デフォルトの名無しさん (ワッチョイ 5328-zbnh)
2023/03/04(土) 12:36:42.18ID:Rl7ZOdOT0 stdexceptの各例外の使い分けがわかりません
まず
・エラーは「実行時エラー (runtime error) 」と「論理エラー (logic error) 」との2つに大別される。
とのことでinvalid_argumentはlogic_errorの派生クラスみたいなのですが
foo()に不正な引数が渡る状況はたいてい呼び出し元bar()の実行時エラーなわけじゃん?
しかしそれだと論理エラーの出る幕が一切なくなるので、
foo()視点でfoo()に不正な引数が渡る状況は論理エラーである、とみなす立場が考えられるますが、
しかしfoo()が投げた例外を補足する箇所はfoo()の外なわけで、そんなローカル視点知ったことか、となるわけじゃん?
もうstdexceptのうちでユザープログラムから投げるのはruntime_error(<適当なメッセージ>)だけで良い?
まず
・エラーは「実行時エラー (runtime error) 」と「論理エラー (logic error) 」との2つに大別される。
とのことでinvalid_argumentはlogic_errorの派生クラスみたいなのですが
foo()に不正な引数が渡る状況はたいてい呼び出し元bar()の実行時エラーなわけじゃん?
しかしそれだと論理エラーの出る幕が一切なくなるので、
foo()視点でfoo()に不正な引数が渡る状況は論理エラーである、とみなす立場が考えられるますが、
しかしfoo()が投げた例外を補足する箇所はfoo()の外なわけで、そんなローカル視点知ったことか、となるわけじゃん?
もうstdexceptのうちでユザープログラムから投げるのはruntime_error(<適当なメッセージ>)だけで良い?
642デフォルトの名無しさん (ワッチョイ 5328-zbnh)
2023/03/04(土) 13:04:37.77ID:Rl7ZOdOT0 だいたい自己解決しましたサーセン、
1. cassertにおけるassert()条件に書くような、設計上絶対起こり得ないやつ(起きたらバグ)はlogic_error
2. 上記以外(設計上起き得ないことを保証しかねる不整合)はruntime_error
で、さらに細分化可能な場合(明らかに派生クラスにあてはまるやつ)は派生クラスにする
例外を補足する個所では、logic_error& eかruntime_error& eで捕捉する(そうすれば派生クラスも捕捉できうる
でFA?
1. cassertにおけるassert()条件に書くような、設計上絶対起こり得ないやつ(起きたらバグ)はlogic_error
2. 上記以外(設計上起き得ないことを保証しかねる不整合)はruntime_error
で、さらに細分化可能な場合(明らかに派生クラスにあてはまるやつ)は派生クラスにする
例外を補足する個所では、logic_error& eかruntime_error& eで捕捉する(そうすれば派生クラスも捕捉できうる
でFA?
643デフォルトの名無しさん (オイコラミネオ MM15-zbnh)
2023/03/04(土) 13:33:21.64ID:MZ+gWi90M ソケットプログラミングがマジ解らん。
コネクトするコード書いてもエラー起こすし、バインドしてみたらエラー返してきてどうしようもないし
どうすればインだー。
コネクトするコード書いてもエラー起こすし、バインドしてみたらエラー返してきてどうしようもないし
どうすればインだー。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 日本の立場説明へ…外務省局長が北京到着 “台湾有事”首相答弁に中国反発 ★3 [煮卵★]
- 国内ホテル、既にキャンセルも 訪日客関連業界、事態見守る ★2 [蚤の市★]
- NHK、受信料の未払い世帯に督促強化へ 民事手続きの新組織を設置 差し押さえなどの強制執行も [1ゲットロボ★]
- 【日本大使館】中国在留邦人は安全確保を [ぐれ★]
- 【外交】日中関係悪化、長期化の様相 2012年には自動車輸出80%減も ロイター★2 [1ゲットロボ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 「稼ぐのよ!」高市が電話でガチャ切り😱鈴木農水大臣に伝えたこと… [993451824]
- 【悲報】女性初の総理大臣 高市早苗氏、安倍晋三さんが積み上げてきたものを一瞬でぶっ壊してしまう😱wwwwwwwwwwwwwwwwwwwwww [871926377]
- 愛国者ナザレンコ「左翼は自己中な差別主義者で偽善者。日本人ファーストを叩いておいて台湾人が死んでも知らな〜いでしょ。中露の犬」 [856698234]
- トランプ聖帝「中国を倒すのではなく協力することでアメリカは強くなる!MAGA!」 高市どうすんのこれ… [878970802]
- 【悲報】有名ウヨ論客、「現実的に考えて中国と仲直りするしかなくね?」と言ったら野良ウヨから総叩きにあう [856698234]
- 【高市悲報】経団連会長、高市と面談「おい!ちゃんと中国と対話しろよ!😨」 [359965264]
