公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust
公式ドキュメント
https://www.rust-lang.org/learn
Web上の実行環境
https://play.rust-lang.org
※Rustを学びたい人はまず最初に公式のThe Bookを読むこと
https://doc.rust-lang.org/book/
※Rustを学ぶ際に犯しがちな12の過ち
https://dystroy.org/blog/how-not-to-learn-rust
※Rustのasyncについて知りたければ「async-book」は必読
https://rust-lang.github.io/async-book/
※次スレは原則>>980が立てること
前スレ
Rust part36
https://mevius.5ch.io/test/read.cgi/tech/1779974768/
ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.5ch.io/test/read.cgi/tech/1514107621/
Rust part37
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2026/07/17(金) 19:12:31.24ID:yl11920u652デフォルトの名無しさん
2026/07/21(火) 15:13:35.13ID:kXoc5vQo >>651
ローカル変数のある領域の話をしているのでは?
ローカル変数のある領域の話をしているのでは?
653デフォルトの名無しさん
2026/07/21(火) 15:14:32.40ID:bNNm5rfo654デフォルトの名無しさん
2026/07/21(火) 15:16:03.38ID:2WiNYKUy655デフォルトの名無しさん
2026/07/21(火) 15:16:14.13ID:tubUJsTp656デフォルトの名無しさん
2026/07/21(火) 15:17:04.09ID:2WiNYKUy >>653
スタックで実装されているかどうかは機種アーキテクチャに依る
スタックで実装されているかどうかは機種アーキテクチャに依る
657デフォルトの名無しさん
2026/07/21(火) 15:17:45.78ID:tubUJsTp >>654はちゃんとした話はする気ないからやっぱりスルーでいいんだよ
荒らしは放置安定
荒らしは放置安定
658デフォルトの名無しさん
2026/07/21(火) 15:19:02.28ID:FH4yxgtk 何聞かれてるか回答見るまで理解できてなかったのか
659デフォルトの名無しさん
2026/07/21(火) 15:19:18.93ID:2WiNYKUy660デフォルトの名無しさん
2026/07/21(火) 15:20:47.40ID:FH4yxgtk もうこの荒らしについて言及するの禁止な
ID:2WiNYKUyにレスすんな
ID:2WiNYKUyにレスすんな
661デフォルトの名無しさん
2026/07/21(火) 15:22:04.19ID:J9RlHKjx >>637
Windowsが1MiB、Unix系が8MiBなんだっけ?
Windowsが1MiB、Unix系が8MiBなんだっけ?
662デフォルトの名無しさん
2026/07/21(火) 15:22:57.37ID:2WiNYKUy >>660
意味のないことを一つも書いていないおまえが荒らしだろ
意味のないことを一つも書いていないおまえが荒らしだろ
663デフォルトの名無しさん
2026/07/21(火) 15:23:24.83ID:jQxUHqaw Windowsはそうだけど、Unix系と言っても広いからなあ
まあ、デスクトップとモバイルだけならmacOSとLinuxだけ考えればいいんだろうけど
macOSとLinuxだけなら8MiBであってたはず
まあ、デスクトップとモバイルだけならmacOSとLinuxだけ考えればいいんだろうけど
macOSとLinuxだけなら8MiBであってたはず
664デフォルトの名無しさん
2026/07/21(火) 15:25:12.62ID:t00ocqsc Linuxでも組み込みだと違いそうだよな
665デフォルトの名無しさん
2026/07/21(火) 15:27:20.73ID:40SuJKkv > スタック領域を指しているかヒープ領域を指しているか区別して扱わなくても安全
そんなことはみんなわかってる
> 取り扱う参照がスタック領域を指しているかヒープ領域を指しているか区別することなく全く同様に扱える
それは全く別の話だぞおい
ってだけなんだよな
そんなことはみんなわかってる
> 取り扱う参照がスタック領域を指しているかヒープ領域を指しているか区別することなく全く同様に扱える
それは全く別の話だぞおい
ってだけなんだよな
666デフォルトの名無しさん
2026/07/21(火) 15:30:15.43ID:DT06qJlN >>665
厳密に言えば区別せずにスタックに大きな構造体なり配列なりを置きまくってたらスタックオーバーフローすることはあるから、メモリ安全なだけで他の安全は保障されてないんだけどな
厳密に言えば区別せずにスタックに大きな構造体なり配列なりを置きまくってたらスタックオーバーフローすることはあるから、メモリ安全なだけで他の安全は保障されてないんだけどな
667デフォルトの名無しさん
2026/07/21(火) 15:35:58.30ID:2WiNYKUy >>661
基本はそうだけど
特にRustの場合はメインスレッドと新規スレッドで異なる点が重要
メインスレッドはOSレベルで指定でLinuxなら8MBがデフォルトだがulimit -sで自由に変更できる
新規スレッドはRustの中で指定でデフォルトは2MBだがスレッドのビルダーで自由に指定できる
だからRustではサイズの大きなものをスタック上に置ける
基本はそうだけど
特にRustの場合はメインスレッドと新規スレッドで異なる点が重要
メインスレッドはOSレベルで指定でLinuxなら8MBがデフォルトだがulimit -sで自由に変更できる
新規スレッドはRustの中で指定でデフォルトは2MBだがスレッドのビルダーで自由に指定できる
だからRustではサイズの大きなものをスタック上に置ける
668デフォルトの名無しさん
2026/07/21(火) 15:46:56.23ID:I5lpyWej >>667
まあ大きくしすぎてもでメリットがあるからあんまやらないし、新規スレッドだけの話だからどこでも自由なわけでもないし、使い分けを意識してない奴ができることでもないんだけどな
まあ大きくしすぎてもでメリットがあるからあんまやらないし、新規スレッドだけの話だからどこでも自由なわけでもないし、使い分けを意識してない奴ができることでもないんだけどな
669デフォルトの名無しさん
2026/07/21(火) 15:47:46.31ID:XIv+O+su そいつは放置しろって言ってるだろ
670デフォルトの名無しさん
2026/07/21(火) 15:54:29.22ID:2WiNYKUy >>668
スタック領域を大きくして使うことは
ヒープを使うことと比べて不利にならない
新規スレッドだけの話ではなくメインスレッドもスタックを大きくして使われている
ulimit -sで誰でも変更可能でその後に起動すればメインスレッドのスタックを大きく使えるため
スタック領域を大きくして使うことは
ヒープを使うことと比べて不利にならない
新規スレッドだけの話ではなくメインスレッドもスタックを大きくして使われている
ulimit -sで誰でも変更可能でその後に起動すればメインスレッドのスタックを大きく使えるため
671デフォルトの名無しさん
2026/07/21(火) 16:03:56.55ID:8y3GD3Tf >>670
スタック領域に大きなデータを置くと関数の壁を跨ぐ度にディープコピーになる
これは当然動作速度に悪影響を与える
ヒープ領域なら .clone() しない限りムーブになるので、シャローコピーして所有権を渡すだけなのでこの悪影響を回避できる
スタック領域に大きなデータを置くと関数の壁を跨ぐ度にディープコピーになる
これは当然動作速度に悪影響を与える
ヒープ領域なら .clone() しない限りムーブになるので、シャローコピーして所有権を渡すだけなのでこの悪影響を回避できる
672デフォルトの名無しさん
2026/07/21(火) 16:04:57.47ID:xd5iI70P >>670
ulimitが必要な時点でデメリットあるやんけ
ulimitが必要な時点でデメリットあるやんけ
673デフォルトの名無しさん
2026/07/21(火) 16:05:38.98ID:2WiNYKUy >>671
Rust初心者でもそんな間違いしないぞ
Rust初心者でもそんな間違いしないぞ
674デフォルトの名無しさん
2026/07/21(火) 16:06:00.04ID:AeCBf1sw >>671
そっか、moveが標準だからヒープをわざわざコピーするわけないのか
そっか、moveが標準だからヒープをわざわざコピーするわけないのか
675デフォルトの名無しさん
2026/07/21(火) 16:06:45.90ID:AeCBf1sw また何が間違いなのかも言わずに間違いだと主張する荒らし仕草が出たな
676デフォルトの名無しさん
2026/07/21(火) 16:09:01.68ID:HmEIVqbd677デフォルトの名無しさん
2026/07/21(火) 16:10:12.70ID:O12s/9BG 可変借用は元のところに返すわけじゃないならデメリットが大きいからなあ
わざわざ大きなデータを置いて寿命を気にして可変借用を引き回すより、ヒープに置いてムーブした方が素直な実装になって楽なんだよな
わざわざ大きなデータを置いて寿命を気にして可変借用を引き回すより、ヒープに置いてムーブした方が素直な実装になって楽なんだよな
678デフォルトの名無しさん
2026/07/21(火) 16:10:44.00ID:TYtR9CLl >>676
アンカー間違ってますよ
アンカー間違ってますよ
679デフォルトの名無しさん
2026/07/21(火) 16:11:10.33ID:S3O97n0J680デフォルトの名無しさん
2026/07/21(火) 16:12:22.16ID:q4wR5dpo 自閉症はC#みたいなのを好む
馬鹿だから😂
馬鹿だから😂
681デフォルトの名無しさん
2026/07/21(火) 16:13:11.43ID:fB1yulXn 大きなデータをスタックに置くと他所で書き換える用途が1つあるだけで可変借用が面倒なことになるよな
ムーブできないのはめんどくさい
ムーブできないのはめんどくさい
682デフォルトの名無しさん
2026/07/21(火) 16:13:12.93ID:FfUaKNHi683デフォルトの名無しさん
2026/07/21(火) 16:13:49.10ID:fB1yulXn 何も考えず上げるアホのせいで荒らしが増えたな
684デフォルトの名無しさん
2026/07/21(火) 16:15:20.14ID:ahw91GYg 荒らしが仲間読んで増えちゃってるじゃん
だから話しかけんなって言ってんのに
だから話しかけんなって言ってんのに
685デフォルトの名無しさん
2026/07/21(火) 16:15:27.18ID:2WiNYKUy686sage
2026/07/21(火) 16:18:58.43ID:Hil5y1j1 ageで荒らしが来るって5chをPCで操作してるのかな?いろいろ時代遅れ極まりない
【専ブラ】5ちゃんねるブラウザ「ChMate」part269
https://egg.5ch.io/test/read.cgi/android/1784035194/
【専ブラ】5ちゃんねるブラウザ「ChMate」part269
https://egg.5ch.io/test/read.cgi/android/1784035194/
687デフォルトの名無しさん
2026/07/21(火) 16:19:37.34ID:hTZmyRpd688デフォルトの名無しさん
2026/07/21(火) 16:20:05.98ID:hTZmyRpd ほら荒らしが来た
689デフォルトの名無しさん
2026/07/21(火) 16:23:46.80ID:2WiNYKUy690デフォルトの名無しさん
2026/07/21(火) 16:24:18.10ID:jitdnUFF >>689
moveの意味知らなそう
moveの意味知らなそう
691デフォルトの名無しさん
2026/07/21(火) 16:26:07.39ID:ahw91GYg ムーブとコピーの区別がついてるかも怪しい
こいつ言ってることがいちいちRust知識皆無なんだよな
こいつ言ってることがいちいちRust知識皆無なんだよな
692デフォルトの名無しさん
2026/07/21(火) 16:31:09.85ID:yw9QsJ6s mut self なんか日常的に取るだろ
ムーブしない設計に固執するのはバカ
ムーブしない設計に固執するのはバカ
693デフォルトの名無しさん
2026/07/21(火) 16:36:21.16ID:tqPKLH4t694デフォルトの名無しさん
2026/07/21(火) 16:36:36.50ID:hFTJcci7 荒らしは放置
695デフォルトの名無しさん
2026/07/21(火) 16:40:15.47ID:DT9zLzL2 ビルダーパターンもイテレータアダプタもムーブなんだが、知らないのかな?
696デフォルトの名無しさん
2026/07/21(火) 16:50:13.47ID:2WiNYKUy697デフォルトの名無しさん
2026/07/21(火) 16:58:30.31ID:aLius24S698デフォルトの名無しさん
2026/07/21(火) 17:00:42.33ID:cV1W7TCj スタック領域でもムーブを書けることと、ディープコピーがないことは別なんだよな
引数ならまだしも、戻り値にする場合その関数のスタックは破棄されるのでディープコピーは発生する
引数ならまだしも、戻り値にする場合その関数のスタックは破棄されるのでディープコピーは発生する
699デフォルトの名無しさん
2026/07/21(火) 17:01:51.78ID:2WiNYKUy700デフォルトの名無しさん
2026/07/21(火) 17:02:45.16ID:OLRGAddi どうせこいつまともな知識ないくせにイキってるだけだから何言っても無駄だぞ
荒らしはスルーが安定
荒らしはスルーが安定
701デフォルトの名無しさん
2026/07/21(火) 17:03:54.13ID:OLRGAddi702デフォルトの名無しさん
2026/07/21(火) 17:04:33.67ID:AUT4IY/C まあこの程度の話がわからない奴なんだから相手しても無駄
703デフォルトの名無しさん
2026/07/21(火) 17:04:56.19ID:HO4SZ0K4 >>701
お前が反応してどうする
お前が反応してどうする
704デフォルトの名無しさん
2026/07/21(火) 17:07:21.81ID:aA5nG03I ID:2WiNYKUyはID:GVCMKu1f
大した知識もないくせにチェリーピックと無茶苦茶な主張で何百書き込みも荒らしたやつだから相手しちゃダメ
大した知識もないくせにチェリーピックと無茶苦茶な主張で何百書き込みも荒らしたやつだから相手しちゃダメ
705デフォルトの名無しさん
2026/07/21(火) 17:10:25.68ID:QMF0m492 荒らしなんかやるレベルのバカにはRustは難しいんだよ
706デフォルトの名無しさん
2026/07/21(火) 17:12:38.20ID:Dk5sqQuX 結局>>671が結論でそこから先荒らしが喚いてただけ
707デフォルトの名無しさん
2026/07/21(火) 17:19:23.86ID:n2iwmqGn >>698
スタックじゃない実装の場合は変わるのかね
スタックじゃない実装の場合は変わるのかね
708デフォルトの名無しさん
2026/07/21(火) 17:32:08.98ID:2WiNYKUy >>701
その「小さいから支障がない」を主張したことがない
そのビルダーやイテレータのパターンならスタック上に大きなデータでも問題ない
「ヒープを使わなければいけない例になっていない」と主張している
早くヒープを使わなければいけない例を示してくれ
その「小さいから支障がない」を主張したことがない
そのビルダーやイテレータのパターンならスタック上に大きなデータでも問題ない
「ヒープを使わなければいけない例になっていない」と主張している
早くヒープを使わなければいけない例を示してくれ
709デフォルトの名無しさん
2026/07/21(火) 18:30:11.05ID:2WiNYKUy710デフォルトの名無しさん
2026/07/21(火) 18:42:19.18ID:HHuPuFDF711デフォルトの名無しさん
2026/07/21(火) 19:22:01.43ID:2WiNYKUy712デフォルトの名無しさん
2026/07/21(火) 19:38:35.29ID:28j0dMrv713デフォルトの名無しさん
2026/07/21(火) 19:38:44.43ID:28j0dMrv714デフォルトの名無しさん
2026/07/21(火) 19:47:57.74ID:y21dV+Vh こう訊いたら
> is RVO always applied in Rust?
こう即答されて、その後、RVOになる可能性の低い場合を挙げてくれる
> No, Return Value Optimization (RVO) is not guaranteed by the Rust
> language specification.
> is RVO always applied in Rust?
こう即答されて、その後、RVOになる可能性の低い場合を挙げてくれる
> No, Return Value Optimization (RVO) is not guaranteed by the Rust
> language specification.
715デフォルトの名無しさん
2026/07/21(火) 21:50:22.11ID:zMkCdy3E 初出のIDが「どう見ても自演なのはそっち」とは面白い冗談ですね
716デフォルトの名無しさん
2026/07/21(火) 21:54:04.61ID:BzW/oQJ/ >>715
何言ってんだこいつ
何言ってんだこいつ
717デフォルトの名無しさん
2026/07/21(火) 21:54:44.07ID:PsDVu0+l >>714
最適化はコンパイラの実装の問題でしかないからねえ
最適化はコンパイラの実装の問題でしかないからねえ
718デフォルトの名無しさん
2026/07/21(火) 22:18:44.95ID:2WiNYKUy719デフォルトの名無しさん
2026/07/21(火) 22:19:07.57ID:DbCuiygU ID:2WiNYKUy(ID:GVCMKu1f)ってずっと「ほんの少しのケースにだけ当てはまること」を「全部必ずこうなる!」って主張して、「これならないんですけど」と言われたら条件を増やし始めるという論法ばっかりだよな
720デフォルトの名無しさん
2026/07/21(火) 22:20:42.35ID:Y2iieiR6 >>718
自分の主張を否定してるから突っ込みどころ満載なんだ!と言いたいわけですな
自分の主張を否定してるから突っ込みどころ満載なんだ!と言いたいわけですな
721デフォルトの名無しさん
2026/07/21(火) 22:23:20.52ID:2WiNYKUy722デフォルトの名無しさん
2026/07/21(火) 22:31:09.33ID:ElegamEg >>721
「The Bookではスタック上のコピーをCopyトレイトでしか語らない」ということと「スタック領域について言及していますからディープコピーではありません」というのとは結び付いてないんだよな
論理が2段階くらい飛躍してる
「The Bookではスタック上のコピーをCopyトレイトでしか語らない」ということと「スタック領域について言及していますからディープコピーではありません」というのとは結び付いてないんだよな
論理が2段階くらい飛躍してる
723デフォルトの名無しさん
2026/07/21(火) 22:33:33.85ID:JUKJhZF2 それに、実体をコピーすることをディープコピーと言うのはプログラミングにおいて一般的な用法なので、これを間違いだと断言するのは法律家に「変数に人格はないから所有権は認められない」って言わせるのに近くてあまり意味がない
724デフォルトの名無しさん
2026/07/21(火) 22:35:27.54ID:YS4VSVPg https://mevius.5ch.io/test/read.cgi/tech/1652347700/52
ディープコピーこれか
今はこれくらい吹っ切れたこと言わないで言葉濁してばっかりでつまらんわ
ディープコピーこれか
今はこれくらい吹っ切れたこと言わないで言葉濁してばっかりでつまらんわ
725デフォルトの名無しさん
2026/07/21(火) 22:36:11.69ID:9K5Ee26J 要するに「今そんな話してない」って話よな
アスペはすぐ「こうも解釈できるから違う」って言いたがるけど、人と話してるんだからこういう複数定義が見つかるものであれば、まず何を伝えようとしてるかから類推する必要がある
アスペはすぐ「こうも解釈できるから違う」って言いたがるけど、人と話してるんだからこういう複数定義が見つかるものであれば、まず何を伝えようとしてるかから類推する必要がある
726デフォルトの名無しさん
2026/07/21(火) 22:37:02.36ID:9K5Ee26J >>723
そのアスペ法律家ちょっとおもろい
そのアスペ法律家ちょっとおもろい
727デフォルトの名無しさん
2026/07/21(火) 22:44:14.93ID:2WiNYKUy >>722
the bookで明記していますよ
スタック領域のムーブは2つのうちのどちらかで強いて言えばシャローコピー
If you’ve heard the terms shallow copy and deep copy while working with other languages, the concept of copying the pointer, length, and capacity without copying the data probably sounds like making a shallow copy. But because Rust also invalidates the first variable, instead of being called a shallow copy, it’s known as a move.
通常は二つの対比が必要ないならばCopyトレイトに明記されてるようにビットコピーと呼ぶのが良いでしょう
the bookで明記していますよ
スタック領域のムーブは2つのうちのどちらかで強いて言えばシャローコピー
If you’ve heard the terms shallow copy and deep copy while working with other languages, the concept of copying the pointer, length, and capacity without copying the data probably sounds like making a shallow copy. But because Rust also invalidates the first variable, instead of being called a shallow copy, it’s known as a move.
通常は二つの対比が必要ないならばCopyトレイトに明記されてるようにビットコピーと呼ぶのが良いでしょう
728デフォルトの名無しさん
2026/07/21(火) 22:47:38.39ID:2WiNYKUy これがRust界での常識です
学習してください
ではおやすみなさい
学習してください
ではおやすみなさい
729デフォルトの名無しさん
2026/07/21(火) 22:50:37.62ID:pIdf2Ljv >>723
>それに、実体をコピーすることをディープコピーと言うのはプログラミングにおいて一般的な用法なので
全く一般的ではありません。完全にあなたの勘違いです。
早めにそれも匿名掲示板で恥をかいてよかったですね。
>それに、実体をコピーすることをディープコピーと言うのはプログラミングにおいて一般的な用法なので
全く一般的ではありません。完全にあなたの勘違いです。
早めにそれも匿名掲示板で恥をかいてよかったですね。
730デフォルトの名無しさん
2026/07/21(火) 22:53:57.77ID:eFLxnQVM >>727-729
どう見ても自演
どう見ても自演
731デフォルトの名無しさん
2026/07/21(火) 22:57:05.01ID:3DpZBFH1 >>727
自分で貼った文章を読んでいないみたいだが全く違う意味の話をしてるぞ
雑に要約すると「一般的な言語で言うシャロ―コピーをムーブと呼んでいます」と言っているのであって、スタック領域に確保したオブジェクトをコピー/ムーブすることをどう表現するかには言及していない
いつもそうですが、あなたは自分が言いたいことを言うのに都合のいい記述を探しているだけで、ちゃんと文章を読んでいないからそういう間違いをするんです
自分で貼った文章を読んでいないみたいだが全く違う意味の話をしてるぞ
雑に要約すると「一般的な言語で言うシャロ―コピーをムーブと呼んでいます」と言っているのであって、スタック領域に確保したオブジェクトをコピー/ムーブすることをどう表現するかには言及していない
いつもそうですが、あなたは自分が言いたいことを言うのに都合のいい記述を探しているだけで、ちゃんと文章を読んでいないからそういう間違いをするんです
732デフォルトの名無しさん
2026/07/21(火) 22:58:34.14ID:5eyHU167733デフォルトの名無しさん
2026/07/21(火) 23:01:52.27ID:B+Y3bEuK >>729
ディープコピー(深いコピー)とは - IT用語辞典 e-Words
https://e-words.jp/w/%E3%83%87%E3%82%A3%E3%83%BC%E3%83%97%E3%82%B3%E3%83%94%E3%83%BC.html
> ディープコピーとは、配列やオブジェクトなどのデータ構造を複製する際、同じ構造の実体を新たに作成して対応するデータを写し取る方式。
これは全く一般的ではなかったのかー
お前の記憶の方がこっちより正しかったんだなw
ディープコピー(深いコピー)とは - IT用語辞典 e-Words
https://e-words.jp/w/%E3%83%87%E3%82%A3%E3%83%BC%E3%83%97%E3%82%B3%E3%83%94%E3%83%BC.html
> ディープコピーとは、配列やオブジェクトなどのデータ構造を複製する際、同じ構造の実体を新たに作成して対応するデータを写し取る方式。
これは全く一般的ではなかったのかー
お前の記憶の方がこっちより正しかったんだなw
734デフォルトの名無しさん
2026/07/21(火) 23:03:22.98ID:sxvJfiz9 Deep copy (ディープコピー) - 用語集 | MDN
https://developer.mozilla.org/ja/docs/Glossary/Deep_copy
> オブジェクトの ディープコピー とは、コピー先のオブジェクトのプロパティがコピー元のオブジェクトのプロパティと同一の参照(同じ値を指す)で共有しないコピー方法のことです。結果として、コピー元かコピー先のどちらかを変更しても、もう一方オブジェクトにも変更を及ぼしていないことを保証できます。すなわち、コピー元かコピー先に意図せずに予期しない変更が加えられるこはありません。この振る舞いはシャローコピーとは対照的です。シャローコピーでは、コピー元かコピー先のどちらかを変更するともう一方のオブジェクトも変更される可能性があります。
これも一般的ではなかったんだなあw
https://developer.mozilla.org/ja/docs/Glossary/Deep_copy
> オブジェクトの ディープコピー とは、コピー先のオブジェクトのプロパティがコピー元のオブジェクトのプロパティと同一の参照(同じ値を指す)で共有しないコピー方法のことです。結果として、コピー元かコピー先のどちらかを変更しても、もう一方オブジェクトにも変更を及ぼしていないことを保証できます。すなわち、コピー元かコピー先に意図せずに予期しない変更が加えられるこはありません。この振る舞いはシャローコピーとは対照的です。シャローコピーでは、コピー元かコピー先のどちらかを変更するともう一方のオブジェクトも変更される可能性があります。
これも一般的ではなかったんだなあw
735デフォルトの名無しさん
2026/07/21(火) 23:05:44.19ID:6e3KrnZd >>729
アホほど浅い知識ですぐに断言して他人を煽りたがるよな
アホほど浅い知識ですぐに断言して他人を煽りたがるよな
736デフォルトの名無しさん
2026/07/21(火) 23:08:27.17ID:fQZ8gbX2737デフォルトの名無しさん
2026/07/21(火) 23:11:23.23ID:YS4VSVPg この複製おじさんのID変えない版みたいなやつこの前の週末からか?
面白くなってきた
面白くなってきた
738デフォルトの名無しさん
2026/07/21(火) 23:11:55.24ID:enjQvq/8 > スタック領域のムーブは2つのうちのどちらかで強いて言えばシャローコピー
流石に無理がある
> copying the pointer, length, and capacity without copying the data probably sounds like making a shallow copy
日本語訳: データをコピーせずにポインタ、長さ、容量をコピーすることは、おそらく浅いコピーを行うことのように聞こえるでしょう
"without copying the data" 「データをコピーせずに」と断言されている
スタックの仕組みを知っていれば戻り値では論理的にコピーが生じる(実装での最適化の話はしていないことに注意)ので、ここで言われているのはヒープ領域のムーブの話に過ぎない
流石に無理がある
> copying the pointer, length, and capacity without copying the data probably sounds like making a shallow copy
日本語訳: データをコピーせずにポインタ、長さ、容量をコピーすることは、おそらく浅いコピーを行うことのように聞こえるでしょう
"without copying the data" 「データをコピーせずに」と断言されている
スタックの仕組みを知っていれば戻り値では論理的にコピーが生じる(実装での最適化の話はしていないことに注意)ので、ここで言われているのはヒープ領域のムーブの話に過ぎない
739デフォルトの名無しさん
2026/07/21(火) 23:13:44.57ID:ADBZCODt > これがRust界での常識です
> 学習してください
w
> 学習してください
w
740デフォルトの名無しさん
2026/07/21(火) 23:17:24.46ID:i+g+TbZ6 > 関数の引数でムーブで渡して返り値でムーブして戻すなんて爆笑行為だろ
そもそもこんなこと言ってたくらいにはRust知識ないからね
一生懸命The Book読んで反論材料探してるだけで、何の知識も持ってないよこいつ
そもそもこんなこと言ってたくらいにはRust知識ないからね
一生懸命The Book読んで反論材料探してるだけで、何の知識も持ってないよこいつ
741デフォルトの名無しさん
2026/07/21(火) 23:18:33.64ID:prLGQ+o1 英語読めないなら日本語翻訳版のThe Book開けばいいのに……w
英語の成績悪かった俺でもおかしなこと言ってるなって気づく程度には読めてないぞ
英語の成績悪かった俺でもおかしなこと言ってるなって気づく程度には読めてないぞ
742デフォルトの名無しさん
2026/07/21(火) 23:23:57.63ID:2WiNYKUy743デフォルトの名無しさん
2026/07/21(火) 23:25:05.17ID:2WiNYKUy744デフォルトの名無しさん
2026/07/21(火) 23:26:36.15ID:2WiNYKUy745デフォルトの名無しさん
2026/07/21(火) 23:28:03.12ID:XdrfV7kF746デフォルトの名無しさん
2026/07/21(火) 23:28:53.51ID:XdrfV7kF747デフォルトの名無しさん
2026/07/21(火) 23:30:12.16ID:7bDfgG31 >>744また都合のいい幻視が始まってるぞ
748デフォルトの名無しさん
2026/07/21(火) 23:32:01.86ID:mion99Qn >>744
唐突に二段階とか言い出して話をややこしくしてるが、結局お前が言ってるようなことはどこにも書いてないな
唐突に二段階とか言い出して話をややこしくしてるが、結局お前が言ってるようなことはどこにも書いてないな
749デフォルトの名無しさん
2026/07/21(火) 23:32:05.13ID:poCaFg3z ヒープかスタックか、みたいな話で終われないんじゃないの?
(一人を除いて(?)みんなが思ってるディープコピーは同じのような気もするけど)
ディープコピーは文字通り深く、根元まで全部コピーしてくれる
a = [[1, 2], 3]
b = a.clone # shallow copy
c = Marshal.load(Marshal.dump(a)) # deep copy
a[0][0] = 11
a[1] = 33
p a # [[11, 2], 33]
p b # [[11, 2], 3]
p c # [[1, 2], 3]
b[1]は3のままだけど、b[0][0]は11になっちゃってるのがシャロ―コピー
全てを複製しきってるのがディープコピー
Rustでも同じようなことにならない?
Rustにディープコピーあるのかどうか知らんけど
(一人を除いて(?)みんなが思ってるディープコピーは同じのような気もするけど)
ディープコピーは文字通り深く、根元まで全部コピーしてくれる
a = [[1, 2], 3]
b = a.clone # shallow copy
c = Marshal.load(Marshal.dump(a)) # deep copy
a[0][0] = 11
a[1] = 33
p a # [[11, 2], 33]
p b # [[11, 2], 3]
p c # [[1, 2], 3]
b[1]は3のままだけど、b[0][0]は11になっちゃってるのがシャロ―コピー
全てを複製しきってるのがディープコピー
Rustでも同じようなことにならない?
Rustにディープコピーあるのかどうか知らんけど
750デフォルトの名無しさん
2026/07/21(火) 23:32:58.06ID:iK9zpUBS こいつスタック領域とプリミティブ型の区別ついてないんじゃね
配列とか構造体とかちゃんと触ったことないんだろ
配列とか構造体とかちゃんと触ったことないんだろ
751デフォルトの名無しさん
2026/07/21(火) 23:34:37.27ID:pIdf2Ljv >>733の定義は「新たに作成する同じ構造の実体」がコピー対象の配列やオブジェクト自体のように読める文章になっちゃってるから間違ってると言っていいね
>>734のMDNのは間違ってないけど君の言ってる内容とは全然違うよね
wikitionaryの定義がわかりやすい
A copy of a data structure duplicating not only the structure itself, but all structures to which it is linked.
例えば[Vec<i32>; 5]という配列をディープコピーするというのは
Vecというfat pointerを5個含む配列というデータ構造をコピーするだけでなく
そのfat pointerらが指し示す先のデータ構造であるi32たちもすべて含めてコピーすること
>>734のMDNのは間違ってないけど君の言ってる内容とは全然違うよね
wikitionaryの定義がわかりやすい
A copy of a data structure duplicating not only the structure itself, but all structures to which it is linked.
例えば[Vec<i32>; 5]という配列をディープコピーするというのは
Vecというfat pointerを5個含む配列というデータ構造をコピーするだけでなく
そのfat pointerらが指し示す先のデータ構造であるi32たちもすべて含めてコピーすること
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】米政権、ICCへ広範な制裁準備か [蚤の市★]
- 「年収500万円でもゼロ」若者がブルーカラーを敬遠する理由…AI時代に求められる“かっこよさ”とキャリアの転換 ★3 [首都圏の虎★]
- 【サッカー】久保建英vs佐藤龍之介の日本人対決はまさかの両者出番なし…序列急降下で日本代表合流へ [ゴアマガラ★]
- 【静岡】高級メロンを盗もうとして ベトナム国籍の男2人がハウスに侵入か ブランド「アローマメロン」すでに周辺で50個以上の被害 [煮卵★]
- 高市首相が「大変残念」にとどめたワケ 世論の反発予想も米国最優先 [蚤の市★]
- 【サッカー】トッテナム、2009年以来17年ぶり最下位転落 約651億円の大型補強も実らず、17年前の悪夢が再び [ゴアマガラ★]
- 千葉県さん冠水報告相次ぐ、船橋市、市川市、松戸市、茂原町など多数 [881878332]
- 【悲報】高市洋一、ベッセントに宣戦布告「私は日本人だから、あんたの言うことは聞きませんよ」 [834922174]
- 【高市疑問】やたらAIを敵視して嫌ってる人を嫌儲でも見るけどアレ何?意味が分からない [454087802]
- 公務員、月給1万5000円アップ。ボーナスは年4.7カ月相当へ。民間より低い格差を是正するため [427211404]
- ケモ民が高級中華料理店「日高屋」に行ったら必ず頼むもの [511393199]
- ダークウェブって結局なんなの?🥺 [663277603]