[過去ログ] C++相談室 part165 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
2
(2): デフォルトの名無しさん (ワッチョイ 194e-FUJr) [sage] 2023/10/31(火) 08:59:52.78 ID:DBRUqQAF0(1) AAS
>1
1(3): デフォルトの名無しさん (ワッチョイ efda-9b8G) [sage] 2023/10/31(火) 07:37:38.52 ID:+ZyYyqMO0(1) AAS
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を3行貼り付けること

次スレは>>980が立てること
無理なら細かく安価指定

※前スレ
C++相談室 part164
2chスレ:tech VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
乙です

前スレ 例外はループ脱出に使うような物じゃない、との意見に賛成です。

自分は、例外は「起こり得るけどいちいちエラー処理を書いたらアホな話を」「処理呼び出し毎ではないレベルで」「エラー対処コーディングするもの」と思ってます。

具体例は、
リンクリストなどコレクション操作でメモリ不足が起きた場合、のエラー処理。
コレクションの追加や削除を頻繁に行うコードって、大体はもっと概念レベルが高い事をやってるので、1件の追加 レベルでエラー処理書いてたらアホな感じになる。

しかも、GUI プロセスを作ってて何か上手く動かないから特定のエラーだけを画面に表示したい、など、ことさら明確に対処したい場合です。プロセスが落ちればいいだけなら、main()の外側、の仕様がやってくれる。

古い本の情報だけど、SBリップマンによると、MS VC++と、sun、hp-ux の C++コンパイラで、例外を使う/使わないで速度性能調査したそうで、 4~6% の速度劣化があったとの事です。
228
(3): デフォルトの名無しさん (ワッチョイ 5763-dZsi) [sage] 2024/02/10(土) 12:18:06.78 ID:KJGevrBa0(1/2) AAS
>>185
185(1): デフォルトの名無しさん (ワッチョイ 797c-+np5) [sage] 2024/01/28(日) 12:19:26.10 ID:/bXkl1Cz0(1) AAS
>>183
それはfuncB()に失敗の可能性がある時に必ず必要な話だろ?例外どうこうじゃないじゃん
funcB()が例外を投げずに古き良きintのエラーコードを戻り値で返す場合は何かが変わるの?
まさか「funcBの戻り値をガン無視すればfuncCもfuncDも実行されてくれるから完璧!だから例外はクソ!」っていうゴミカスみたいな主張をしたいわけじゃないよね?
>>183
183(6): デフォルトの名無しさん (ワッチョイ 6d63-H5uA) [sage] 2024/01/28(日) 12:13:11.85 ID:W0uCnQb30(3/4) AAS
>>182
>catchしようがしまいが、例外が起きて 処理A→B→return となるのは同じだと思うが。
それは問題の認識がおかいし
例えば以下のコードにおいて、スレッドのゾンビを生じさせないためにはfuncB()をtry { } catch () { } は必須になる。
 void bar() {
  funcA();  // スレッドxを起動
  funcB();  // 中でbaz() → foo()の呼び出し
  funcC();  // スレッドxに停止シグナル発酵
  funcD();  // スレッドxの終了待ち
  return;
}
このように一般に例外が飛んでくる関数にはcatchするかしないかの選択権など無い
例外安全なオブジェクト「だけ」で事が済んでいない限り、例外を受けると決めた時点でcatchせねばならない

一方、例外を生じないライブラリの使い方(関数の呼び出し方)を心掛けるかどうか。これなら選択肢がある
の主張の
>一方、例外を生じないライブラリの使い方(関数の呼び出し方)を心掛けるかどうか。これなら選択肢がある
が完全に読み飛ばされている件について:

