Hello hackers !
Qiitaは、エンジニアリングに関する知識を記録・共有するためのサービスです。
コードを書いていて気づいたことや、自分がハマったあの仕様について、
他のエンジニアと知見を共有しましょう ;)
https://qiita.com/
Qiita(キータ)は、Incrementsが運営するプログラミング情報のナレッジコミュニティ。
2016年現在で日本最大のプログラマーコミュニティとされている[1]。
https://internet.watch.impress.co.jp/docs/news/1025972.html
前スレ Qiita
https://mevius.5ch.net/test/read.cgi/tech/1542357242/
Qiita 2 - キータぞ、来たぞ、キータだぞー
https://mevius.5ch.net/test/read.cgi/tech/1658762410/
Qiita 3 - キータぞ、来たぞ、キータだぞー
https://mevius.5ch.net/test/read.cgi/tech/1685235361/
Qiita 4 - キータぞ、来たぞ、キータだぞー
https://mevius.5ch.net/test/read.cgi/tech/1705486836/
Qiita 5 - キータぞ、来たぞ、キータだぞー
https://mevius.5ch.net/test/read.cgi/tech/1717651046/
Qiita 6 - キータぞ、来たぞ、キータだぞー
https://mevius.5ch.net/test/read.cgi/tech/1739527246/
探検
Qiita 7 - キータぞ、来たぞ、キータだぞー
2025/09/13(土) 12:24:07.83ID:mucntwOq
379デフォルトの名無しさん
2025/10/22(水) 20:39:07.74ID:TnWf0U/l380デフォルトの名無しさん
2025/10/22(水) 21:14:42.57ID:Hv/mNdUH > コードを書けないのはおまえだろ
> その出力結果を見ろよ
何が起こってるか分からんとこういう反応w
> その出力結果を見ろよ
何が起こってるか分からんとこういう反応w
381デフォルトの名無しさん
2025/10/22(水) 21:44:59.81ID:5MvhTmyF 実行時間0秒ということはコンパイル時の定数化だろうね
コードを正しく書けない人が定数データをそのまま使って正しくベンチマーク計測できていない典型的な失敗例
コードを正しく書けない人が定数データをそのまま使って正しくベンチマーク計測できていない典型的な失敗例
382デフォルトの名無しさん
2025/10/22(水) 22:01:20.17ID:Hv/mNdUH383デフォルトの名無しさん
2025/10/22(水) 22:11:40.81ID:wCiIvwD8 比較ベンチを測るプログラムでコンパイル時に定数になってしまってるのは初心者あるあるでちよっと恥ずかしい
さらに定数になったことでオーバーフローチェックは軽いと主張している人は恥ずかしいを通り越してキチガイ
さらに定数になったことでオーバーフローチェックは軽いと主張している人は恥ずかしいを通り越してキチガイ
384デフォルトの名無しさん
2025/10/22(水) 22:25:59.29ID:Hv/mNdUH > さらに定数になったことでオーバーフローチェックは軽いと主張している人は恥ずかしいを通り越してキチガイ
コスト0でできるオーバーフローチェックの例を挙げただけだけど馬鹿だとこういう理解になんのなw
コスト0でできるオーバーフローチェックの例を挙げただけだけど馬鹿だとこういう理解になんのなw
385デフォルトの名無しさん
2025/10/22(水) 22:40:18.18ID:aaZcXuwG 連投クンは3つの過ちを犯している
①実行時間の比較をすべきところでコンパイル時に定数となるコードを書いてしまった
②その結果をもってコスト0だと主張
③その事例をもってオーバーフローチェックは重くないと主張
①実行時間の比較をすべきところでコンパイル時に定数となるコードを書いてしまった
②その結果をもってコスト0だと主張
③その事例をもってオーバーフローチェックは重くないと主張
386デフォルトの名無しさん
2025/10/22(水) 22:53:43.71ID:Hv/mNdUH > @実行時間の比較をすべきところでコンパイル時に定数となるコードを書いてしまった
オーバーフローチェックのコストの話だからコンパイル時にできるんなら御の字なんだよなあ。
> Aその結果をもってコスト0だと主張
俺が挙げた例ではその通り。
> Bその事例をもってオーバーフローチェックは重くないと主張
オーバーフローチェックの重い例はIDコロコロ君が挙げりゃ良いのにw
馬鹿って本気で馬鹿なんだなあという感想しかないわw
オーバーフローチェックのコストの話だからコンパイル時にできるんなら御の字なんだよなあ。
> Aその結果をもってコスト0だと主張
俺が挙げた例ではその通り。
> Bその事例をもってオーバーフローチェックは重くないと主張
オーバーフローチェックの重い例はIDコロコロ君が挙げりゃ良いのにw
馬鹿って本気で馬鹿なんだなあという感想しかないわw
387デフォルトの名無しさん
2025/10/22(水) 23:22:33.57ID:MJsEo9z/ 定数の同士の計算をコンパイル時にできるだけでしょ
普通は定数同士ではないためオーバーフローのチェックをコンパイル時にできるわけではないよ
普通は定数同士ではないためオーバーフローのチェックをコンパイル時にできるわけではないよ
388デフォルトの名無しさん
2025/10/23(木) 00:01:19.28ID:F7QtUS8E > 定数の同士の計算をコンパイル時にできるだけでしょ
同じコードで「最適化レベル3 オーバーフローチェックなし」では定数の同士の計算をコンパイル時にできていないので場合による。rustcは最適化が控えめなのでオーバーフローチェックを行ったほうがデータフロー解析を深いレベルで行なって効率良いコードを吐いてくれる可能性まである。
> 普通は定数同士ではないためオーバーフローのチェックをコンパイル時にできるわけではないよ
できる場合もあればできない場合もある。
安全性を蔑ろにして良いわけはないのでコンパイル時にできないのであれば実行時のオーバーフローチェックは行うべき。そのコストが問題になるのであればプログラマがオーバーフローしないことを保証してやれば良い。
同じコードで「最適化レベル3 オーバーフローチェックなし」では定数の同士の計算をコンパイル時にできていないので場合による。rustcは最適化が控えめなのでオーバーフローチェックを行ったほうがデータフロー解析を深いレベルで行なって効率良いコードを吐いてくれる可能性まである。
> 普通は定数同士ではないためオーバーフローのチェックをコンパイル時にできるわけではないよ
できる場合もあればできない場合もある。
安全性を蔑ろにして良いわけはないのでコンパイル時にできないのであれば実行時のオーバーフローチェックは行うべき。そのコストが問題になるのであればプログラマがオーバーフローしないことを保証してやれば良い。
389デフォルトの名無しさん
2025/10/23(木) 00:05:35.18ID:OBXMa/ZD 言い訳ばかりだな
オーバーヘッドを比較するための実行時間ベンチマークで
まともなプログラマーならばコンパイル時定数になるコードを書かない
オーバーヘッドを比較するための実行時間ベンチマークで
まともなプログラマーならばコンパイル時定数になるコードを書かない
390デフォルトの名無しさん
2025/10/23(木) 00:08:38.47ID:F7QtUS8E コンパイル時にオーバーフローチェックされた例が余程悔しかったと見えるw
391デフォルトの名無しさん
2025/10/23(木) 00:10:30.87ID:F7QtUS8E つか何で
> オーバーフローチェックのコストはとんでもなく高いんだよ。
という具体的を提示しないんだろうか?
> オーバーフローチェックのコストはとんでもなく高いんだよ。
という具体的を提示しないんだろうか?
392デフォルトの名無しさん
2025/10/23(木) 01:00:14.89ID:eRkhgGUb393デフォルトの名無しさん
2025/10/23(木) 22:48:26.28ID:qJPQXYyn 最適化レベル3 オーバーフローチェックなし
https://wandbox.org/permlink/LOcWoipF2aESW8HO
> 999999999 0.000000 sec.
最適化レベル3 オーバーフローチェックなし
https://wandbox.org/permlink/BcHSm4UljxoF26fp
> 999999999 0.192019 sec.
なるほど、確かに最適化控えめだなw
https://wandbox.org/permlink/LOcWoipF2aESW8HO
> 999999999 0.000000 sec.
最適化レベル3 オーバーフローチェックなし
https://wandbox.org/permlink/BcHSm4UljxoF26fp
> 999999999 0.192019 sec.
なるほど、確かに最適化控えめだなw
394デフォルトの名無しさん
2025/10/24(金) 10:56:06.36ID:1/8UQp8U > オーバーフローチェックのコストはとんでもなく高いんだよ。
clangより遅いRustがますます遅くなっちゃうってことか。
でもそれで安全性と天秤に掛けて安全性捨てて良いって理屈にはならんと思うが。
clangより遅いRustがますます遅くなっちゃうってことか。
でもそれで安全性と天秤に掛けて安全性捨てて良いって理屈にはならんと思うが。
395デフォルトの名無しさん
2025/10/24(金) 11:39:42.14ID:pf7VrHln Rustはオーバーフローに関しても最も充実している言語
まずデフォルトではデバッグモードとなりオーバーフローを含めた様々な問題をチェックして指摘してくれる
次にオーバーフローを取り扱う関数が30個以上と充実しておりオーバーフロー時に様々な対処ができるようになっている
さらにオーバーフローチェック強制モードを指定することもできる
まずデフォルトではデバッグモードとなりオーバーフローを含めた様々な問題をチェックして指摘してくれる
次にオーバーフローを取り扱う関数が30個以上と充実しておりオーバーフロー時に様々な対処ができるようになっている
さらにオーバーフローチェック強制モードを指定することもできる
396デフォルトの名無しさん
2025/10/24(金) 12:33:51.25ID:1/8UQp8U 肝心のユーザーが
> 64bitを使うと1秒間に100億カウントを100年間ずっと続けてもオーバーフローしない
こんなこと言ってるようじゃせっかくの機能も台無し。
こういうユーザーはオーバーフローを軽視しているので、それを扱う関数を呼んだりオーバーフローチェック強制モードを指定することもしない。
> 64bitを使うと1秒間に100億カウントを100年間ずっと続けてもオーバーフローしない
こんなこと言ってるようじゃせっかくの機能も台無し。
こういうユーザーはオーバーフローを軽視しているので、それを扱う関数を呼んだりオーバーフローチェック強制モードを指定することもしない。
397デフォルトの名無しさん
2025/10/24(金) 12:54:38.21ID:yjIuofsm Rustより優れているプログラミング言語がなく出現しそうにない
IT大手をはじめとして各社が次々とRust採用に踏み切った理由
IT大手をはじめとして各社が次々とRust採用に踏み切った理由
398デフォルトの名無しさん
2025/10/24(金) 21:32:19.69ID:Rjl1Yp+F 何をもって優れてるというのか知らんけど
採用される率だったら圧倒的に Python や JavaScript じゃないの?
採用される率だったら圧倒的に Python や JavaScript じゃないの?
399デフォルトの名無しさん
2025/10/24(金) 22:24:54.90ID:sOhxBEuL 普及している言語を採用するのは当たり前
普及してない言語をわざわざ採用するのは他の言語では代わりにならないほどメリットがある時
普及してない言語をわざわざ採用するのは他の言語では代わりにならないほどメリットがある時
400デフォルトの名無しさん
2025/10/24(金) 23:11:41.06ID:dp05dd3l > 64bitを使うと1秒間に100億カウントを100年間ずっと続けてもオーバーフローしない
この程度の実行時検出もできなくて「メリットがある」と言い張ってて草w
この程度の実行時検出もできなくて「メリットがある」と言い張ってて草w
401デフォルトの名無しさん
2025/10/25(土) 00:27:47.26ID:dZEZZMvJ 見ていてなんとなくわかってきた
プログラミング言語として敵わないからよくわからない言いがかりをつけてずっと粘着しているだけのような
プログラミング言語として敵わないからよくわからない言いがかりをつけてずっと粘着しているだけのような
402デフォルトの名無しさん
2025/10/25(土) 08:20:17.15ID:7tgM5Cd8 言語の優劣(笑)にこだわってる子が一人だけおるっていう状況かな
自己のアイデンティティを借り物で満たそうとしちゃってるね
自分がRustの作者ってんならともかく、単なるユーザでしかないのにね
自己のアイデンティティを借り物で満たそうとしちゃってるね
自分がRustの作者ってんならともかく、単なるユーザでしかないのにね
403デフォルトの名無しさん
2025/10/25(土) 08:45:36.74ID:0A7PnaiQ >>395
オーバーフローに関してそこまで充実していない言語も多いけど、なぜか充実している言語の方をしつこく叩いてるコンプレックス持ちがおるから面白い。
オーバーフローに関してそこまで充実していない言語も多いけど、なぜか充実している言語の方をしつこく叩いてるコンプレックス持ちがおるから面白い。
404デフォルトの名無しさん
2025/10/25(土) 11:38:38.14ID:APUPz67M 安全性分かってない奴がRust盲信してて笑われてるだけw
405デフォルトの名無しさん
2025/10/25(土) 11:52:03.54ID:HsDC01zZ >>52
> Rustが広まってる理由はC並みの高速実行をゼロコスト抽象化によるコードの可読性・保守性・開発効率の高さで実現したことにあるからね
> 安全性などはついでのオマケ
IDコロコロ君安全性は屁のように考えてるみたいだけど、だったら配列アクセスのたびに範囲チェックで無駄なコスト払ってるRustは良い言語ではないんじゃね? それかunsafeでポインタアクセスするのが正義?
> Rustが広まってる理由はC並みの高速実行をゼロコスト抽象化によるコードの可読性・保守性・開発効率の高さで実現したことにあるからね
> 安全性などはついでのオマケ
IDコロコロ君安全性は屁のように考えてるみたいだけど、だったら配列アクセスのたびに範囲チェックで無駄なコスト払ってるRustは良い言語ではないんじゃね? それかunsafeでポインタアクセスするのが正義?
406デフォルトの名無しさん
2025/10/25(土) 11:53:06.73ID:H3w3YKY0 安全性のためにRustを採用するところが世界的にどんどん増えているのはなぜだろう?
407デフォルトの名無しさん
2025/10/25(土) 11:59:12.87ID:APUPz67M Rustの普及と
> 安全性などはついでのオマケ
とか言っちゃう馬鹿が笑われてるのは別の話だゾw
> 安全性などはついでのオマケ
とか言っちゃう馬鹿が笑われてるのは別の話だゾw
408デフォルトの名無しさん
2025/10/25(土) 12:07:43.62ID:LnBfHi83 >>405
Rustは配列などのアクセスもゼロコスト抽象化で速さと安全性を両立してるよん
Rustは配列などのアクセスもゼロコスト抽象化で速さと安全性を両立してるよん
409デフォルトの名無しさん
2025/10/25(土) 12:58:15.22ID:APUPz67M >>408はrustcの出力見たことない人かな?
配列の範囲チェックって
https://godbolt.org/z/6johWYEce
> cmpq %rsi, %rdx
> jae .LBB0_7
↑がそれ。
ちなみにCだとこんなだ。
https://godbolt.org/z/3q4rv8P3M
配列の範囲チェックって
https://godbolt.org/z/6johWYEce
> cmpq %rsi, %rdx
> jae .LBB0_7
↑がそれ。
ちなみにCだとこんなだ。
https://godbolt.org/z/3q4rv8P3M
410デフォルトの名無しさん
2025/10/25(土) 13:03:29.33ID:APUPz67M411デフォルトの名無しさん
2025/10/25(土) 17:01:14.86ID:L+Kq+g5v C言語は、ポインタが、ヤバイくて、危ないよね。
RUST言語は、ポインタが、無いのなら、安全ぢゃねえ?
RUST言語は、ポインタが、無いのなら、安全ぢゃねえ?
412デフォルトの名無しさん
2025/10/25(土) 17:40:57.11ID:zF/r+ywr413デフォルトの名無しさん
2025/10/25(土) 18:04:23.93ID:zF/r+ywr 個人開発ならともかく、仕事で使う言語は自分の好みじゃなくて組織によって決まるものだよね
Rustが好きでも、Goのプロジェクトに入ったらGoを書く、Javaのプロジェクトに入ったらJavaを書くのがプロ
宣言的なコードが好きだからといって、OOPの言語や、for文 と if文 をひたすら書かされる言語では仕事したくないです、なんてのは社会人としてだめでしょ
(Rustを使える企業に転職する、という選択ができる人は別だけど)
Rustが好きでも、Goのプロジェクトに入ったらGoを書く、Javaのプロジェクトに入ったらJavaを書くのがプロ
宣言的なコードが好きだからといって、OOPの言語や、for文 と if文 をひたすら書かされる言語では仕事したくないです、なんてのは社会人としてだめでしょ
(Rustを使える企業に転職する、という選択ができる人は別だけど)
414デフォルトの名無しさん
2025/10/25(土) 19:23:29.07ID:KXTmWn4e 企業や立場によってピンキリだよ
そういう歯車として使われる人もいればそうでない人もいる
そういう歯車として使われる人もいればそうでない人もいる
415デフォルトの名無しさん
2025/10/25(土) 19:50:23.21ID:SFAxzZT/ どの分野でもAとBの比較の話をしている時に同じことが起きてるな
純粋にそれぞれの特徴やメリットで優劣を比較すればいい
ところが不利になった側はどの話でもこう言い出す
Aを使うやつはXXXだ!Aの価値よりおまえの価値はどうなんだ!
AとBの比較から逃避して人間の攻撃を始める
純粋にそれぞれの特徴やメリットで優劣を比較すればいい
ところが不利になった側はどの話でもこう言い出す
Aを使うやつはXXXだ!Aの価値よりおまえの価値はどうなんだ!
AとBの比較から逃避して人間の攻撃を始める
416デフォルトの名無しさん
2025/10/25(土) 19:55:57.53ID:waw5U/cg なんか話がズレまくってるなここ
417デフォルトの名無しさん
2025/10/25(土) 19:56:03.79ID:N83OYtmK > オーバーフローチェックのコストはとんでもなく高いんだよ。
> 劇的に遅くなることが判っているよ。
とか
> 安全性などはついでのオマケ
とか言ってる人は根本的なところがわかってないので言語を選定したりプロジェクトを先導する立場に立たせてはダメ。
> 劇的に遅くなることが判っているよ。
とか
> 安全性などはついでのオマケ
とか言ってる人は根本的なところがわかってないので言語を選定したりプロジェクトを先導する立場に立たせてはダメ。
418デフォルトの名無しさん
2025/10/25(土) 20:04:36.75ID:nC0XVvFS 安全性と速さの両立が最重要だもんな
利害対立し合うIT大手企業が珍しく揃ってそのために選択したRustを用いるのが正しい
利害対立し合うIT大手企業が珍しく揃ってそのために選択したRustを用いるのが正しい
419デフォルトの名無しさん
2025/10/25(土) 20:25:04.83ID:N83OYtmK > 安全性と速さの両立が最重要だもんな
↑馬鹿発見w
↑馬鹿発見w
420デフォルトの名無しさん
2025/10/25(土) 20:33:41.34ID:TVzQqIlO 安全性と速さだけではダメ
高い抽象度で読み書きしやすいことが大切
Rustはそこを満たしたからこそ新たな移行先になった
高い抽象度で読み書きしやすいことが大切
Rustはそこを満たしたからこそ新たな移行先になった
421デフォルトの名無しさん
2025/10/25(土) 22:07:09.40ID:APUPz67M422デフォルトの名無しさん
2025/10/25(土) 22:29:45.32ID:OtGrSoGw423デフォルトの名無しさん
2025/10/25(土) 22:31:29.44ID:vZIJ37nc 言語の良し悪しを語ってる時点で草なんよね
だって俺らは与えられた言語で仕事するだけだから
C++でもPerlでもPHPでも書くだけだから
You play with the cards you're dealt.
だって俺らは与えられた言語で仕事するだけだから
C++でもPerlでもPHPでも書くだけだから
You play with the cards you're dealt.
424デフォルトの名無しさん
2025/10/25(土) 22:36:24.17ID:Oc43Pjaf >>423
IT土方は仕事を選べないもんな
IT土方は仕事を選べないもんな
425デフォルトの名無しさん
2025/10/25(土) 22:58:03.75ID:vZIJ37nc はい(真顔)
426デフォルトの名無しさん
2025/10/25(土) 23:15:04.51ID:9ui6NOtA 土方が無理に言語の優劣の話にクビを突っ込まなくてもいいけど
新たな優秀な言語が出現したチャンスと捉えて習得して土方を脱出する手もある
新たな優秀な言語が出現したチャンスと捉えて習得して土方を脱出する手もある
427デフォルトの名無しさん
2025/10/25(土) 23:23:22.89ID:RL99M0X7 > 普通のプログラミングでunsafeを使うことはない
と言ってる人はunsafeが使われてる標準ライブラリも使わないのかな?
と言ってる人はunsafeが使われてる標準ライブラリも使わないのかな?
428デフォルトの名無しさん
2025/10/25(土) 23:28:59.12ID:JGY3STeT429デフォルトの名無しさん
2025/10/25(土) 23:40:35.95ID:RL99M0X7 > 普通のRustプログラミングでunsafeは使われない
ああ低レイヤに縁のない人か
ああ低レイヤに縁のない人か
430デフォルトの名無しさん
2025/10/25(土) 23:53:30.01ID:EfkNjJ0Z 低レイヤの意味は複数あるけど
いずれも可能な限りunsafeは使われないね
効率面でunsafe必要になるパターン一般化されてプログラムの外部へ切り出されてライブラリ化されるよ
そうしてできたのがRustの標準ライブラリ
いずれも可能な限りunsafeは使われないね
効率面でunsafe必要になるパターン一般化されてプログラムの外部へ切り出されてライブラリ化されるよ
そうしてできたのがRustの標準ライブラリ
431デフォルトの名無しさん
2025/10/26(日) 01:56:48.53ID:GI8xQK7J 画像処理でピクセルを走査するようなケースだと unsafe なポインタ操作は必須じゃないの?
インデックスアクセスだと範囲チェックのコストがかかるし
単に1画素を1画素にマップするだけならほぼノーコストでイテレーターを使えるだろうけど、周辺画素を参照する操作もよくあるから単純なイテレーターは使えないし
インデックスアクセスだと範囲チェックのコストがかかるし
単に1画素を1画素にマップするだけならほぼノーコストでイテレーターを使えるだろうけど、周辺画素を参照する操作もよくあるから単純なイテレーターは使えないし
432デフォルトの名無しさん
2025/10/26(日) 01:59:51.53ID:GI8xQK7J あとはCとのFFI
過去に書かれたC/C++資産の利用はRustでやりたいことの一つだろうし、これは流石に標準ライブラリのような「一般的なユーザーは使わない」ものでは無いと思う
過去に書かれたC/C++資産の利用はRustでやりたいことの一つだろうし、これは流石に標準ライブラリのような「一般的なユーザーは使わない」ものでは無いと思う
433デフォルトの名無しさん
2025/10/26(日) 02:39:48.97ID:PJJMD6bT Rustのunsafeは他の言語と同じ様の状況になりますよという意味で、コンパイルが通っても安全性を保証しませんという意味。
つまり他の言語と同様に、unsafeな部分の安全性は人間が保証してください、がRustのunsafe。
したがって他の言語とリンクする場合にその境界部分がunsafeになるのは当たり前でこれを避けることはできない。
しかしパターン化できる場合はunsafe使用部分をライブラリの中に閉じ込めてそれを安全に用いることもできる。
例えばPythonのライブラリをRustのPyO3クレートで作成する場合など。
つまり他の言語と同様に、unsafeな部分の安全性は人間が保証してください、がRustのunsafe。
したがって他の言語とリンクする場合にその境界部分がunsafeになるのは当たり前でこれを避けることはできない。
しかしパターン化できる場合はunsafe使用部分をライブラリの中に閉じ込めてそれを安全に用いることもできる。
例えばPythonのライブラリをRustのPyO3クレートで作成する場合など。
434デフォルトの名無しさん
2025/10/26(日) 03:35:04.78ID:uL5v2PLc 低レイヤに縁がない人がオーバーフローチェックを否定してるのがわけわからんのよねw
低レイヤ担当は色々手段を尽くして実行効率が良くて安全なものを提供してると思うんだけどそれに乗っかってる側は自分が書いてるコードの実行効率を気にするよりは安全性を重視するべきではないの?
低レイヤ担当は色々手段を尽くして実行効率が良くて安全なものを提供してると思うんだけどそれに乗っかってる側は自分が書いてるコードの実行効率を気にするよりは安全性を重視するべきではないの?
435デフォルトの名無しさん
2025/10/26(日) 04:33:18.62ID:SK2IH7bS また言語の話で不利になったため逃げて、
妄想上の人の話へとすり替えようとしてる
妄想上の人の話へとすり替えようとしてる
436デフォルトの名無しさん
2025/10/26(日) 09:10:11.83ID:+y7r90/A もうQiita関係ないな
437デフォルトの名無しさん
2025/10/26(日) 20:55:09.12ID:v+5C5Bjl IDコロコロくんは面白いなw
438デフォルトの名無しさん
2025/10/27(月) 06:58:16.48ID:x+p8Wgca せやな
439デフォルトの名無しさん
2025/10/29(水) 20:12:21.16ID:oGx2PQGm 『Cから学ぶRustの良さ』
3年前に書かれた記事だがトレンドに挙がってたので初めて見た。
酷い記事だなあ。なんで90人もいいねしてんの?
3年前に書かれた記事だがトレンドに挙がってたので初めて見た。
酷い記事だなあ。なんで90人もいいねしてんの?
440デフォルトの名無しさん
2025/10/29(水) 23:35:08.75ID:xnDexBBj >>439
C/C++は弱い型付け言語なのでサイズの異なる型への自動変換が起きることに加えて8bit環境以外では
Cでは sizeof('a') == sizeof(123)
C++では sizeof('a') != sizeof(123)
などの無茶苦茶な仕様が混乱に拍車をかけているよな
C/C++は弱い型付け言語なのでサイズの異なる型への自動変換が起きることに加えて8bit環境以外では
Cでは sizeof('a') == sizeof(123)
C++では sizeof('a') != sizeof(123)
などの無茶苦茶な仕様が混乱に拍車をかけているよな
441デフォルトの名無しさん
2025/10/29(水) 23:46:47.92ID:kkKNfkqN AIに聞いたら聞き返された
もしよろしければ、あなたが特に「酷い」と感じた記事の具体的な内容や論点について教えていただけますか?
それについて、Rustの技術的な視点から掘り下げて解説することもできます。
もしよろしければ、あなたが特に「酷い」と感じた記事の具体的な内容や論点について教えていただけますか?
それについて、Rustの技術的な視点から掘り下げて解説することもできます。
442デフォルトの名無しさん
2025/10/30(木) 01:06:50.83ID:Hkp2/Mla ChatGPTに
> この記事読めますか? https://qiita.com/uv_ussy/items/71248bdd081089b7ba09
> 前述の記事には誤りと思われる個所が複数あると思います。気が付いた点があれば挙げてみてください。
と訊いたら
> 確認できた範囲で、記事「Rust と C の比較(著:ushijima ryosuke/uv_ussy)に 誤りまたは誤解を招きやすい記述 がいくつかあります。いくつか挙げますので、もしよければさらに掘り下げましょう。
と言って気になった点というのを 5点挙げてくれたけどな? >>441はどういう聞き方したんだろう?
> この記事読めますか? https://qiita.com/uv_ussy/items/71248bdd081089b7ba09
> 前述の記事には誤りと思われる個所が複数あると思います。気が付いた点があれば挙げてみてください。
と訊いたら
> 確認できた範囲で、記事「Rust と C の比較(著:ushijima ryosuke/uv_ussy)に 誤りまたは誤解を招きやすい記述 がいくつかあります。いくつか挙げますので、もしよければさらに掘り下げましょう。
と言って気になった点というのを 5点挙げてくれたけどな? >>441はどういう聞き方したんだろう?
443デフォルトの名無しさん
2025/10/30(木) 01:16:31.30ID:L8pN1QHs444デフォルトの名無しさん
2025/10/30(木) 01:40:41.25ID:Hkp2/Mla >>443
俺はお前が「AIに聞いたら聞き返された」って馬鹿なこと言ってるから面白がってるだけよ?
俺はお前が「AIに聞いたら聞き返された」って馬鹿なこと言ってるから面白がってるだけよ?
445デフォルトの名無しさん
2025/10/30(木) 01:43:15.62ID:Hkp2/Mla > レスの全文を正確にコピペしただけ
アドレスも貼らんでAIが理解してくれるって認識かw
アドレスも貼らんでAIが理解してくれるって認識かw
446デフォルトの名無しさん
2025/10/30(木) 02:40:13.26ID:pCIdJOGw447デフォルトの名無しさん
2025/10/30(木) 08:28:20.42ID:lzfhCIfj > C/C++は弱い型付け言語なので
それはそう。
> サイズの異なる型への自動変換が起きることに加えて
サイズの同じ異なる型への自動変換もあるからサイズ関係ないぞ。件の記事はなんでかサイズで説明してるが。
> 8bit環境以外では
> Cでは sizeof('a') == sizeof(123)
> C++では sizeof('a') != sizeof(123)
> などの無茶苦茶な仕様が混乱に拍車をかけているよな
件の記事ではCとC++の仕様の違いについて言及してないね。「8bit環境以外では」も意味不明。結論的には>>440はバカ。
それはそう。
> サイズの異なる型への自動変換が起きることに加えて
サイズの同じ異なる型への自動変換もあるからサイズ関係ないぞ。件の記事はなんでかサイズで説明してるが。
> 8bit環境以外では
> Cでは sizeof('a') == sizeof(123)
> C++では sizeof('a') != sizeof(123)
> などの無茶苦茶な仕様が混乱に拍車をかけているよな
件の記事ではCとC++の仕様の違いについて言及してないね。「8bit環境以外では」も意味不明。結論的には>>440はバカ。
448デフォルトの名無しさん
2025/10/30(木) 08:58:26.48ID:DCpoislO Cの時点でぐちゃぐちゃなのにC++が互換性を持たせずに変えてしまった部分だからめちゃくちゃになってるところ
449デフォルトの名無しさん
2025/10/31(金) 08:16:40.44ID:dfFjY6H8 >>439の記事の筆者名検索するとFaceBookのページ出てくるけど国立大学で情報工学専攻でこれというのはいろいろ考えてしまうな。
450デフォルトの名無しさん
2025/10/31(金) 23:01:52.88ID:dfFjY6H8 IDコロコロ君はRustスレにも迷惑掛けてるのかw
もう自分を迷惑な人材として認識しておとなしくすりゃ良いのにねw
もう自分を迷惑な人材として認識しておとなしくすりゃ良いのにねw
451デフォルトの名無しさん
2025/11/01(土) 10:19:13.22ID:QCwdg/pu 12月1日から25日まで、みんなで技術記事を投稿して、カレンダーを埋め尽くそう
qiita.com/advent-calendar/2025
完走チャレンジ賞の達成条件は以下です。
・1人で15~24記事投稿した方を表彰します。
プレゼントカレンダーは2025/10/31~2025/12/31に記事を投稿
期間が2つある
qiita.com/advent-calendar/2025
完走チャレンジ賞の達成条件は以下です。
・1人で15~24記事投稿した方を表彰します。
プレゼントカレンダーは2025/10/31~2025/12/31に記事を投稿
期間が2つある
452デフォルトの名無しさん
2025/11/01(土) 12:59:34.87ID:wOU/NDvb >>447
それが意味不明で分からないなら馬鹿はお前の方では?
それが意味不明で分からないなら馬鹿はお前の方では?
453デフォルトの名無しさん
2025/11/01(土) 13:07:22.38ID:KM9f//71 『stdio.hやiostream.hの中身を見る方法』
/usr/include/ かINCLUDEが指してる先見に行った方が早くね?
/usr/include/ かINCLUDEが指してる先見に行った方が早くね?
454デフォルトの名無しさん
2025/11/01(土) 13:40:27.56ID:IJ9tr23i > 8bit環境以外では
> Cでは sizeof('a') == sizeof(123)
> C++では sizeof('a') != sizeof(123)
8bit環境に限っては↑のようにならないとでも言いたげだがC言語では'a'の型はintなので
sizeof('a') == sizeof(123)
は常に1となる。
C++では'a'の型はcharなのでcharのサイズがintと同一な環境でもない限りは
sizeof('a') != sizeof(123)
は常にtrueとなる。C++は規格としてintのサイズは最小でも16bitあるから仮にcharのサイズがintと同一の環境であれば
sizeof('a') != sizeof(123)
はfalseとなるが>>440が言ってる8bit環境とやらはcharのサイズが16bitあるのかな?
結論的には>>452もバカ。
> Cでは sizeof('a') == sizeof(123)
> C++では sizeof('a') != sizeof(123)
8bit環境に限っては↑のようにならないとでも言いたげだがC言語では'a'の型はintなので
sizeof('a') == sizeof(123)
は常に1となる。
C++では'a'の型はcharなのでcharのサイズがintと同一な環境でもない限りは
sizeof('a') != sizeof(123)
は常にtrueとなる。C++は規格としてintのサイズは最小でも16bitあるから仮にcharのサイズがintと同一の環境であれば
sizeof('a') != sizeof(123)
はfalseとなるが>>440が言ってる8bit環境とやらはcharのサイズが16bitあるのかな?
結論的には>>452もバカ。
455デフォルトの名無しさん
2025/11/01(土) 13:50:33.72ID:B/e2fvdA そういう基本的な部分でCとC++の扱いが違うなんて失敗言語だよなあ
456デフォルトの名無しさん
2025/11/01(土) 15:57:18.25ID:QSMh1nGC C++では'a'の型はchar
知らんまま書いとったわw
知らんまま書いとったわw
457デフォルトの名無しさん
2025/11/02(日) 13:42:32.21ID:zw4M8eHQ 『データ構造入門(1) - ポインタ・配列・構造体』
https://qiita.com/juna1013/items/406723a90ceeff3b04a9#comment-336c986ee3daed589a0f
> 学習のためなら、一度はコンパイルして実行した方がよいと思います。
> C++ならコンパイルエラーになってくれます。
コンパイル確認しろはその通りだがCのタグついててC++のタグはない記事のコードになんでC++でコンパイルなんて言うかなあ?
>>455 同様CとC++が違う言語と認識できてない人かな。
https://qiita.com/juna1013/items/406723a90ceeff3b04a9#comment-336c986ee3daed589a0f
> 学習のためなら、一度はコンパイルして実行した方がよいと思います。
> C++ならコンパイルエラーになってくれます。
コンパイル確認しろはその通りだがCのタグついててC++のタグはない記事のコードになんでC++でコンパイルなんて言うかなあ?
>>455 同様CとC++が違う言語と認識できてない人かな。
458デフォルトの名無しさん
2025/11/02(日) 14:35:56.04ID:Z91049yH459デフォルトの名無しさん
2025/11/02(日) 14:53:51.62ID:zw4M8eHQ CとC++が違う言語と認識できてない人が早速現れたw
460デフォルトの名無しさん
2025/11/02(日) 15:01:26.49ID:QN/Mkn5m >>459は誰に対して言ってるんだ?
461デフォルトの名無しさん
2025/11/02(日) 15:18:30.34ID:Z91049yH CでもC++でもint genderに"man" や"woman"を入れるべきではない
エラーにできない言語を使うべきではない
エラーにできない言語を使うべきではない
462デフォルトの名無しさん
2025/11/02(日) 20:42:12.68ID:qZwCnQv/ C言語でポインタ値をintのオブジェクトに代入するべきでないという話はCの規格やコンパイラの吐いた警告で説明できるのだしルールも異なる他の言語引き合いに出す意味はないんだよなあ。
また、C言語は使うべきでないという個人の主張はC言語を学ぼうとしてるQiitaの記事とは関係ないから他所でやるべき。
また、C言語は使うべきでないという個人の主張はC言語を学ぼうとしてるQiitaの記事とは関係ないから他所でやるべき。
463デフォルトの名無しさん
2025/11/02(日) 22:02:55.28ID:wB1CjVuc Cコンパイラしかない組み込み用CPUを使う場合しかCを使う機会ないよな
ほとんどの人にCは不要という現実を教えてあげたほうがよい
ほとんどの人にCは不要という現実を教えてあげたほうがよい
464デフォルトの名無しさん
2025/11/02(日) 22:10:57.03ID:qZwCnQv/ >>463は主要な部分をCで組まれたLinuxも使わないで済む世界の住人かな
465デフォルトの名無しさん
2025/11/02(日) 22:27:16.77ID:ONf1Jw+O 現在LinuxのカーネルモジュールはRustで書くのがメインとなってるよ
カーネルコアはCのままだけど我々がコードを書く部分はカーネルモジュール
カーネルコアはCのままだけど我々がコードを書く部分はカーネルモジュール
466デフォルトの名無しさん
2025/11/02(日) 22:57:14.90ID:zw4M8eHQ > 現在LinuxのカーネルモジュールはRustで書くのがメインとなってるよ
> カーネルコアはCのままだけど我々がコードを書く部分はカーネルモジュール
馬鹿なこと投稿する前にAIに「LinuxのRustの導入ってどれくらい進んでるの? 」とか訊いたら良いのにねw
> カーネルコアはCのままだけど我々がコードを書く部分はカーネルモジュール
馬鹿なこと投稿する前にAIに「LinuxのRustの導入ってどれくらい進んでるの? 」とか訊いたら良いのにねw
467デフォルトの名無しさん
2025/11/02(日) 23:37:05.58ID:no5erObI Linuxの新たなカーネルモジュールはRustで書かれるようになったな
カーネルモジュールのせいで落ちたりセキュリティホールになることを嫌って新たなものから安全性の高いRustで書くことになった
カーネルモジュールの一つであるデバイスドライバもRust製へ
カーネルモジュールのせいで落ちたりセキュリティホールになることを嫌って新たなものから安全性の高いRustで書くことになった
カーネルモジュールの一つであるデバイスドライバもRust製へ
468デフォルトの名無しさん
2025/11/03(月) 03:05:07.69ID:yMsGdutJ rustきっしょいライブラリやめてC++みてえなのに置き換えりゃいいのに
469デフォルトの名無しさん
2025/11/03(月) 13:41:34.84ID:3NKnizwX Rustはgithubにある面白そうなリポジトリでgit cloneしてビルドしてみると外部クレートでビルドが失敗するパターンが多くて損してる希ガス。
Rust開発チームの方針なのだろうけどよく使われるライブラリは保守まで組織的に面倒見る体制は必要だと思う。
Rust開発チームの方針なのだろうけどよく使われるライブラリは保守まで組織的に面倒見る体制は必要だと思う。
470デフォルトの名無しさん
2025/11/03(月) 13:59:58.31ID:bnpHrxT9 >>469
Rustはバージョン管理がしっかりしてるからビルド失敗に滅多に出逢わないよ
バージョン指定していない古いexampleでコンパイルできなかったことがあるくらいかな
具体的に何が失敗したの?
Rustはバージョン管理がしっかりしてるからビルド失敗に滅多に出逢わないよ
バージョン指定していない古いexampleでコンパイルできなかったことがあるくらいかな
具体的に何が失敗したの?
471デフォルトの名無しさん
2025/11/03(月) 14:13:09.36ID:3NKnizwX >>470
chatgptに訊いてやったからあとは自分で調べてね。
> あなた:
> githubにあるRustで書かれたリポジトリで外部クレートが原因でビルドが通らない問題ってstackoverflowとかで質問に上がることってありますか?
> ChatGPT:
> はい、かなり頻繁にあります。
> Rustのプロジェクト(特にGitHubで公開されているオープンソースのもの)では、外部クレート(依存クレート)に起因するビルドエラーは非常に一般的で、Stack OverflowやGitHub Issuesなどでよく質問・報告されています。
(以下略)
chatgptに訊いてやったからあとは自分で調べてね。
> あなた:
> githubにあるRustで書かれたリポジトリで外部クレートが原因でビルドが通らない問題ってstackoverflowとかで質問に上がることってありますか?
> ChatGPT:
> はい、かなり頻繁にあります。
> Rustのプロジェクト(特にGitHubで公開されているオープンソースのもの)では、外部クレート(依存クレート)に起因するビルドエラーは非常に一般的で、Stack OverflowやGitHub Issuesなどでよく質問・報告されています。
(以下略)
472デフォルトの名無しさん
2025/11/03(月) 14:59:51.90ID:hc/0IVOY RustはCargo.tomlでversionなど指定していれば古い昔のものでもコンパイルが通る。
指定してなければ最新のversionのものを使おうとするからコンパイルの通らないことが起きる。
ここまでは外部クレートのせいではなくそれ自身の問題。
指定してなければ最新のversionのものを使おうとするからコンパイルの通らないことが起きる。
ここまでは外部クレートのせいではなくそれ自身の問題。
473デフォルトの名無しさん
2025/11/03(月) 16:33:56.23ID:T5VYthB7 ChatGPTは依存クレートに起因するビルドエラーの原因を複数挙げるけどこれで論破したつもりかな?
474デフォルトの名無しさん
2025/11/03(月) 16:38:27.98ID:T5VYthB7475デフォルトの名無しさん
2025/11/03(月) 16:40:19.30ID:T5VYthB7476デフォルトの名無しさん
2025/11/03(月) 17:34:50.05ID:hc/0IVOY Rustのよく使われてるライブラリなら現実に問題が起きていないから妄想を語っても意味ないかと。
477デフォルトの名無しさん
2025/11/03(月) 17:57:47.09ID:T5VYthB7 IDコロコロ君Rustスレでは複おじと呼ばれてて「もはや一周回ってRustアンチまである」とまで言われてるのは草w
478デフォルトの名無しさん
2025/11/03(月) 19:34:23.76ID:rQkJBpL5 相当昔だけどいくつかのproc_macroが意図せず公開されていたsynのプライベートアイテムに依存してて
synがしれっとバージョンアップでパスを消して以降ビルド通らなくなるみたいなことはあった
https://github.com/nushell/nushell/issues/2867
synがしれっとバージョンアップでパスを消して以降ビルド通らなくなるみたいなことはあった
https://github.com/nushell/nushell/issues/2867
レスを投稿する
ニュース
- 【速報】習主席とトランプ大統領が電話会談 台湾問題について★2 [ニョキニョキ★]
- 【速報】習主席とトランプ大統領が電話会談 台湾問題について★3 [ニョキニョキ★]
- 人生初黒星の神童、那須川天心がリング上で土下座 [牛丼★]
- 中国人「『日本は危ないから行かないように』と言われたが、日本に来たらとても安全だった」 [お断り★]
- 石破前総理「どうすれば台湾有事にならないかを考えるべき」★2 [1ゲットロボ★]
- 毛寧(もう・ねい)報道官 「日本は実際の行動で対話への誠意を示すべき」 中国、高市首相に改めて発言撤回を要求 [ぐれ★]
- 【号外】習近平、米大統領のトランプと首脳会談を行う!日本のの武力による台湾脅しついて共有の追及をする意思統一でおこなう [339712612]
- 【高市朗報】高橋洋一「これあまり知られてないんですが、財政が悪化し続けば勝手に円高になります」🤔・・・😰??? [931948549]
- ブスな女って結婚できないから就職の場面ではもっと評価されていいはずじゃね?
- 【高市悲報】トランプおやびん「偉大な指導者である習近平首席、米国は中国にとっての台湾問題の重要性を理解しています」 [115996789]
- まったりおじゃる丸待機スレ🏡
- 「琉球有事は中国有事」 中国のネトウヨが拡散 これには日本のネトウヨ叩きのめされる [241672384]
