!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を3行貼り付けること
次スレは>>980が立てること
無理なら細かく安価指定
※前スレ
C++相談室 part161
https://mevius.5ch.net/test/read.cgi/tech/1653135809/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
C++相談室 part162
■ このスレッドは過去ログ倉庫に格納されています
1sage (ワッチョイ fbf0-ofdD)
2022/10/31(月) 14:29:35.57ID:J5sgTSch0552デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/06(火) 11:12:56.86ID:63yxghiR0 今や絶滅危惧種となったテキトーこくの嫌いな人
553デフォルトの名無しさん (ワッチョイ ce01-Znoa)
2022/12/06(火) 13:12:15.09ID:9i6eYS/u0 そういう人ここは比較的多いでしょ?
554デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/06(火) 13:47:59.27ID:63yxghiR0 配列がハッシュだなんて裏も取らずに信じちまうやつもか?
555デフォルトの名無しさん (アウアウウー Sa08-+hgW)
2022/12/06(火) 14:38:33.85ID:mFLMdD4Ga テーブルのアクセスに使う添字はインデックス?キー?
556デフォルトの名無しさん (スッップ Sd70-AXrT)
2022/12/06(火) 14:47:42.28ID:iX2JPZR5d サブスクリプト
557デフォルトの名無しさん (アウアウウー Sab5-QZbE)
2022/12/06(火) 15:21:19.75ID:RihiShBFa >>554
まだいたのかよ、よほど悔しかったんだなw
まだいたのかよ、よほど悔しかったんだなw
558デフォルトの名無しさん (スッップ Sd70-AXrT)
2022/12/06(火) 15:50:10.05ID:iX2JPZR5d 信じてたやつが返事してるな
今度こそ別人ではあるまい
今度こそ別人ではあるまい
559デフォルトの名無しさん (スッップ Sd70-AXrT)
2022/12/06(火) 15:56:04.19ID:iX2JPZR5d HDDを指さしてメモリと言ってたやつのほうがまだマシ
記憶装置という点でそんなに大外れではないからな
配列を指さしてハッシュと言うやつは
アメリカザリガニを指さして飛行機と言うようなもんで
どうやっても擁護不可能
記憶装置という点でそんなに大外れではないからな
配列を指さしてハッシュと言うやつは
アメリカザリガニを指さして飛行機と言うようなもんで
どうやっても擁護不可能
560デフォルトの名無しさん (アウアウウー Sab5-QZbE)
2022/12/06(火) 16:49:16.67ID:RihiShBFa >>496 にレスできないクズ乙w
561デフォルトの名無しさん (スッップ Sd94-bEFD)
2022/12/06(火) 17:07:58.34ID:uWr4N4pQd 美味しいという共通点くらいしか
562デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/06(火) 18:13:06.65ID:63yxghiR0 ここは技術板
配列とハッシュを混同すること以上の恥もクズも存在し得ない
配列とハッシュを混同すること以上の恥もクズも存在し得ない
563デフォルトの名無しさん (アウアウウー Sab5-QZbE)
2022/12/06(火) 18:23:59.19ID:qiG38keca 本人謝ってるのにしつこく絡むのは技術云々の前に人としてどうなの?
564デフォルトの名無しさん (ワッチョイ 30ad-4FAg)
2022/12/06(火) 18:57:26.14ID:6Wvozz0/0 だれも謝罪してないし、配列もメモリマネージャーからみればハッシュだし
565デフォルトの名無しさん (アウアウウー Sab5-QZbE)
2022/12/06(火) 19:27:21.71ID:qiG38keca566デフォルトの名無しさん (ワッチョイ 30ad-4FAg)
2022/12/06(火) 19:41:58.07ID:6Wvozz0/0 EASTLは、unordered_mapに相当するクラスを独自実装しhash_mapと呼んできた経緯がある
Perlの専門用語が他言語に持ち込まれた分りやすい例といえるだろう
Perlの専門用語が他言語に持ち込まれた分りやすい例といえるだろう
567デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/06(火) 21:47:51.22ID:63yxghiR0 >>565
何? 謝罪したらこんなに恥をかかずに済んだってとこに、まだすがりたいの?
そりゃそうだろうね、技術板で最大の恥をさらしたんだからwww
おまえ悪態つきすぎたんだよ、こっちも悪意に満ちた対応するからな
もう覚悟するしかねえんだよ、おまえw
何? 謝罪したらこんなに恥をかかずに済んだってとこに、まだすがりたいの?
そりゃそうだろうね、技術板で最大の恥をさらしたんだからwww
おまえ悪態つきすぎたんだよ、こっちも悪意に満ちた対応するからな
もう覚悟するしかねえんだよ、おまえw
568デフォルトの名無しさん (ササクッテロラ Sp5f-w5YM)
2022/12/06(火) 21:59:01.18ID:Pw6mR/Vsp 粘着恥ずかしいw
569デフォルトの名無しさん (ワッチョイ c001-g9pY)
2022/12/06(火) 22:07:01.02ID:iea0dAEs0 C++使いは、その程度のことで粘着しない。
なぜなら、C++使いは爺だから。
なぜなら、C++使いは爺だから。
570デフォルトの名無しさん (ワッチョイ ecda-/mMf)
2022/12/06(火) 22:59:17.33ID:wE68yyZV0 >>519
あんま細かいこと拘るとハゲるからな
あんま細かいこと拘るとハゲるからな
571デフォルトの名無しさん (ワッチョイ ecda-/mMf)
2022/12/06(火) 23:00:17.17ID:wE68yyZV0 レス誤爆メンゴ
572デフォルトの名無しさん (オッペケ Sr5f-3U9L)
2022/12/06(火) 23:03:05.74ID:id7qJpRpr 爺こそ粘着するのでは?
暇だから
暇だから
573デフォルトの名無しさん (ワッチョイ c001-g9pY)
2022/12/06(火) 23:07:03.02ID:iea0dAEs0 インテリ爺は粘着される方だろ。
574デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/07(水) 06:03:51.56ID:BYUaD+1v0 unordered_mapはハッシュを使うというだけで、それ自体がハッシュだという主張は誤り
好意的に解釈してもデータメンバと継承を混同するようなもの
好意的に解釈してもデータメンバと継承を混同するようなもの
575デフォルトの名無しさん (スッップ Sd94-bEFD)
2022/12/07(水) 07:45:49.40ID:mMrpdU8md >>571
メンゴって…
メンゴって…
576デフォルトの名無しさん (スッップ Sd70-YdaX)
2022/12/07(水) 11:52:13.93ID:adYZ5td8d まだハッシュ言ってるのか
Parl界隈で使ってる言い回しなんだねこのスレで使うなら合ってなかったねで終わる話やろ
Parl界隈で使ってる言い回しなんだねこのスレで使うなら合ってなかったねで終わる話やろ
577デフォルトの名無しさん (ワッチョイ ce01-Znoa)
2022/12/07(水) 11:59:24.24ID:O14sy2T20578デフォルトの名無しさん (スププ Sd70-sdih)
2022/12/07(水) 13:47:36.67ID:e45EJ0mMd 粘着自体は無視スルーすれば良いからどうでもいいわ
それより将来鯖ログ開示されたとき
誰と誰が自演だったかの答え合わせはしてみたい
それより将来鯖ログ開示されたとき
誰と誰が自演だったかの答え合わせはしてみたい
579デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/07(水) 14:06:40.54ID:BYUaD+1v0580デフォルトの名無しさん (ワッチョイ ce01-Znoa)
2022/12/07(水) 14:09:36.34ID:O14sy2T20 病的だな
581デフォルトの名無しさん (アウアウウー Sa08-OZMj)
2022/12/07(水) 14:42:14.43ID:FsTyICUTa 誰も興味ないわ
582デフォルトの名無しさん (アウアウウー Sab5-QZbE)
2022/12/07(水) 15:26:40.34ID:Xzjw4n/la >>576
> Parl界隈で使ってる言い回しなんだねこのスレで使うなら合ってなかったねで終わる話やろ
それを言ってるならまだ分からないでもないけど 配列 ≠ ハッシュ なんて本人謝ってるのにしつこく絡み続けてる
そんなことでしかマウント取れないんだろうけどマジでなんかの病気だと思うわ
> Parl界隈で使ってる言い回しなんだねこのスレで使うなら合ってなかったねで終わる話やろ
それを言ってるならまだ分からないでもないけど 配列 ≠ ハッシュ なんて本人謝ってるのにしつこく絡み続けてる
そんなことでしかマウント取れないんだろうけどマジでなんかの病気だと思うわ
583デフォルトの名無しさん (アウアウウー Sa08-g9pY)
2022/12/07(水) 15:34:18.88ID:4LPWB+Rga ハゲの上塗り
584デフォルトの名無しさん (ササクッテロラ Sp5f-w5YM)
2022/12/07(水) 15:34:20.23ID:HdWAA0Dip いいから相手にしない
もう飽きたよ
もう飽きたよ
585デフォルトの名無しさん (スッップ Sd70-YdaX)
2022/12/07(水) 15:42:19.49ID:adYZ5td8d586デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/07(水) 17:13:38.78ID:BYUaD+1v0 謝るのに>>313のような態度で許されるとでも思っているのか
587デフォルトの名無しさん (ワッチョイ e75f-UplN)
2022/12/07(水) 19:28:34.64ID:cizNPWpb0 まーだやってるw
588デフォルトの名無しさん (エムゾネ FF70-NMmp)
2022/12/07(水) 20:15:26.67ID:X5O9NNHYF 病気だよ
589デフォルトの名無しさん (ワッチョイ aa01-QZbE)
2022/12/07(水) 20:48:27.45ID:0xPH+d9p0 そもそも >>313 は Perl での呼び方の話で 配列 ≠ ハッシュ の話じゃないから謝罪なんてしてない
わざとなのか混乱してるのか知らんけど病的なのは間違いない
わざとなのか混乱してるのか知らんけど病的なのは間違いない
590デフォルトの名無しさん (ワッチョイ 0acf-L4s+)
2022/12/08(木) 08:19:28.46ID:/GcWMRnI0 >>576
そこにPerl界隈でも使ってないとか言う奴が現れて無駄に反論を呼んだ。
そこにPerl界隈でも使ってないとか言う奴が現れて無駄に反論を呼んだ。
591デフォルトの名無しさん (ワッチョイ 30ad-4FAg)
2022/12/08(木) 08:34:20.66ID:d3Fi/Jhx0 今日はParl Harbor攻撃から81年目に当たるらしい
592デフォルトの名無しさん (アウアウウー Sab5-QZbE)
2022/12/08(木) 10:11:41.48ID:JnPWza2ja >>590
とりあえずそれはなんとか収まったけどその後 配列 ≠ ハッシュ 君が粘着しだした
とりあえずそれはなんとか収まったけどその後 配列 ≠ ハッシュ 君が粘着しだした
593デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/08(木) 10:26:23.30ID:7N/fyoNc0 煽り耐性なさすぎなハッシュ君
ちょっとカマかけると元気にお返事しやがんのw
終わりにしたいなら反応しなきゃいいのに
わざわざ出てくるマゾ野郎w
ちょっとカマかけると元気にお返事しやがんのw
終わりにしたいなら反応しなきゃいいのに
わざわざ出てくるマゾ野郎w
594デフォルトの名無しさん (テテンテンテン MM34-QZbE)
2022/12/08(木) 12:19:06.63ID:qJNUqX4GM ハッシュの話をするやつはコテハン付けろ。NGするから。
コテハン無しでハッシュを話題にするのは禁止な。
コテハン無しでハッシュを話題にするのは禁止な。
595デフォルトの名無しさん (アウアウウー Sab5-QZbE)
2022/12/08(木) 12:45:20.88ID:JnPWza2ja カマなんてかけてもないのに頓珍漢レスしてるキチに言われてもねw
596デフォルトの名無しさん (ワッチョイ 9fc2-He5u)
2022/12/08(木) 13:41:50.14ID:7N/fyoNc0 反応してる時点でおまえ悔しさがにじみ出てるからw
こっちは誰が何と言おうと絶対に揺るがない基礎理論に基づいているから安心してアホにできてオモロイだけ
こっちは誰が何と言おうと絶対に揺るがない基礎理論に基づいているから安心してアホにできてオモロイだけ
597デフォルトの名無しさん (ワッチョイ 30ad-4FAg)
2022/12/08(木) 14:56:30.96ID:d3Fi/Jhx0 「C++」が「Java」を抜いて3位に--12月のTIOBEプログラミング言語ランキング - ZDNet Japan
https://japan.zdnet.com/article/35197053/
Liam Tung (Special to ZDNet.com) 翻訳校正: 編集部 2022-12-07 11:32
https://japan.zdnet.com/article/35197053/
Liam Tung (Special to ZDNet.com) 翻訳校正: 編集部 2022-12-07 11:32
598デフォルトの名無しさん (ワッチョイ 721f-a1Dg)
2022/12/08(木) 15:02:28.31ID:/H4Yp5E/0 今更流行る理由があるのか
AI?
AI?
599デフォルトの名無しさん (ワッチョイ df24-Ah0T)
2022/12/08(木) 16:44:45.46ID:iuNweycO0 多次元配列クラスのSTL入りもまだなのにAIwwwwwwwwwwwww
600デフォルトの名無しさん (ワッチョイ d8cf-R4o2)
2022/12/08(木) 16:45:49.30ID:MKGRO6qH0 >C++の人気が高まる一方で、Javaの人気は低下している
601デフォルトの名無しさん (ササクッテロラ Spd7-w5YM)
2022/12/08(木) 18:04:41.79ID:F9H67G14p 今更メモリー管理したくないよぉ
602デフォルトの名無しさん (ワッチョイ 849c-QZbE)
2022/12/08(木) 18:10:36.30ID:z+sTXcJV0603はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9e3e-7kHv)
2022/12/08(木) 18:26:03.92ID:FVxzWUbn0 >>601
したくないけどする必要があるときには C++ くらいの機構があるとやりやすいんじゃろ。 知らんけど。
したくないけどする必要があるときには C++ くらいの機構があるとやりやすいんじゃろ。 知らんけど。
604デフォルトの名無しさん (ワッチョイ 3ff0-HF5l)
2022/12/08(木) 18:33:45.11ID:lUjyKwZV0 デストラクタが無い言語とか論外じゃね?
605デフォルトの名無しさん (アウアウウー Sab5-QZbE)
2022/12/08(木) 19:14:03.24ID:ZTTdli19a 基礎理論w
606デフォルトの名無しさん (ワッチョイ c001-g9pY)
2022/12/08(木) 19:42:03.83ID:pXyaJjcm0 欧米の知的な人たちの間でC++が流行ってるんだろ。
607デフォルトの名無しさん (アウアウウー Sa08-+hgW)
2022/12/08(木) 19:43:41.79ID:pfHF/B3ga したくないというポイントはだいたい稼げるところだな
608デフォルトの名無しさん (ワッチョイ ecda-/mMf)
2022/12/08(木) 20:48:03.13ID:+R/2mzDC0 インテリ
ジェンス
ジェンス
609デフォルトの名無しさん (アウアウウー Sa6b-USyc)
2022/12/10(土) 04:54:52.93ID:NVs+qJ8Ua まぁゲーム開発はいつまでもC++だからなぁ。ついでC#
610デフォルトの名無しさん (ワッチョイ e701-wOZi)
2022/12/10(土) 12:17:36.89ID:c/3U+eWJ0 UIはその時の流行りの言語で書くけど戦術ロジックだけは絶対にC++で書きたい
611デフォルトの名無しさん (ササクッテロラ Sp1b-Xf+d)
2022/12/10(土) 12:26:15.44ID:z6yEzr6lp C#って、むしろ大規模になって来ると意味不明なエラーが出て破綻しないか?
612デフォルトの名無しさん (ブーイモ MM8b-CGXW)
2022/12/10(土) 14:59:01.80ID:mMjCV03FM C#が悪いわけではないけど、メモリー解放とかルーズにしたままある程度コード書けちゃうからね、、、
大規模になってくると無頓着だったメモリー解放が火を吹く感じはある
C++はそんなルーズな書き方してたらすぐ破綻するから、そういうコードは多くないけど初期の実装には多くの時間がかかる感じ
大規模になってくると無頓着だったメモリー解放が火を吹く感じはある
C++はそんなルーズな書き方してたらすぐ破綻するから、そういうコードは多くないけど初期の実装には多くの時間がかかる感じ
613デフォルトの名無しさん (アウアウウー Sa6b-SJNI)
2022/12/10(土) 15:38:10.95ID:Sts37KEXa c#のプロジェクトはなんか疎結合になっとらんこと多いわ
614はちみつ餃子 ◆8X2XSCHEME (ワッチョイ ff3e-3TNT)
2022/12/10(土) 17:52:23.34ID:brInbnm70 プロジェクトを分割しようとしてもどうにも分離しきれない絡み合った部分ってあると思うんよ。
そういうときは機能別に分割するというだけではなく絡み合った部分は絡み合ったものとしてレイヤとして切り分けると上手くいく。
面倒くさいところは一か所に押し込めて横に切る感じ。
C# のプロジェクトはレイヤで分ける意識が希薄で縦割りばかりするので分離しきれない結合が全体にうっすらと残ってる感じ。
密結合というほどではないけど全体にうっすらなので、面倒くさい箇所が一か所にまとまってるよりしんどい。
というのが私の印象。 C# のことはあんまり知らんけど。
そういうときは機能別に分割するというだけではなく絡み合った部分は絡み合ったものとしてレイヤとして切り分けると上手くいく。
面倒くさいところは一か所に押し込めて横に切る感じ。
C# のプロジェクトはレイヤで分ける意識が希薄で縦割りばかりするので分離しきれない結合が全体にうっすらと残ってる感じ。
密結合というほどではないけど全体にうっすらなので、面倒くさい箇所が一か所にまとまってるよりしんどい。
というのが私の印象。 C# のことはあんまり知らんけど。
615デフォルトの名無しさん (オイコラミネオ MM7b-GD9R)
2022/12/10(土) 18:06:38.22ID:7p0k8251M616デフォルトの名無しさん (ワッチョイ 675f-k8RX)
2022/12/10(土) 20:25:28.70ID:PM5iwksI0 DのUpdateみると1000ms待たないと終わらないように見えるけどそれはいいの?
617ハノン ◆QZaw55cn4c (US 0H9b-JdnI)
2022/12/10(土) 20:33:03.87ID:6SBPs3AFH >>614
トップダウン、ボトムアップ、両面から書いていったとき、それが出会うところでグダグダなその場しのぎのコードに書かざるを得ない経験はありますね
トップダウン、ボトムアップ、両面から書いていったとき、それが出会うところでグダグダなその場しのぎのコードに書かざるを得ない経験はありますね
618デフォルトの名無しさん (ブーイモ MMcf-ejuF)
2022/12/10(土) 20:33:20.22ID:MWcOm8HwM #include <iostream>
int main() {
const int i = 1;
++*const_cast<int*>(&i);
std::cout << i;
}
何が表示されると思う?
違法?合法?
https://wandbox.org/permlink/57h9V6JX7fJes663
int main() {
const int i = 1;
++*const_cast<int*>(&i);
std::cout << i;
}
何が表示されると思う?
違法?合法?
https://wandbox.org/permlink/57h9V6JX7fJes663
619デフォルトの名無しさん (ワッチョイ 4732-ptKG)
2022/12/10(土) 20:55:46.09ID:G20+9FPP0 >>618
const なオブジェクトに書き込むのは許されない (未定義) が型の上で const を外すだけならアリ。 つまり ++ を除けば合法だが ++ のせいで違法。
const なオブジェクトに書き込むのは許されない (未定義) が型の上で const を外すだけならアリ。 つまり ++ を除けば合法だが ++ のせいで違法。
620デフォルトの名無しさん (アウアウウー Sa6b-k8RX)
2022/12/10(土) 21:19:19.36ID:+Ttg8yU5a int main() {
const int i = 1;
int*j =const_cast<int*>(&i);
*j=2;
std::cout << &i<<" "<< j<<std::endl;
std::cout<<i <<" "<< *j;
}
https://wandbox.org/permlink/DC1E3ycea3UtdBAI
0x7ffc53e76e1c 0x7ffc53e76e1c
1 2
上のやつちょっといじってみた
アドレスの値同じなのに値違うんだけどなんでなんだろ
const int i = 1;
int*j =const_cast<int*>(&i);
*j=2;
std::cout << &i<<" "<< j<<std::endl;
std::cout<<i <<" "<< *j;
}
https://wandbox.org/permlink/DC1E3ycea3UtdBAI
0x7ffc53e76e1c 0x7ffc53e76e1c
1 2
上のやつちょっといじってみた
アドレスの値同じなのに値違うんだけどなんでなんだろ
621デフォルトの名無しさん (ワッチョイ 477c-eoXr)
2022/12/10(土) 21:23:07.71ID:QKVQj6nE0 そりゃ未定義動作だもの
鼻から悪魔が出なかっただけありがたいと思え
鼻から悪魔が出なかっただけありがたいと思え
622デフォルトの名無しさん (ワッチョイ 8710-bPD3)
2022/12/10(土) 21:57:24.92ID:lr6mtoK80 その処理系ではconst_castはコンパイラをごまかす宣言ではなく&iというオブジェクトを作ってるんだろう
623デフォルトの名無しさん (ワッチョイ a769-3TNT)
2022/12/10(土) 22:07:20.11ID:qktiUlCS0 コンパイル時にiが1に置き換えられてるだけだろう
624デフォルトの名無しさん (ワッチョイ 8710-bPD3)
2022/12/10(土) 22:23:55.76ID:lr6mtoK80 それだけじゃ&iの動作について言及が足りない感じ
625デフォルトの名無しさん (ワッチョイ df28-GD9R)
2022/12/10(土) 22:36:19.38ID:HtRCvZl/0 多分
const int i = 1;
を受けた最適化の結果、
std::cout<<i
が
std::cout<<1
という意味のコードになったとかじゃないの
逆アセして調べると良い
const int i = 1;
を受けた最適化の結果、
std::cout<<i
が
std::cout<<1
という意味のコードになったとかじゃないの
逆アセして調べると良い
626デフォルトの名無しさん (ワッチョイ df28-GD9R)
2022/12/10(土) 22:38:11.75ID:HtRCvZl/0 あるいは真にiの値を見たいのなら
...(前半は同じ)...
auto *p = (volatile int*)&i;
cout << i << " " << j << endl;
みたいにするとか?
※ 個人の感想です
...(前半は同じ)...
auto *p = (volatile int*)&i;
cout << i << " " << j << endl;
みたいにするとか?
※ 個人の感想です
627デフォルトの名無しさん (ワッチョイ df28-GD9R)
2022/12/10(土) 22:38:50.72ID:HtRCvZl/0 まつがえたorz
あるいは真にiの値を見たいのなら
...(前半は同じ)...
auto *p = (volatile int*)&i;
cout << *p << " " << j << endl;
みたいにするとか?
※ 個人の感想です
あるいは真にiの値を見たいのなら
...(前半は同じ)...
auto *p = (volatile int*)&i;
cout << *p << " " << j << endl;
みたいにするとか?
※ 個人の感想です
628デフォルトの名無しさん (ワッチョイ 477c-eoXr)
2022/12/10(土) 23:00:40.51ID:QKVQj6nE0 未定義動作をどうしようとコンパイラの自由なんだからそんなもの調べたってしょうがない
ちゃんと書けばいいだけのこと
ちゃんと書けばいいだけのこと
629デフォルトの名無しさん (ワッチョイ 8710-bPD3)
2022/12/10(土) 23:01:50.82ID:lr6mtoK80 既に
std::cout << &i<<" "<< j<<std::endl;
により&iとjが同じ値であることは示されてる
auto *p = (volatile int*)&i;
これでも同じアドレスとして解釈されている(試した)
きっとconst_castに限らずconst領域のアドレスを解釈する時点で
ここのコンパイラは別領域を確保するんだな
std::cout << &i<<" "<< j<<std::endl;
により&iとjが同じ値であることは示されてる
auto *p = (volatile int*)&i;
これでも同じアドレスとして解釈されている(試した)
きっとconst_castに限らずconst領域のアドレスを解釈する時点で
ここのコンパイラは別領域を確保するんだな
630デフォルトの名無しさん (ワッチョイ 477c-eoXr)
2022/12/10(土) 23:07:18.20ID:QKVQj6nE0 そのcoutに出してるコードも含めて未定義動作なんだから出力されるゴミ文字列には何の保証も意味もないぞ
だからちゃんとやれ
だからちゃんとやれ
631デフォルトの名無しさん (ワッチョイ df28-GD9R)
2022/12/10(土) 23:07:19.81ID:HtRCvZl/0632デフォルトの名無しさん (ワッチョイ 8710-bPD3)
2022/12/10(土) 23:34:26.52ID:lr6mtoK80633デフォルトの名無しさん (ワッチョイ df28-GD9R)
2022/12/11(日) 00:20:42.40ID:Pzj62nR+0634デフォルトの名無しさん (ワッチョイ 8710-bPD3)
2022/12/11(日) 00:25:27.26ID:Wb0o85TW0635デフォルトの名無しさん (ワッチョイ 8710-bPD3)
2022/12/11(日) 00:29:21.03ID:Wb0o85TW0 あーごめん>>634は取り消し
636デフォルトの名無しさん (ブーイモ MMcf-ejuF)
2022/12/11(日) 16:42:27.87ID:le6rXKgRM 未定義動作ではいおしまいは思考停止では?
コンパイラの実装を考えてみるのも面白い
コンパイラの実装を考えてみるのも面白い
637デフォルトの名無しさん (ワッチョイ 477c-eoXr)
2022/12/11(日) 17:18:36.24ID:SgVyrwp80 ゴミ捨て場の汚物の配置を面白がる趣味もいいけどそれで宇宙の真理を読み取ったとか言い出されても困るんだわ
638デフォルトの名無しさん (ワッチョイ df01-0RkQ)
2022/12/11(日) 17:28:44.13ID:B9k8N7vL0 特定のコンパイラの挙動が知りたいなら逆アセしろ
仕様が知りたいなら未定義動作
と言うだけの事だろ
仕様が知りたいなら未定義動作
と言うだけの事だろ
639デフォルトの名無しさん (ワッチョイ a701-3npV)
2022/12/11(日) 19:27:20.67ID:vt5XMNwC0 未定義踏んで、たまたま望む動作だった場合に、それを放置するのは危険すぎる
640はちみつ餃子 ◆8X2XSCHEME (ワッチョイ ff3e-3TNT)
2022/12/11(日) 19:44:01.28ID:ftKoc+Hh0 前後の状況との組み合わせでも結果が変わったりするから短いコードで試しても
そのコンパイラでの挙動を知れたとは言えんし……。
そのコンパイラでの挙動を知れたとは言えんし……。
641デフォルトの名無しさん (ワッチョイ 8710-bPD3)
2022/12/12(月) 02:44:59.90ID:m98xyCFn0642デフォルトの名無しさん (オイコラミネオ MM7b-VZV0)
2022/12/12(月) 14:55:49.27ID:P0mM9QsZM vector<string> v; の vを辞書順でソートした場合、string自体はメモリ上に
連続して並ぶが、肝心の文字列バッファは free store 上でバラバラに離れた
位置になるからキャッシュ・ミスし易くなるね。
stroustrup氏はリンクリストがキャッシュミスし易いと言って馬鹿にしていたが、
実際には動的配列(vector)でも大差は無い。
なお、リンクリストでキャッシュミスし易い典型例がソート後の全巡回ループ。
そしてその場合、vectorでもstringのようなメモリ資源ハンドルの場合は
キャッシュミスが免れない。
連続して並ぶが、肝心の文字列バッファは free store 上でバラバラに離れた
位置になるからキャッシュ・ミスし易くなるね。
stroustrup氏はリンクリストがキャッシュミスし易いと言って馬鹿にしていたが、
実際には動的配列(vector)でも大差は無い。
なお、リンクリストでキャッシュミスし易い典型例がソート後の全巡回ループ。
そしてその場合、vectorでもstringのようなメモリ資源ハンドルの場合は
キャッシュミスが免れない。
643デフォルトの名無しさん (オイコラミネオ MM7b-VZV0)
2022/12/12(月) 15:09:17.26ID:P0mM9QsZM >>642
[補足]
そもそも、C++はcopyの代わりのmoveによる高速化を自慢しているが、
それが意味を持つのはstringのようにfree storeのメモリをポインタで持っている
ようなクラスである。
このご自慢のmoveが良く効くクラスTのvector<T>をソートした場合、
free storeの本当の中味のアドレスはソートされないまま。
なので、vectorを全巡回する時には、アドレスが飛びとびになり、キャッシュミス
が起き易い。
[補足]
そもそも、C++はcopyの代わりのmoveによる高速化を自慢しているが、
それが意味を持つのはstringのようにfree storeのメモリをポインタで持っている
ようなクラスである。
このご自慢のmoveが良く効くクラスTのvector<T>をソートした場合、
free storeの本当の中味のアドレスはソートされないまま。
なので、vectorを全巡回する時には、アドレスが飛びとびになり、キャッシュミス
が起き易い。
644デフォルトの名無しさん (ワッチョイ 675f-3TNT)
2022/12/12(月) 15:14:58.58ID:b4gQwKir0 >>642 うんうん。リンクリストにするとキャッスミスし易さがもう少し悪化するね。
645デフォルトの名無しさん (オイコラミネオ MM7b-VZV0)
2022/12/12(月) 15:21:22.44ID:P0mM9QsZM >>644
この例の場合、vectorをlistに変えてもあまり悪化しない。
なぜなら、stringとその文字列バッファが近接したアドレスのfree store
上にallocateされていると期待できるから。
この例の場合、vectorをlistに変えてもあまり悪化しない。
なぜなら、stringとその文字列バッファが近接したアドレスのfree store
上にallocateされていると期待できるから。
646デフォルトの名無しさん (オイコラミネオ MM7b-VZV0)
2022/12/12(月) 15:26:03.32ID:P0mM9QsZM >>645
[補足]
list<string> v2; の場合、push_back すると、
p1 = new string;
相当の事が実行されるが、p1 の内部の文字列バッファも、string のコンストラクタ
の中で
p2 = new char[N];
のようにして free store から確保される。
確率的には、p1 と p2 は非常に隣接したアドレスになっている可能性が非常に
高い。
その結果として、p1をアクセスした直後にp2にアクセスしてもキャッシュミスは起きない。
その結果、vector<string>とlist<string>のソート後の全巡回でのキャッシュミス回数は、
ほぼ同じ。
[補足]
list<string> v2; の場合、push_back すると、
p1 = new string;
相当の事が実行されるが、p1 の内部の文字列バッファも、string のコンストラクタ
の中で
p2 = new char[N];
のようにして free store から確保される。
確率的には、p1 と p2 は非常に隣接したアドレスになっている可能性が非常に
高い。
その結果として、p1をアクセスした直後にp2にアクセスしてもキャッシュミスは起きない。
その結果、vector<string>とlist<string>のソート後の全巡回でのキャッシュミス回数は、
ほぼ同じ。
647デフォルトの名無しさん (ワッチョイ 675f-3TNT)
2022/12/12(月) 15:33:08.04ID:b4gQwKir0648デフォルトの名無しさん (スップ Sd7f-fWbS)
2022/12/12(月) 15:34:37.69ID:s9w5HO4Md 典型的な用途ではsmall-string optimizationで大部分が連続になるでしょ
リンクリストにその恩恵はない
リンクリストにその恩恵はない
649デフォルトの名無しさん (オイコラミネオ MM7b-VZV0)
2022/12/12(月) 15:37:07.44ID:P0mM9QsZM650デフォルトの名無しさん (オイコラミネオ MM7b-VZV0)
2022/12/12(月) 15:39:41.84ID:P0mM9QsZM >>649
[補足]
vector<string>をソートすると、stringの「箱」が新しく確保されてしまうので、
中身だけがmoveされるので、stringと対応する文字列バッファは「離れ離れになる」
list<string>をソートすると、stringはアドレスは全く変化せず、string同士の
リンクのされ方だけが変化するだけだから、stringと対応する文字列バッファは、
メモリー空間上でのアドレスの隣接を維持する。
[補足]
vector<string>をソートすると、stringの「箱」が新しく確保されてしまうので、
中身だけがmoveされるので、stringと対応する文字列バッファは「離れ離れになる」
list<string>をソートすると、stringはアドレスは全く変化せず、string同士の
リンクのされ方だけが変化するだけだから、stringと対応する文字列バッファは、
メモリー空間上でのアドレスの隣接を維持する。
651デフォルトの名無しさん (オイコラミネオ MM7b-VZV0)
2022/12/12(月) 15:40:54.03ID:P0mM9QsZM■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【無言】中国怒らせた高市首相→1週間だんまり、国民に実害も説明なし 中国問題を避けてスルー… ★5 [BFU★]
- 「日本はパンダがいなくなる状況に直面するだろう」 中国メディア、専門家の見方伝える [♪♪♪★]
- 止まらぬ「日本売り」 高市財政への懸念で進む金利上昇と円安 ★2 [蚤の市★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★12 [樽悶★]
- 【北海道】帯広vs釧路 不良グループが30人規模の大乱闘 廃墟での肝試しで鉢合わせトラブルに…自称解体工の男ら逮捕 [ぐれ★]
- 【福岡】ミカンの木に逆さ吊りになっていた高齢の男性が死亡 [雑用縞工作★]
- 【高市速報】日本の政治家も国民も「実利を取る」って選択ができないバカしかいないのか? [369521721]
- 東大名誉教授「中国は誤った宣伝を繰り広げ、対立を煽り、経済の失敗による国内の不満を日本に向けている」 [903292576]
- 【悲報】Suica、セキュリティを突破されたのが販売されはじめる [347751896]
- 【悲報】米問屋「助けて!米がとんでもない量余ってるのに全然売れないの!でも絶対値下げしたくない…どうしたらいいの…」 [802034645]
- ネトウヨ「日本人の命を守るために中国とケンカしろ!え、薬が作れない?じゃあ死ね!」 こいつらの言う安全保障とはいったい何なのか? [314039747]
- 🏡