例外を生じないライブラリの使い方で設計したら、funcB()から例外が飛んでくるのはバグなので
調査と修正の対象になる。
(結果的にやっぱtry { funcB(); } catch (/*略*/) { ... } いるじゃーん?となる可能性はあるがたいていはそうはならない

>>188
188(2): デフォルトの名無しさん (ワッチョイ 66cf-5eDQ) [sage] 2024/01/28(日) 17:01:39.99 ID:Gsm093HM0(3/3) AAS
例外安全性を守るのに例外の種類やそれが既知か未知かは関係ないだろうが、
仕様に明記した例外以外は堰き止めるのが正解だろうなあ。
のように自分が何をやっているのか認識しないまませき止めるのは論外すぐる……
292: デフォルトの名無しさん (ワッチョイ e304-hmqi) [] 2024/02/18(日) 14:01:41.78 ID:6Yt/CDIt0(1) AAS
私が20代の頃に見かけた論争が今も繰り返されてるのかわいい🩷
419: デフォルトの名無しさん (ワッチョイ 1f23-dwWB) [sage] 2024/08/24(土) 19:16:42.78 ID:6PXbzil00(2/2) AAS
行うべき解放処理が無い上ポリモーフィズムも不要なら、別にデストラクタがvirtualである必要は無いぞ
このケースで継承すべきかどうかはまた別として
610
(1): デフォルトの名無しさん (JP 0Hf2-Dj8N) [] 2024/12/01(日) 18:28:00.78 ID:IuCKzQHfH(1/6) AAS
xxx.h で namespace A { size_t intval, count, itr; } を宣言。もちろん、インクルードガードしてる。

ところが、作ったライブラリをテンプレート対応に修正したら、「intval, count, itr」が2重定義されてます。」
という旨のLINK1169のエラー(Visual Stuio 2022)が突然出てきた。前のライブラリではこんなエラー出てなかった
のに...ナンデダロー、ナンデダロー♪と悩んでいたが、

namespace A { extern size_t intval, count, itr; }

を宣言したら解決した。extern_や外部リンケージのことがが良くわからない。調べたら通りいっぺんのことは
わかるけど。LINK1169のエラーが出たら、extern宣言してみてLINK1169を殺す、という対症療法だけ学習しました。
686: デフォルトの名無しさん (ワッチョイ fd63-KThN) [sage] 2025/02/16(日) 10:23:32.78 ID:AY7cmtZI0(4/4) AAS
>>684
684(1): はちみつ餃子◆8X2XSCHEME (ワッチョイ ed32-7Htj) [sage] 2025/02/16(日) 10:19:16.22 ID:3LJfyOAU0(1) AAS
>>683
静的記憶域期間の変数
なるほど……
これからはレビューでグローバル変数と口走る香具師が居たらすかさず訂正を要求するわ㌧クス、
745
(1): デフォルトの名無しさん (ワッチョイ dd01-5p3Z) [sage] 2025/03/14(金) 21:47:11.78 ID:PsWnmiZn0(2/2) AAS
>>742
742(1): はちみつ餃子◆8X2XSCHEME (ワッチョイ c132-ctMQ) [sage] 2025/03/14(金) 11:05:51.17 ID:B4ilMY360(1) AAS
>>741
ラムダ式の前に + を付けると関数ポインタに型変換できるという小ネタの話だと思う。
初めて知った
845: はちみつ餃子◆8X2XSCHEME (ワッチョイ cd32-Uo71) [sage] 2025/04/08(火) 07:45:44.78 ID:veBTnWpR0(1) AAS
Rust はエディションごとに互換性が維持され、逆に言えばエディションをまたぐと互換性を損なっても良いというルール。
そして異なるエディションがひとつのプロジェクトに混在できる。
古いエディションから新しいエディションへの移行はかなり自動化されている。
最初から互換性を捨てることがありうる体制なので歴史的事情をいつまでも引きずることはない……と思うのだがこの体制でうまくいくかはやってみないとわからんね。
二十年くらいすれば結果が見えてくるだろう。
867
(1): デフォルトの名無しさん (ワッチョイ 02ad-S7Iq) [sage] 2025/04/11(金) 20:19:44.78 ID:9wDK2WuU0(3/5) AAS
つまり>>848
848(2): デフォルトの名無しさん (ワッチョイ bd5f-VGeA) [sage] 2025/04/10(木) 00:16:06.10 ID:nvkavsn60(1) AAS
現在公開されている世界最速grepツールであるripgrepがRustで組んであるってのがすごい
で書かれているツールの高速性は「Rustの言語仕様や機能に依存した話ではなくOS提供のシステムコールによるものだ」と言いたいのか
ふぅ〜ん
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.042s