!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を3行貼り付けること
次スレは>>980が立てること
無理なら細かく安価指定
※前スレ
C++相談室 part164
https://mevius.5ch.net/test/read.cgi/tech/1683600652/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
C++相談室 part165
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん (ワッチョイ efda-9b8G)
2023/10/31(火) 07:37:38.52ID:+ZyYyqMO0901デフォルトの名無しさん (ササクッテロロ Spd1-gX4K)
2025/04/12(土) 15:25:35.11ID:X5lME/jLp ハンドラを高速にしたって秒間何千回とか頻繁に呼んでるのでも無きゃ全体の処理速度は体感出来ないだろうに
902デフォルトの名無しさん (ラクッペペ MM66-XbuE)
2025/04/12(土) 16:44:12.03ID:VGLNjbvdM パワステの無いハンドル握ったこと無いんだろうなぁ
903デフォルトの名無しさん (ワッチョイ fefb-Upwm)
2025/04/12(土) 17:11:32.63ID:50hOhfEU0 >>901
でも850は大半をシステムコールに頼ってる感じで言ってる気がするんだよな
そうでなきゃメインプログラム(呼び出し元の意)が足を引っ張るから、全体のスループットは下がるってわかるはずだし
なんなら、データを渡せば全部やってくれて結果を受けとるだけ、ぐらいに思ってる気がしないでもない
でも850は大半をシステムコールに頼ってる感じで言ってる気がするんだよな
そうでなきゃメインプログラム(呼び出し元の意)が足を引っ張るから、全体のスループットは下がるってわかるはずだし
なんなら、データを渡せば全部やってくれて結果を受けとるだけ、ぐらいに思ってる気がしないでもない
904デフォルトの名無しさん (ワッチョイ 6ea1-pnyl)
2025/04/12(土) 19:49:48.77ID:ctMpwM2A0905デフォルトの名無しさん (ワッチョイ 6ea1-pnyl)
2025/04/12(土) 19:51:48.08ID:ctMpwM2A0 ひょっとしたらRustで書かれたRedoxはメチャクチャ速いのかもしれん……
906デフォルトの名無しさん (オッペケ Srd1-N10g)
2025/04/12(土) 20:47:35.95ID:Kq/N9vBkr907デフォルトの名無しさん (ワッチョイ 6ea1-pnyl)
2025/04/12(土) 21:04:16.73ID:ctMpwM2A0908デフォルトの名無しさん (ブーイモ MM22-PSZj)
2025/04/12(土) 21:23:50.46ID:laBjQjoGM909デフォルトの名無しさん (ワッチョイ 6e39-N10g)
2025/04/12(土) 23:26:15.15ID:C5glPX3o0 Cよりは「うまく」かけるけど、C++ほど「凝らずに」書けるのは、いいことのはず
Linusが、C++はボロクソ言ってNGしたが、Rustにはゴーサイン出したのは、そういうことだと思ってる
(念のために・後学のためにいっとくが、LinusはC++について、ユーザランドでは好きにしたらいいとも言ったはず)
Linusが、C++はボロクソ言ってNGしたが、Rustにはゴーサイン出したのは、そういうことだと思ってる
(念のために・後学のためにいっとくが、LinusはC++について、ユーザランドでは好きにしたらいいとも言ったはず)
910デフォルトの名無しさん (オイコラミネオ MM0b-z3tz)
2025/04/13(日) 00:04:43.19ID:cgsGBgQOM >>908
並列化
並列化
911デフォルトの名無しさん (オイコラミネオ MM0b-z3tz)
2025/04/13(日) 00:06:07.15ID:cgsGBgQOM 最初に書いたことは一切特別なことは書いてない
小学生でも流すような内容で当たり前の当たり前
それをアホが勘違いして騒いでいる
小学生でも流すような内容で当たり前の当たり前
それをアホが勘違いして騒いでいる
912デフォルトの名無しさん (ワッチョイ 5ff0-8xdJ)
2025/04/13(日) 00:11:33.04ID:YJSdSOOz0 Linusが昔触ったC++コンパイラの出来が最悪でキレ散らかした
要するにC++の仕様が悪いわけではなくて当時のg++の出来の悪さに嫌気をさしてC++を触らなくなった
どっちにしろバカに危ういコードを書かせないようにするセーフティ機構を導入したところでバカがコーディングしている時点で22H2も史上最悪の大型アプデで終わってるワケなんだがな
要するにC++の仕様が悪いわけではなくて当時のg++の出来の悪さに嫌気をさしてC++を触らなくなった
どっちにしろバカに危ういコードを書かせないようにするセーフティ機構を導入したところでバカがコーディングしている時点で22H2も史上最悪の大型アプデで終わってるワケなんだがな
913デフォルトの名無しさん (ワッチョイ 5ff0-8xdJ)
2025/04/13(日) 00:12:54.40ID:YJSdSOOz0 まちげーた
×22H2 〇24H2
どっちにしろセンスのないやつに触らせたら終わる罠
×22H2 〇24H2
どっちにしろセンスのないやつに触らせたら終わる罠
914デフォルトの名無しさん (オイコラミネオ MM0b-z3tz)
2025/04/13(日) 00:14:13.66ID:cgsGBgQOM C++は継承があるからコードが追い辛いとかそんな理由だろう
cだと関数はその点簡潔に挙動が追いやすい
cだと関数はその点簡潔に挙動が追いやすい
915はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 2732-u90l)
2025/04/13(日) 00:48:59.24ID:PZbFvNAM0 >>909
抽象化モデルが非効率だったと何年もたってから発覚したときにはそのモデルに依存しきっていて全体の書き直ししか修正しようがないということをリーナスは書いている。
プログラムを凝らずに書けることが良いというよりは、凝ったプログラムが柔軟性がない (修正しにくい) ことを問題視してるように見える。
実行効率はやってみないとわからん場合もあるし事情が変わる場合もあるから、ある時点で設計として真っ当であってもずっとそうだとは限らんのだな。
抽象化モデルが非効率だったと何年もたってから発覚したときにはそのモデルに依存しきっていて全体の書き直ししか修正しようがないということをリーナスは書いている。
プログラムを凝らずに書けることが良いというよりは、凝ったプログラムが柔軟性がない (修正しにくい) ことを問題視してるように見える。
実行効率はやってみないとわからん場合もあるし事情が変わる場合もあるから、ある時点で設計として真っ当であってもずっとそうだとは限らんのだな。
916はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 2732-u90l)
2025/04/13(日) 01:02:02.66ID:PZbFvNAM0 一度しか呼ばれないような関数は書かない (関数としてくくり出さない) とかいう方針の有名なプロジェクトがあったような気がするんだが、なんだったかわかる人はいる?
細部の処理の追いやすさとしてはそのほうが見通しがよいという論で、なるほどそういう考え方もあるんだなーと面白く思った記憶がある。
細部の処理の追いやすさとしてはそのほうが見通しがよいという論で、なるほどそういう考え方もあるんだなーと面白く思った記憶がある。
917デフォルトの名無しさん (ワッチョイ bf98-wr60)
2025/04/13(日) 01:35:44.56ID:b1PigeDH0918デフォルトの名無しさん (ワッチョイ bf02-ngEE)
2025/04/13(日) 01:36:41.03ID:wr7CGYg/0 >>916
有名なというと、デビット・カトラーのNTカーネル開発ではなかったか
逆に、「関数は30行以内」だったかなルールが採用されており、
普通に描いたら40行とか行ってしまう関数を、25行ずつの呼び出し元関数と呼び出し先関数に
書き換えられることが頻繁にあった、というので有名だったのはFileMakerだったかな
有名なというと、デビット・カトラーのNTカーネル開発ではなかったか
逆に、「関数は30行以内」だったかなルールが採用されており、
普通に描いたら40行とか行ってしまう関数を、25行ずつの呼び出し元関数と呼び出し先関数に
書き換えられることが頻繁にあった、というので有名だったのはFileMakerだったかな
919デフォルトの名無しさん (ワッチョイ 6797-0Spt)
2025/04/13(日) 06:32:10.84ID:Aq/uJRNv0 Rust見て羨ましいと思ったのはスタックフレーム重視の言語設計かね。
効率化の観点からは入れ子構造・スタック構造が優れているんだから、スタックを崩す例外とかgotoは廃止してほしい。
あとスタックにある自動変数は関数呼び出しが乱れない限り存在が保証されるんだから、自動変数の参照しか受け付けない仮変数も欲しいところ。スマートポインタの参照は効率的だし、もっと安全に使えるようにしてほしい。
効率化の観点からは入れ子構造・スタック構造が優れているんだから、スタックを崩す例外とかgotoは廃止してほしい。
あとスタックにある自動変数は関数呼び出しが乱れない限り存在が保証されるんだから、自動変数の参照しか受け付けない仮変数も欲しいところ。スマートポインタの参照は効率的だし、もっと安全に使えるようにしてほしい。
920デフォルトの名無しさん (ワッチョイ 7fa1-0ra6)
2025/04/13(日) 10:18:45.93ID:MoeuBZp20 アイタタタ……つ∀`;)
921デフォルトの名無しさん (ワッチョイ 07ad-GZf5)
2025/04/13(日) 10:31:02.45ID:K92VhJDO0 例外はもう実行が続けられないんだからスタックが壊れても問題ない
それよりも、単なるエラーを例外として実装したコードが多いのが問題
std::optional など使え
それよりも、単なるエラーを例外として実装したコードが多いのが問題
std::optional など使え
922デフォルトの名無しさん (スフッ Sd7f-g0pP)
2025/04/13(日) 10:42:06.37ID:3fI5Pb+md >>916
emacs
emacs
923デフォルトの名無しさん (ワッチョイ 7fa1-0ra6)
2025/04/13(日) 10:48:07.97ID:MoeuBZp20 >>921
ヒエッツ……、、、例外とスタックの関係について誤解が見受けられる……
例外発生時はスタックをアンワインドしてくれられるので(構築済みの)自動オブジェクトは解放される
もっとも救われるのはそれだけなので無神経なコーディングをしているとリソースリークがほとんど避けられないが
ヒエッツ……、、、例外とスタックの関係について誤解が見受けられる……
例外発生時はスタックをアンワインドしてくれられるので(構築済みの)自動オブジェクトは解放される
もっとも救われるのはそれだけなので無神経なコーディングをしているとリソースリークがほとんど避けられないが
924デフォルトの名無しさん (ワッチョイ 475f-8xdJ)
2025/04/13(日) 11:00:29.39ID:c0pIh3Hj0 今後はよく反省し「スタック」を狩野英孝のホスト物まねの口調で「スタック~」と音読するようにしなさい
925デフォルトの名無しさん (ワッチョイ 7fa1-0ra6)
2025/04/13(日) 11:02:27.24ID:MoeuBZp20 ライブラリ設計者なら一部のエラーを例外のスローとしたくなる気持ちあるある……
こんなん明らかに使う側(呼び出し元)のバグじゃねーの?!というケースまで律儀にエラー値をreturnする設計にすると
かえって全員が不幸に……
こんなん明らかに使う側(呼び出し元)のバグじゃねーの?!というケースまで律儀にエラー値をreturnする設計にすると
かえって全員が不幸に……
926デフォルトの名無しさん (ワッチョイ 7fa1-0ra6)
2025/04/13(日) 11:05:14.04ID:MoeuBZp20 ライブラリ設計ではなくて特定のアプリケーション内のアプリケーションロジックということなら
呼び出し元のバグはassert()なりで引っ掛けて十分テストするとか検出次第abort()してしまうという安直解決手はつかえまつがね……
呼び出し元のバグはassert()なりで引っ掛けて十分テストするとか検出次第abort()してしまうという安直解決手はつかえまつがね……
927デフォルトの名無しさん (ワッチョイ 277c-jwrR)
2025/04/13(日) 11:30:44.32ID:zW1FzTwb0 「C++のクソなとこを反面教師にしますた!」を標榜してる言語もだいたい例外は持ってるんだよなあ
928デフォルトの名無しさん (オイコラミネオ MM0b-z3tz)
2025/04/13(日) 13:17:51.55ID:cgsGBgQOM c,c++プログラマって縦に長いコード書くよね
929デフォルトの名無しさん (オイコラミネオ MM0b-z3tz)
2025/04/13(日) 13:24:42.29ID:cgsGBgQOM 一つの関数にずらずらそのまんま一続きの手続きを書いてる
関数の入り口でif判定の群れでその次はwhileの囲まれた深いfor
中にも数段階階層のあるif これが非常にわかりにくい
出てもif並んでて、次でまたforループとか
意味でわけようとしてないけど、上に書かれたような一度しか呼ばれない関数は書かないという方針なのかもしれない
読むのめんどくさい
関数の入り口でif判定の群れでその次はwhileの囲まれた深いfor
中にも数段階階層のあるif これが非常にわかりにくい
出てもif並んでて、次でまたforループとか
意味でわけようとしてないけど、上に書かれたような一度しか呼ばれない関数は書かないという方針なのかもしれない
読むのめんどくさい
930デフォルトの名無しさん (ワッチョイ a75f-A6GO)
2025/04/13(日) 13:31:35.49ID:wdBPVi5v0 case文とラムダ式だらけの長いコードなら見た事あるわw
931デフォルトの名無しさん (オイコラミネオ MM0b-z3tz)
2025/04/13(日) 13:38:49.68ID:cgsGBgQOM そういうのは仕方ないけど
関数で何らかのvectorを入力値として受け取ってまずそれの検証をしてループで何らかの処理やら分析をして特徴をリストアップ
その後それを基にまた解析して最後に出力用に整形して直接printf
ここまでが一関数で縦に並んでる
自分ならすぐ下請け関数作る
GUIなどのコンポーネントも同じでDrawLineが並んでるとかなり残念な気持ちになる
速度重視なのだろうか
自分ならDrawFrameとか対象別に関数に分けてるけど
関数で何らかのvectorを入力値として受け取ってまずそれの検証をしてループで何らかの処理やら分析をして特徴をリストアップ
その後それを基にまた解析して最後に出力用に整形して直接printf
ここまでが一関数で縦に並んでる
自分ならすぐ下請け関数作る
GUIなどのコンポーネントも同じでDrawLineが並んでるとかなり残念な気持ちになる
速度重視なのだろうか
自分ならDrawFrameとか対象別に関数に分けてるけど
932デフォルトの名無しさん (アウアウウー Sacb-gg6d)
2025/04/13(日) 13:42:08.58ID:4yNzrwxra933はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 2732-gGXF)
2025/04/13(日) 14:08:52.79ID:PZbFvNAM0 ラダー図や状態遷移図などの形で設計してからコードに落とし込むような場合は愚直にダラダラと書いたほうが良いということもある。
元の設計図と一対一に対応するから。
理解するために読む必要があるならそのときに見るのはコードではなく設計図だから見通しの悪さは問題にならない。
一見してコードがクソなように見えても工程全体を見ないと妥当性はわからない。
わからないけど大体の場合にはクソなのが現実ではあるだろうけどさ。
元の設計図と一対一に対応するから。
理解するために読む必要があるならそのときに見るのはコードではなく設計図だから見通しの悪さは問題にならない。
一見してコードがクソなように見えても工程全体を見ないと妥当性はわからない。
わからないけど大体の場合にはクソなのが現実ではあるだろうけどさ。
934デフォルトの名無しさん (ワッチョイ a75f-A6GO)
2025/04/13(日) 14:12:51.06ID:wdBPVi5v0 if文のネストは2段まで
case文内は3行まで
1行は80文字以内
とかコーディングルールがあるはず
case文内は3行まで
1行は80文字以内
とかコーディングルールがあるはず
935デフォルトの名無しさん (オイコラミネオ MM0b-z3tz)
2025/04/13(日) 14:20:23.68ID:cgsGBgQOM いい悪いじゃなくて本当に縦に長い
見づらい
2画面上のwhileループ前なんて見たくない
見づらい
2画面上のwhileループ前なんて見たくない
936デフォルトの名無しさん (ワッチョイ 7f10-W6ws)
2025/04/13(日) 14:24:13.96ID:Mc7Qy6UQ0 書いたステップ数で会社での評定が決まるのだから短く簡潔に書くのは大損
徹底的にだらだら冗長に書いて行数を増やすべき
自分を大事に!自分を第一に!
徹底的にだらだら冗長に書いて行数を増やすべき
自分を大事に!自分を第一に!
937デフォルトの名無しさん (オイコラミネオ MM0b-z3tz)
2025/04/13(日) 14:25:22.49ID:cgsGBgQOM それだったら関数に分けたほうが稼げる気がするけど
938デフォルトの名無しさん (ワッチョイ 277c-jwrR)
2025/04/13(日) 14:43:21.80ID:zW1FzTwb0 大昔や一部の組み込みみたいなスタックや関数呼び出しのコストが重い世界だと
余分な関数書くな全部main()に納めろみたいな文化もある
余分な関数書くな全部main()に納めろみたいな文化もある
939デフォルトの名無しさん (ワッチョイ a75f-A6GO)
2025/04/13(日) 14:45:54.31ID:wdBPVi5v0 >>938
ワンチップマイコンとかかなぁ
ワンチップマイコンとかかなぁ
940デフォルトの名無しさん (アウアウウー Sacb-gg6d)
2025/04/13(日) 15:14:08.46ID:4yNzrwxra stack8段しかないとかならそうなるわね
941デフォルトの名無しさん (ワッチョイ 2781-0Spt)
2025/04/13(日) 21:40:21.31ID:ui4bTaon0 基本はdon't repeat yourselfかね。
繰り返しで無いのなら縦長のブロックも許容できる。
繰り返しで無いのなら縦長のブロックも許容できる。
942デフォルトの名無しさん (ワッチョイ bf1a-wr60)
2025/04/13(日) 22:13:41.04ID:b1PigeDH0 コンテキストの量にもよるよな
高速化の結果複雑なコンテキストになること多いけど、そうなると関数分けが難しくなる
高速化の結果複雑なコンテキストになること多いけど、そうなると関数分けが難しくなる
943はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 2732-u6Dv)
2025/04/15(火) 09:57:20.08ID:jku5RD3N0 極端にリソースが制限されているマイコンの場合はそもそも C や C++ が適した選択肢なのかどうかという疑問がある。
どうせインラインアセンブラまみれになるのだし、いっそマクロアセンブラのほうが見通しが良い気がするよ。
どうせインラインアセンブラまみれになるのだし、いっそマクロアセンブラのほうが見通しが良い気がするよ。
944デフォルトの名無しさん (ワッチョイ 5f11-gGXF)
2025/04/15(火) 11:01:48.32ID:l4YFawe/0 【脳科学】「政治行動の激しさ」に関連する脳回路の存在が研究で判明 [すらいむ★]
http://egg.5ch.net/test/read.cgi/scienceplus/1744637408/
上記のリンクをたどったリンク先の本文とコメントを読まれると・・・
余裕ありますか・・・
大々的にインターネット上にばらまかれました!
http://egg.5ch.net/test/read.cgi/scienceplus/1744637408/
上記のリンクをたどったリンク先の本文とコメントを読まれると・・・
余裕ありますか・・・
大々的にインターネット上にばらまかれました!
945デフォルトの名無しさん (ワッチョイ 7f10-3hik)
2025/04/15(火) 11:31:51.94ID:vVagySV10946デフォルトの名無しさん (ワッチョイ ff1d-NDjU)
2025/04/15(火) 20:44:04.00ID:WjK3uBtU0 contractsのこと言ってるのなら単なるassertの別記法ではないぞい
947デフォルトの名無しさん (ワッチョイ ff3d-/z+w)
2025/04/17(木) 00:57:26.62ID:TtQSF/vr0 >>923
ヒープ領域はどうなんの?
ヒープ領域はどうなんの?
948デフォルトの名無しさん (ワッチョイ bfa4-wr60)
2025/04/17(木) 01:00:09.35ID:A9DKvgPb0 >>947
生ポ使う方が悪い
生ポ使う方が悪い
949はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 2732-u6Dv)
2025/04/17(木) 01:58:20.90ID:IaMMIkKx0 リソースの後始末はデストラクタでやる (スマートポインタの利用を含む) ように設計するのが基本ではあるが……。
どうしてもそうできない事情があるなら後始末が必要な場所で例外を一旦キャッチすればいい。
例外が投げられるのは例外が投げられるような状況に対処させるためだ。
対処が必要な箇所でキャッチするというシンプルな話だろ。
どうしてもそうできない事情があるなら後始末が必要な場所で例外を一旦キャッチすればいい。
例外が投げられるのは例外が投げられるような状況に対処させるためだ。
対処が必要な箇所でキャッチするというシンプルな話だろ。
950デフォルトの名無しさん (ワッチョイ f196-4ocp)
2025/04/20(日) 16:24:04.18ID:Eo/IXC4V0 MCPって面白そうだけどもC++のSDKってないんだな
ラッパーとかないんかな?
ラッパーとかないんかな?
951デフォルトの名無しさん (ワッチョイ b670-qtpD)
2025/04/21(月) 09:32:27.45ID:W4eIGfRa0 MCPは単なるJSON-RPCだから仕様書とスキーマをAIに突っ込めばすぐできるでしょ
MCPサーバーなんてどうせAI丸投げで実装させるのが基本だし、
速度も完全にIOとLLMがボトルネックだから、わざわざC++で実装しようなどという奴はいないのだろう
MCPサーバーなんてどうせAI丸投げで実装させるのが基本だし、
速度も完全にIOとLLMがボトルネックだから、わざわざC++で実装しようなどという奴はいないのだろう
952青木康善 (アウアウウー Sa21-0ulL)
2025/04/21(月) 20:22:54.72ID:ArvlOry0a reasonというソフトのrack extentionを作りたいです。
953青木康善 (アウアウウー Sa21-0ulL)
2025/04/21(月) 20:23:58.17ID:ArvlOry0a javaの鉄則、では、goto文は使うな!と書いてましたが、皆さんどうっすか?
954デフォルトの名無しさん (ワッチョイ 797c-ixHo)
2025/04/21(月) 20:40:44.85ID:NUGisEOi0 Dijkstra先生の例の論文でも読んでこい
955はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7932-imSP)
2025/04/21(月) 21:41:22.47ID:++xqwTI40 >>953
防災設備みたいなものだ。
使わないで済むほうが良いけど必要なときに避けようとすれば被害が大きくなる。
だけど goto は使わないで済むときに使ってしまうと更に被害が出る。
なので自分の判断に自信がないなら教条的に goto を避けたほうが全体としては比較的にマシなんだよ。
そもそも状況が理想的でないことも多いのだから理想通りにプログラムを構成できなくても仕方がない。
もうぐちゃぐちゃになってるものでもどうにかしなきゃならないときはあるだろ。
防災設備みたいなものだ。
使わないで済むほうが良いけど必要なときに避けようとすれば被害が大きくなる。
だけど goto は使わないで済むときに使ってしまうと更に被害が出る。
なので自分の判断に自信がないなら教条的に goto を避けたほうが全体としては比較的にマシなんだよ。
そもそも状況が理想的でないことも多いのだから理想通りにプログラムを構成できなくても仕方がない。
もうぐちゃぐちゃになってるものでもどうにかしなきゃならないときはあるだろ。
956デフォルトの名無しさん (ワッチョイ f969-3oCd)
2025/04/21(月) 22:36:31.36ID:amcA96LQ0 >>953
プログラミングにおいて再帰は最も重要な構造であり、C++もスタックフレームやASTなど再帰的な構造を暗黙の了解として成り立っている。
しかしgotoはこの再帰構造を容易く破壊してプログラムに混沌をもたらす。よってgotoは使ってはならない。
プログラミングにおいて再帰は最も重要な構造であり、C++もスタックフレームやASTなど再帰的な構造を暗黙の了解として成り立っている。
しかしgotoはこの再帰構造を容易く破壊してプログラムに混沌をもたらす。よってgotoは使ってはならない。
957デフォルトの名無しさん (ワッチョイ b501-4ocp)
2025/04/21(月) 23:23:45.99ID:7ucDJhu90958デフォルトの名無しさん (ブーイモ MM3e-N74K)
2025/04/22(火) 07:13:32.77ID:UYuDPI7gM gotoが駄目ならlongjmpを使えば良いじゃない by マリー
959デフォルトの名無しさん (ワッチョイ 8af0-pFs9)
2025/04/22(火) 08:22:15.23ID:oDpGVZXg0 setjmp/longjmpをANSIに詰め込んでるの💩だよね
960青木康善 (ワッチョイ 8a72-0ulL)
2025/04/23(水) 17:25:43.12ID:4FkXeR/00 アドバイスありがとうございます。駿台電子のネットワークの先生が昔、あらゆるプログラミング言語の中で一番、処理が早いのはC++だと言っていたので、頑張ります。
961デフォルトの名無しさん (ワッチョイ 5e85-M5IX)
2025/04/23(水) 23:23:42.67ID:1cvTRmDz0 いまだにgoto論とかw
いかに効率的にAIに作らせるかの時代だぞ
誤差レベルの最適化なんかやってる場合かよ
いかに効率的にAIに作らせるかの時代だぞ
誤差レベルの最適化なんかやってる場合かよ
962デフォルトの名無しさん (ワッチョイ 6639-nw4i)
2025/04/24(木) 00:55:04.53ID:ClCGshC50 まずAIにテストをつくらせてだな。。
963デフォルトの名無しさん (ワッチョイ 6610-VXNn)
2025/04/24(木) 08:02:23.17ID:3fimUhF30 C++使いはジジィが多いからAIどころかIDEすら拒絶してるもんな
70年代からずっとgoto論だのインデント文字数だのvi vs emacs論争をたぶん絶滅するまで続けてるよ
70年代からずっとgoto論だのインデント文字数だのvi vs emacs論争をたぶん絶滅するまで続けてるよ
964デフォルトの名無しさん (ワッチョイ 5e01-3oCd)
2025/04/24(木) 08:42:38.65ID:WKi0rg0u0 >>961
そのあたりは要件定義とかユースケースとかの話だから、問題領域が違うよ。
しかし>961もそうだけど、AIの使い方の話をしているやつからPM知識の匂いがしないのはなんでかね。
AI利用法とかPMで長年研究してきた問題と重複する部分が多いのに。
そのあたりは要件定義とかユースケースとかの話だから、問題領域が違うよ。
しかし>961もそうだけど、AIの使い方の話をしているやつからPM知識の匂いがしないのはなんでかね。
AI利用法とかPMで長年研究してきた問題と重複する部分が多いのに。
965デフォルトの名無しさん (ブーイモ MM3e-M5IX)
2025/04/24(木) 08:45:22.69ID:YbDQClr8M また香ばしいの来たなw
966デフォルトの名無しさん (ワッチョイ 8a1d-69r1)
2025/04/24(木) 11:46:10.31ID:cjL4AtoW0 まずそのgotoの話し始めたコテがどう見ても知的に問題がありそうな感じなのに
そいつの話題に乗って語り始めちゃったところで、まともな結論にたどり着けるはずもなく…
そいつの話題に乗って語り始めちゃったところで、まともな結論にたどり着けるはずもなく…
967デフォルトの名無しさん (アウアウウー Sa21-NXaD)
2025/04/24(木) 13:24:56.21ID:ndm7u60Wa C++よりCの方が速い
968デフォルトの名無しさん (ササクッテロロ Spbd-0ulL)
2025/04/24(木) 13:38:32.65ID:rhg+hx6mp まあ、クラス関数テーブル参照する分C++の方が遅いかなw
969はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7932-C6fW)
2025/04/24(木) 13:43:43.90ID:pnRjJMwb0 クラス関数テーブルって何?
970デフォルトの名無しさん (ワッチョイ 8af0-pFs9)
2025/04/24(木) 13:51:17.41ID:XeDfAgiK0 vtableのことかよ
最近のはプリフェッチ改善されてきているからな
最近のはプリフェッチ改善されてきているからな
971デフォルトの名無しさん (ワッチョイ b501-4ocp)
2025/04/24(木) 16:00:45.28ID:ewKS50go0 >>968
メンバ関数は必ずvtableを参照するものではない(非仮想のメンバ関数)
参照しなければCと変わらん
Cでvtable相当のものを用意してそれを介して関数呼べば
仮想メンバ関数呼ぶのと変わらん
メンバ関数は必ずvtableを参照するものではない(非仮想のメンバ関数)
参照しなければCと変わらん
Cでvtable相当のものを用意してそれを介して関数呼べば
仮想メンバ関数呼ぶのと変わらん
972青木康善 (アウアウウー Sa21-0ulL)
2025/04/24(木) 16:39:12.09ID:aYrGN0fKa rack extention作りますが、グラニュラーとstutterとフーリエ変換付けたら、デスマーチ状態になりそうだなあ。
973デフォルトの名無しさん (ワッチョイ 8a1d-69r1)
2025/04/24(木) 16:55:57.61ID:cjL4AtoW0 ね、バカに反応するだけ時間の無駄だって
974はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7932-imSP)
2025/04/24(木) 20:09:19.15ID:pnRjJMwb0 この場合に何を指してクラス関数という言葉を使ったか (そしてそれが速度的ペナルティに繋がると思ったか) は当人にしかわからんが、私なりに推測すると Java Python Ruby などで言うところのクラスメソッドから間違った類推をして得られた概念ではないかと思う。
これらの言語は「クラスはオブジェクトである」というパラダイムの世界で、抽象メソッドでもインスタンスメソッドでもない場合でも動的なディスパッチを必要とする場合がある。
もちろん C++ ではそうではなく、仮想関数を除けばコンパイル後には関数を指す唯一無二のアドレスが確定していて C の関数と比べて速度的不利はないし、仮想関数のようなことを C でやろうとすれば間接参照なり分岐なりのコストはどうせ必要なので仮想関数を C++ の速度的不利というのは無理筋だ。
ただ、充分な理解なく不必要に速度的不利な機能を使ってしまうことが (C よりは) 高いだろうという意味では C++ が不利と言えなくもないかもね。
これらの言語は「クラスはオブジェクトである」というパラダイムの世界で、抽象メソッドでもインスタンスメソッドでもない場合でも動的なディスパッチを必要とする場合がある。
もちろん C++ ではそうではなく、仮想関数を除けばコンパイル後には関数を指す唯一無二のアドレスが確定していて C の関数と比べて速度的不利はないし、仮想関数のようなことを C でやろうとすれば間接参照なり分岐なりのコストはどうせ必要なので仮想関数を C++ の速度的不利というのは無理筋だ。
ただ、充分な理解なく不必要に速度的不利な機能を使ってしまうことが (C よりは) 高いだろうという意味では C++ が不利と言えなくもないかもね。
975デフォルトの名無しさん (ワッチョイ 797c-ixHo)
2025/04/24(木) 20:50:08.03ID:4KP0cuFt0 vectorは境界チェックするから遅くてゴミでCの配列には必要ないから最強だって暴れてた超天才Cグラマ様おったなあ
976デフォルトの名無しさん (オッペケ Srbd-nw4i)
2025/04/24(木) 23:12:29.97ID:DqjjH7fdr 境界チェックはしてるんだけど、最適化の過程で霧散する…
…いまは、どこの言語もそのくらいはできるからね
…いまは、どこの言語もそのくらいはできるからね
977青木康善 (アウアウウー Sa21-0ulL)
2025/04/24(木) 23:14:17.38ID:Nm4FYEaNa オライリーで、head first C++が洋書で無いかなあ。
978青木康善 (アウアウウー Sa21-0ulL)
2025/04/25(金) 07:29:57.52ID:IL/no3kVa そりゃ、あなたたちは、プログラマーというサラリーマンなんだから、僕はバカですよ。。。とほほ。。。
979デフォルトの名無しさん (アウアウウー Sa21-NXaD)
2025/04/25(金) 14:23:29.54ID:M7r6gaHPa fstream iostream は糞ですね判ります
980デフォルトの名無しさん (ワッチョイ 0a07-nw4i)
2025/04/25(金) 18:10:11.03ID:nRYa5Nu+0 C++に触れるものは、遅かれ早かれ、duck test ってものを解する
バカのように振舞うな
バカのように振舞うな
981デフォルトの名無しさん (オイコラミネオ MM71-h0BB)
2025/04/25(金) 19:48:12.66ID:fabJEISTM なんでも基礎的な内容をしっかりと勉強しておけば後で役に立つから頑張ればよい
ジジイになる前に少しでも覚えろ
ジジイになる前に少しでも覚えろ
982デフォルトの名無しさん (オイコラミネオ MM71-h0BB)
2025/04/25(金) 20:07:56.20ID:fabJEISTM 大昔はmemsetが最適化で消されて気が付かないで徹夜してデスク蹴ったりマウス投げたりしてたんだぞ
関数のアドレスすら存在しない超高速処理で速度的には超有利
流石C++
関数のアドレスすら存在しない超高速処理で速度的には超有利
流石C++
983デフォルトの名無しさん (ワッチョイ 6639-nw4i)
2025/04/26(土) 02:15:34.80ID:kmHF58M00984デフォルトの名無しさん (ワッチョイ b501-N74K)
2025/04/26(土) 05:38:20.00ID:qC2gIsX80 昔と出力コードが変わったなと思うのはコプロ周りの処理がSSE前提になった事かなぁ
985デフォルトの名無しさん (ワッチョイ 1132-NXaD)
2025/04/26(土) 10:35:41.92ID:pbPDl6lv0986デフォルトの名無しさん (オイコラミネオ MM71-h0BB)
2025/04/26(土) 15:49:00.51ID:G2uFKMwFM みなさんはstd::filesystem::path使ってますか?それともただの文字列操作してますか
987デフォルトの名無しさん (アウアウウー Sa21-NXaD)
2025/04/26(土) 15:54:33.92ID:IX/fzv3ga boostの方のは使ってた
988デフォルトの名無しさん (ワッチョイ 66a1-0INX)
2025/04/26(土) 17:25:44.72ID:DKbZdqM30 >>961
breakもcontinueもgotoの一種なのだから仕方が無い
行先がスコープの始まりか終わりに限定される、というのが良心的なだけで
実行フローをぐちゃぐちゃにできうる能力のはgotoとほとんど変わらないし、、、
for (i=0; i < 100; i++) {
if (i == a) { continue; }
if (i == b) { break; }
if (i == c) { continue; } // i== aとi==cをまとめるとしたら、if (i == a && i != b && i == c) { continue; }としないとバグ
if (i == d) { break; }
}
また例外はスローする関数と条件を把握していない限り、
いつ炸裂するかわからないステルスgoto文がコード中にばらまかれているのとだいたい同じ……
従って構造化プログラミングで議論に結論がデタと考えるのは早計で、goto問題は永遠に古くて新しい問題……
breakもcontinueもgotoの一種なのだから仕方が無い
行先がスコープの始まりか終わりに限定される、というのが良心的なだけで
実行フローをぐちゃぐちゃにできうる能力のはgotoとほとんど変わらないし、、、
for (i=0; i < 100; i++) {
if (i == a) { continue; }
if (i == b) { break; }
if (i == c) { continue; } // i== aとi==cをまとめるとしたら、if (i == a && i != b && i == c) { continue; }としないとバグ
if (i == d) { break; }
}
また例外はスローする関数と条件を把握していない限り、
いつ炸裂するかわからないステルスgoto文がコード中にばらまかれているのとだいたい同じ……
従って構造化プログラミングで議論に結論がデタと考えるのは早計で、goto問題は永遠に古くて新しい問題……
989デフォルトの名無しさん (ワッチョイ 5ee3-M5IX)
2025/04/26(土) 21:55:33.90ID:P90TCdD80 一生やってろよw
990デフォルトの名無しさん (ワッチョイ 66cf-jhy/)
2025/04/26(土) 23:03:17.16ID:KeLpsr3P0 大量のコードが不可分にもつれあった状態を作れるgotoと
連接・分岐・反復という構造を崩さないcontinue/breakの
違いがわからないようならどうしようもない。
連接・分岐・反復という構造を崩さないcontinue/breakの
違いがわからないようならどうしようもない。
991デフォルトの名無しさん (ワッチョイ b501-N74K)
2025/04/26(土) 23:12:16.46ID:qC2gIsX80 古いXLISPのソース見たら発狂するのかしら?
992デフォルトの名無しさん (ワッチョイ b77c-ko3M)
2025/04/27(日) 00:35:43.45ID:J2DPm7Xn0 そんなに構造化が嫌なら最初から機械語で書けばいい
gotoしかないから楽しいかもよ
私は嫌です
gotoしかないから楽しいかもよ
私は嫌です
993デフォルトの名無しさん (ワッチョイ ff39-VpId)
2025/04/27(日) 05:06:56.76ID:sqtCgEt90 いや普通の機械語・アセンブラでも、いまどきキレイに書くからw
AIがコード生成しだしたらもうしらん あいつら疲れ知らずの限界なしだから
AIがコード生成しだしたらもうしらん あいつら疲れ知らずの限界なしだから
994デフォルトの名無しさん (アウアウウー Sa1b-Dl8r)
2025/04/27(日) 14:53:44.65ID:rRExk4WBa 「機械語はgotoしかない」は明らかに嘘だな
995デフォルトの名無しさん (ワッチョイ 1701-7NrX)
2025/04/27(日) 15:18:04.41ID:5TUg21k+0 せやば
996はちみつ餃子 ◆8X2XSCHEME (ワッチョイ b732-jewZ)
2025/04/27(日) 17:44:14.12ID:0aN/b0Iq0 ダイクストラが言う構造化プログラミングはモジュールとか抽象データ型とかも含む広範で抽象的な概念として説明されている。
連接・分岐・反復で構成しようという話はそれより前に発表されたものだが、この時代は構造化もクソもないプログラムがまかり通っていたという前提がある。
まずはその三要素を基礎に据えて構成したらわかりやすくね? という提案 (というか感想?) に過ぎず、それで全て事足りるみたいな主張ではない。
(理論上は連接・分岐・反復で全て表現可能であるという証明はされている。)
構造化プログラミングの考え方のキモは構造は人間の認知の中にあるということ。
人間が思考しているときの構造を書き表すためにどんな言語機能 (またはデザインパターン) があればよいの? ってのが構造化プログラミングの議論なんだよ。
書いた人が思ってる構造が表現されているなら構造化プログラミングだし、構造化プログラミングのために用意された機能を使っていても構造が表れていなければ構造化プログラミングではない。
まあついでに言えば書き表されたものについて (コンパイラも人間も) 検証しやすいことも大事だ。
機械的に goto を除去したらむしろ構造が失われるという例をクヌースが出したりもしていて、結局のところはどんな機能も正しく使えば正しいし、悪い使い方をすれば駄目になるというシンプルな話。
そんなわけで break が構造化を崩すか崩さないかは使い方による。
ただ、常識的に考えて break は goto より構造を破綻させにくいだろうってだけ。
連接・分岐・反復で構成しようという話はそれより前に発表されたものだが、この時代は構造化もクソもないプログラムがまかり通っていたという前提がある。
まずはその三要素を基礎に据えて構成したらわかりやすくね? という提案 (というか感想?) に過ぎず、それで全て事足りるみたいな主張ではない。
(理論上は連接・分岐・反復で全て表現可能であるという証明はされている。)
構造化プログラミングの考え方のキモは構造は人間の認知の中にあるということ。
人間が思考しているときの構造を書き表すためにどんな言語機能 (またはデザインパターン) があればよいの? ってのが構造化プログラミングの議論なんだよ。
書いた人が思ってる構造が表現されているなら構造化プログラミングだし、構造化プログラミングのために用意された機能を使っていても構造が表れていなければ構造化プログラミングではない。
まあついでに言えば書き表されたものについて (コンパイラも人間も) 検証しやすいことも大事だ。
機械的に goto を除去したらむしろ構造が失われるという例をクヌースが出したりもしていて、結局のところはどんな機能も正しく使えば正しいし、悪い使い方をすれば駄目になるというシンプルな話。
そんなわけで break が構造化を崩すか崩さないかは使い方による。
ただ、常識的に考えて break は goto より構造を破綻させにくいだろうってだけ。
997デフォルトの名無しさん (ワッチョイ 9f35-3+vo)
2025/04/27(日) 18:16:26.55ID:yHO53gwR0 ダイクストラがじゃなくてもうちょい場を学ぼう
便所でいきなり大声で演説垂れ始める人がいたらみんな引くもんなんだよw
便所でいきなり大声で演説垂れ始める人がいたらみんな引くもんなんだよw
998デフォルトの名無しさん (ワッチョイ ff39-VpId)
2025/04/27(日) 19:25:43.76ID:sqtCgEt90999デフォルトの名無しさん (スフッ Sdbf-Nh+M)
2025/04/28(月) 10:15:47.67ID:3WBgyNGdd 連接と分岐があれば反復は要らない説
1000デフォルトの名無しさん (ワッチョイ 7732-Dl8r)
2025/04/28(月) 10:19:08.06ID:AuNLagCl0レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」 [冬月記者★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 経団連会長、日中は建設的対話を 経済3団体が高市首相と初会談も日中関係は話題に登らず… [BFU★]
- 中国で「クレしん」公開延期 対日報復、エンタメに波及 [蚤の市★]
- 東京株式市場 インバウンド関連株が下落 中国政府の渡航自粛要請で [バイト歴50年★]
- 有識者「高市総理が発言を撤回したり、辞職するしかないと言っている人は、それで日中関係が今まで通りになると思ってる?」 [834922174]
- 戦争は無くならないし殺人は起きるし女はレイプされるし子供は餓死するし
- 女性検診なんでオナニーしてグチョグチョで行ってやる
- 日経時間外、5万円割れ 垂直落下始まる [402859164]
- ( ´・ω・` )朝ですぞー
- 【悲報】男性人気アイドルグループJO1、中国公演中止wwwwwwwwwwwwwwwwwwwwwwwwwww
