公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust
Web上の実行環境
https://play.rust-lang.org
日本語の情報
https://rust-jp.rs/
※Rustを学びたい人はまず最初に公式のThe Bookを読むこと
https://doc.rust-lang.org/book/
※Rustのasyncについて知りたければ「async-book」は必読
https://rust-lang.github.io/async-book/
※C++との比較は専用スレへ
C++ vs Rust
https://mevius.5ch.net/test/read.cgi/tech/1619219089/
※次スレは原則>>980が立てること
前スレ
Rust part12
https://mevius.5ch.net/test/read.cgi/tech/1629813327/
Rust part13
■ このスレッドは過去ログ倉庫に格納されています
2021/11/07(日) 10:04:59.35ID:pJhT3MIE
514デフォルトの名無しさん
2022/01/09(日) 23:30:44.08ID:enp/nJFU >>489
所有権だけが複製されるわけじゃないし、たしかに不自然だな
所有権だけが複製されるわけじゃないし、たしかに不自然だな
515デフォルトの名無しさん
2022/01/10(月) 00:03:57.12ID:x5u3TTyT >>509
複製された(結果的に値は同じだけどメモリ上の位置は異なる)新たな値に対する新たな所有権を「所有権が複製される」って表現するのはおかしいべ?
>>510
そこよく勘違いされてるけど値自体はCopyトレイトと関係なく常に複製されてるよ(最適化で除かれるとかは別として)
https://doc.rust-lang.org/std/marker/trait.Copy.htmlに全部書いてあるけど
Copyな型は「プリミティブ型みたいに単純にメモリの内容を複製するだけでオッケー=copy」
非Copyな型は「ポインタとか含まれてたりして単純にメモリの内容を複製するだけだとNGな可能性があるから古い方は使えなくするよ=move」
ってだけ
複製された(結果的に値は同じだけどメモリ上の位置は異なる)新たな値に対する新たな所有権を「所有権が複製される」って表現するのはおかしいべ?
>>510
そこよく勘違いされてるけど値自体はCopyトレイトと関係なく常に複製されてるよ(最適化で除かれるとかは別として)
https://doc.rust-lang.org/std/marker/trait.Copy.htmlに全部書いてあるけど
Copyな型は「プリミティブ型みたいに単純にメモリの内容を複製するだけでオッケー=copy」
非Copyな型は「ポインタとか含まれてたりして単純にメモリの内容を複製するだけだとNGな可能性があるから古い方は使えなくするよ=move」
ってだけ
516デフォルトの名無しさん
2022/01/10(月) 11:29:11.88ID:0oVbzL+8517デフォルトの名無しさん
2022/01/10(月) 20:14:15.89ID:tVKp4zEB 著者のバックグラウンド見る限りC/C++の経験があるオレならRustも分かっちゃうよ?みたいな連載だから表現が慣れてなくても気にしない
監修もRustの人っぽくなさそうだし…多分、関数型の語彙が無いんじゃないかね
監修もRustの人っぽくなさそうだし…多分、関数型の語彙が無いんじゃないかね
518デフォルトの名無しさん
2022/01/10(月) 20:29:16.07ID:DRRBVfd3 うんこ言語を好意的に連載してる記事をこき下ろす性格の悪いRusterが集まる駄スレ
519デフォルトの名無しさん
2022/01/11(火) 03:16:23.27ID:DWOD4ihn >>515
> そこよく勘違いされてるけど値自体はCopyトレイトと関係なく常に複製されてるよ(最適化で除かれるとかは別として)
>
> https://doc.rust-lang.org/std/marker/trait.Copy.htmlに全部書いてあるけど
へー、なるほど、いろいろ納得したわ
> そこよく勘違いされてるけど値自体はCopyトレイトと関係なく常に複製されてるよ(最適化で除かれるとかは別として)
>
> https://doc.rust-lang.org/std/marker/trait.Copy.htmlに全部書いてあるけど
へー、なるほど、いろいろ納得したわ
520デフォルトの名無しさん
2022/01/11(火) 11:05:54.30ID:U35zy9ok521デフォルトの名無しさん
2022/01/11(火) 12:25:22.53ID:yQgVkZD8 「所有権の複製」でググってもほぼ誰も使って無い用語で草
522デフォルトの名無しさん
2022/01/11(火) 12:27:41.85ID:zYBpR5AJ 所有権だけをすることなんてないだろうし、そんな言葉なくね
そもそも意味わからん
処理系を実装してる人にとっては考えることかもしれんが
そもそも意味わからん
処理系を実装してる人にとっては考えることかもしれんが
523デフォルトの名無しさん
2022/01/11(火) 12:28:11.69ID:zYBpR5AJ 所有権だけを複製すること、の間違い
524デフォルトの名無しさん
2022/01/11(火) 21:25:05.09ID:On+Ztxm9 まあ無駄にややこしいだけの説明だわな。
これで間違ってない!とか意地張るような輩は俺だったら落とすわ。
これで間違ってない!とか意地張るような輩は俺だったら落とすわ。
525デフォルトの名無しさん
2022/01/11(火) 21:31:59.06ID:xKqG3MQU どっちに解釈しても問題ない話の一方に固執する方がお断りだな。
526デフォルトの名無しさん
2022/01/11(火) 22:00:42.75ID:7fHp9GHd 所有権の複製の意味が分からん
不用意に独自用語使うのを野放しにしちゃいけない
専門用語とその定義がなぜあるのかを考えて欲しい
不用意に独自用語使うのを野放しにしちゃいけない
専門用語とその定義がなぜあるのかを考えて欲しい
527デフォルトの名無しさん
2022/01/11(火) 22:43:07.52ID:2061HgWk >>519
実際に生ポインタ(アドレス)を見る形で実験したところ
「関数に値渡し(≠参照渡し)する」時は
「Copy trait実装の有無」に関係なく
「必ず値は複製されている(=別アドレスになる)」という
よく考えれば当たり前の挙動となった
つまり話をまとめると
・Copy trait実装の有無と関係なく「値は必ず複製される」
・Copy trait実装がある時は「所有権も複製される」
・Copy trait実装がない時は「所有権は移動する」
これ以外に表現しようがないことがわかった
実際に生ポインタ(アドレス)を見る形で実験したところ
「関数に値渡し(≠参照渡し)する」時は
「Copy trait実装の有無」に関係なく
「必ず値は複製されている(=別アドレスになる)」という
よく考えれば当たり前の挙動となった
つまり話をまとめると
・Copy trait実装の有無と関係なく「値は必ず複製される」
・Copy trait実装がある時は「所有権も複製される」
・Copy trait実装がない時は「所有権は移動する」
これ以外に表現しようがないことがわかった
528デフォルトの名無しさん
2022/01/11(火) 23:09:26.60ID:On+Ztxm9 メモリ上の動きと言語上のルールの違いもまともに理解してなさそうな連中だな。
529デフォルトの名無しさん
2022/01/11(火) 23:49:06.82ID:t1MM9BO+ mutの時に書き換えると元の値と別の値に出来るのだから新たな所有権が生じているのは事実
あとは、所有権の複製、という表現の問題
間違ってはいないが理解しにくいならば別の良い表現で置き換えればよいが何がいいだろう?
あとは、所有権の複製、という表現の問題
間違ってはいないが理解しにくいならば別の良い表現で置き換えればよいが何がいいだろう?
530デフォルトの名無しさん
2022/01/12(水) 00:52:45.70ID:1lKX/EK6 値が複製されるのに伴って新たな所有権が生成される
531デフォルトの名無しさん
2022/01/12(水) 08:45:55.15ID:zdKxvEH9 ムーブの場合は元の所有権が破棄されて新たな所有権が生成される
532デフォルトの名無しさん
2022/01/12(水) 10:38:50.42ID:uD0wFQGQ 値を複製したらメモリの領域が別なのに「所有権の複製」は何を複製すると思ってんだろ
533デフォルトの名無しさん
2022/01/12(水) 18:27:19.23ID:5pTy1wN9534デフォルトの名無しさん
2022/01/12(水) 21:24:46.00ID:zdKxvEH9 全く同じものを新しく生成するのと複製は外から見て区別しようがないんだから
535デフォルトの名無しさん
2022/01/12(水) 22:30:30.00ID:y9ayzVSo 所有権はコンパイル時のはなし
メモリの動きは実行時のははし
メモリの動きは実行時のははし
536デフォルトの名無しさん
2022/01/12(水) 23:21:45.30ID:mVKgaRWA セマンティクスの話をしろ
537デフォルトの名無しさん
2022/01/12(水) 23:51:37.77ID:DMKGOQqO 現実世界の所有権が複製可能な権利だったのなら
複製されると勘違いする人がいても不思議はないが・・・
複製されると勘違いする人がいても不思議はないが・・・
538デフォルトの名無しさん
2022/01/13(木) 08:49:48.70ID:+PFReeTS 質量保存則に縛られる現実世界の複製との対比には限界があるわな。
539デフォルトの名無しさん
2022/01/13(木) 10:12:58.78ID:8S0jzhzB 権利のような無形物は質量保存則には縛られない
Borrow Checkerが課すルールをわかりやすく説明するためのメタファーとして
現実世界の所有権という概念を借りてきてるのに
そのメタファーを分かりにくくするエクストリームなルールを勝手に追加して広めるのはやめよう
Borrow Checkerが課すルールをわかりやすく説明するためのメタファーとして
現実世界の所有権という概念を借りてきてるのに
そのメタファーを分かりにくくするエクストリームなルールを勝手に追加して広めるのはやめよう
540デフォルトの名無しさん
2022/01/13(木) 10:57:22.74ID:VN3LqOp5 https://users.rust-lang.org/t/what-is-the-formal-definition-of-ownership/41984
なんか同じようなやり取りして同じように最終的にグダグダなまま閉じてて草
なんか同じようなやり取りして同じように最終的にグダグダなまま閉じてて草
541デフォルトの名無しさん
2022/01/13(木) 11:03:58.63ID:4F526BmN というかRustの実装のところ見ればいいんじゃね?
仕組みのコードはあるだろうし
仕組みのコードはあるだろうし
542デフォルトの名無しさん
2022/01/13(木) 11:11:48.72ID:0M0jmEeK 見るまでもないだろw
543デフォルトの名無しさん
2022/01/13(木) 12:20:30.48ID:k/BdCeDW https://doc.rust-lang.org/rust-by-example/scope/move.html
ここでは所有権が移動される(the ownership of the resources is transferred)とあるから
ここからの類推で所有権の複製という言葉が出てきたのかな
ここでは所有権が移動される(the ownership of the resources is transferred)とあるから
ここからの類推で所有権の複製という言葉が出てきたのかな
544デフォルトの名無しさん
2022/01/13(木) 12:30:05.91ID:H8cLP4dt Ownershipを所有権と訳したから
「所有権とは、文字通り変数が値を所有できる権利のことです」
という間違った解釈がされて
さらには「所有権の複製」なんていうトンデモ説が出現しちゃう
「所有権とは、文字通り変数が値を所有できる権利のことです」
という間違った解釈がされて
さらには「所有権の複製」なんていうトンデモ説が出現しちゃう
545デフォルトの名無しさん
2022/01/13(木) 14:09:36.75ID:O06YpWsI546デフォルトの名無しさん
2022/01/13(木) 14:28:13.33ID:LRlvXHH5 結局はどこにも原典がないオレオレ用語でワロタ
技術は研鑽していかないといけないのに
ポエムと独自解釈と拡大解釈によって逆方向に突き進むボンクラ
技術は研鑽していかないといけないのに
ポエムと独自解釈と拡大解釈によって逆方向に突き進むボンクラ
547デフォルトの名無しさん
2022/01/13(木) 15:21:48.48ID:4OU2rK55 まぁ、オープンソースですらねぇし専門家の目すら通ってない様なサイトだし
それっぽい事書いときゃいいんだよってのが大抵のweb界隈
itで何か知りたいなら手っ取り早い話公式ドキュメント当たれって事だろ(´・ω・`)
それっぽい事書いときゃいいんだよってのが大抵のweb界隈
itで何か知りたいなら手っ取り早い話公式ドキュメント当たれって事だろ(´・ω・`)
548デフォルトの名無しさん
2022/01/13(木) 15:31:14.25ID:iHsQmzfW それでわかりやすくなるんなら別にいいけど、余計わかりにくくしてるってさぁ。。
549デフォルトの名無しさん
2022/01/13(木) 15:55:36.32ID:k/BdCeDW550デフォルトの名無しさん
2022/01/13(木) 16:12:14.47ID:VN3LqOp5 ルー語で言うと「ownershipがtransferされることをmoveって呼ぶ」的な?
551デフォルトの名無しさん
2022/01/13(木) 16:19:48.57ID:VN3LqOp5 this is known as a move.
英語のほうだと「ムーブとして知られています」か
実際コンパイラのソースみてもownershipはtransferとかtakeっていう表現でmoveだのcopyとは言ってないね
英語のほうだと「ムーブとして知られています」か
実際コンパイラのソースみてもownershipはtransferとかtakeっていう表現でmoveだのcopyとは言ってないね
552デフォルトの名無しさん
2022/01/13(木) 16:53:50.81ID:qAhzUFbZ553デフォルトの名無しさん
2022/01/13(木) 17:08:41.31ID:2BXAobev >>552
それは変なサイトではなくRust公式ページの日本語訳。
元のRust公式ページでも同様。
Ownership and moves
https://doc.rust-lang.org/rust-by-example/scope/move.html
Because variables are in charge of freeing their own resources,
resources can only have one owner.
This also prevents resources from being freed more than once.
Note that not all variables own resources (e.g. references)
When doing assignments (let x = y) or passing function arguments by value (foo(x)),
the ownership of the resources is transferred.
In Rust-speak, this is known as a move.
それは変なサイトではなくRust公式ページの日本語訳。
元のRust公式ページでも同様。
Ownership and moves
https://doc.rust-lang.org/rust-by-example/scope/move.html
Because variables are in charge of freeing their own resources,
resources can only have one owner.
This also prevents resources from being freed more than once.
Note that not all variables own resources (e.g. references)
When doing assignments (let x = y) or passing function arguments by value (foo(x)),
the ownership of the resources is transferred.
In Rust-speak, this is known as a move.
554デフォルトの名無しさん
2022/01/13(木) 17:27:36.08ID:W1ZKAEcb555デフォルトの名無しさん
2022/01/14(金) 00:21:00.58ID:hAOjwXhX DeepL で翻訳してみた
なぜなら、変数は自身のリソースを解放する役割を担っているからです。
リソースは一人のオーナーしか持つことができません。
これはまた、リソースが複数回解放されるのを防ぐためでもあります。
すべての変数がリソースを所有するわけではないことに注意してください(例:参照)。
代入(let x = y)や関数の引数を値で渡す場合(foo(x))。
リソースの所有権は移転する。
Rustの用語では、これを「移動」と呼びます。
なぜなら、変数は自身のリソースを解放する役割を担っているからです。
リソースは一人のオーナーしか持つことができません。
これはまた、リソースが複数回解放されるのを防ぐためでもあります。
すべての変数がリソースを所有するわけではないことに注意してください(例:参照)。
代入(let x = y)や関数の引数を値で渡す場合(foo(x))。
リソースの所有権は移転する。
Rustの用語では、これを「移動」と呼びます。
556デフォルトの名無しさん
2022/01/14(金) 00:30:32.83ID:hAOjwXhX 「所有権の複製」とか、意味の分からない事を書いている、香具師がいるのか?
557デフォルトの名無しさん
2022/01/14(金) 00:36:35.57ID:kUhlpB/h558デフォルトの名無しさん
2022/01/14(金) 02:45:20.76ID:InXswW/0559556
2022/01/14(金) 03:32:18.88ID:hAOjwXhX 所有権が複製されるという書き方よりも、むしろ、
primitive を含むコピー型変数は、コピーされると、
所有権は移動しないので、元の変数にもアクセスできる、みたいに使う
コピーされると新たに、別のオブジェクト(実体・メモリ領域)と所有権が作られるとか
primitive を含むコピー型変数は、コピーされると、
所有権は移動しないので、元の変数にもアクセスできる、みたいに使う
コピーされると新たに、別のオブジェクト(実体・メモリ領域)と所有権が作られるとか
560デフォルトの名無しさん
2022/01/14(金) 08:35:26.86ID:8BRe3wDd - 所有権ごと複製するという表現がわかりやすいかわかりにくいか⇒人それぞれ
- 所有権を複製するという表現が逆になにか問題を生ずるか⇒今のところ挙げられてない
- 所有権を複製するという表現が逆になにか問題を生ずるか⇒今のところ挙げられてない
561デフォルトの名無しさん
2022/01/14(金) 08:46:30.94ID:y5w5F0v6562デフォルトの名無しさん
2022/01/14(金) 09:28:53.08ID:n8eH8EkW >>558
これだよな
これだよな
563デフォルトの名無しさん
2022/01/14(金) 09:48:26.29ID:20065uel 所有権の複製では意味が通らない事は明らかなので、
誰か >>489 の文をサクッと直してくれていいんだぞ
誰か >>489 の文をサクッと直してくれていいんだぞ
564デフォルトの名無しさん
2022/01/14(金) 09:59:56.29ID:wd6QtXqe 流れ見てると「所有権の複製」は
おかしいから使うな派が半分
おかしいけどまあ好きにすれば派が半分
おかしくない派が約1名
みたいな感じ?
おかしいから使うな派が半分
おかしいけどまあ好きにすれば派が半分
おかしくない派が約1名
みたいな感じ?
565デフォルトの名無しさん
2022/01/14(金) 12:13:02.65ID:8BRe3wDd この生産性のない議論に参加している人の割合と考えればさもありなん。
566デフォルトの名無しさん
2022/01/14(金) 12:25:28.10ID:kUhlpB/h >>564
どうでもいい派が抜けてる
どうでもいい派が抜けてる
567デフォルトの名無しさん
2022/01/14(金) 13:03:41.15ID:bXd4RL2X >>560
全く別の所有権なんだからコピーとか言うとわかりにくいだろ。
全く別の所有権なんだからコピーとか言うとわかりにくいだろ。
568デフォルトの名無しさん
2022/01/14(金) 21:39:59.21ID:+ggCJzG3 所有権というか、ポインタなのか、実体なのかって考えれば所有権もすぐに理解できると思うが
569デフォルトの名無しさん
2022/01/14(金) 22:02:26.42ID:hgiR/8Zn >>568
それは所有権を理解してないのでは?
それは所有権を理解してないのでは?
570デフォルトの名無しさん
2022/01/14(金) 22:22:42.07ID:8BRe3wDd >>:567
1つだったものが2つになることを複製と呼ぶのはべつにわかりにくいとは思わんがなぁ
1つだったものが2つになることを複製と呼ぶのはべつにわかりにくいとは思わんがなぁ
571デフォルトの名無しさん
2022/01/14(金) 22:37:39.46ID:WRwvxAen 現実のものに例えると適する例がないけど
近い分野だとOSでのプロセスのfork()に近いかな
どちらも初期状態は同じでその後は別の道を歩んで値(メモリ)が別の値を取れるようになる
これをプロセスの複製と呼ぶから複製という単語自体はわかりやすいと思う
近い分野だとOSでのプロセスのfork()に近いかな
どちらも初期状態は同じでその後は別の道を歩んで値(メモリ)が別の値を取れるようになる
これをプロセスの複製と呼ぶから複製という単語自体はわかりやすいと思う
572デフォルトの名無しさん
2022/01/14(金) 22:45:21.62ID:bXd4RL2X >>570
だから「所有権」に関しては全く別物だろうがよ。。いつまでアホなこと言ってんだか。
だから「所有権」に関しては全く別物だろうがよ。。いつまでアホなこと言ってんだか。
573デフォルトの名無しさん
2022/01/14(金) 22:49:30.67ID:IfPg31YF ジエンさんも複製されてるねw
574デフォルトの名無しさん
2022/01/14(金) 22:54:57.45ID:k9ZagSOx575デフォルトの名無しさん
2022/01/14(金) 22:59:38.88ID:8BRe3wDd576デフォルトの名無しさん
2022/01/14(金) 23:04:12.94ID:8BRe3wDd577デフォルトの名無しさん
2022/01/14(金) 23:08:16.48ID:wd6QtXqe >>571
プロセスはtask_structとかがあってしかも実際に複製されてるからな
Rustの所有権はそういうふうに実際にstruct Ownership;みたいのが有るわけじゃない
上の方でも言ってるやつがいるけどborrowcheckerとかのルールや制約を所有権って概念で説明してるだけ
だからメモリ上でCopyな(=単純なmemcpyで矛盾が起きない)型が複製されりゃ新しい所有権が作られるし!Copyな(=単純なmemcpyだと矛盾が起きる可能性が有る)型なら所有権もtransferされるってだけ
そこに解釈云々だのの余地はなく複製もクソもない
プロセスはtask_structとかがあってしかも実際に複製されてるからな
Rustの所有権はそういうふうに実際にstruct Ownership;みたいのが有るわけじゃない
上の方でも言ってるやつがいるけどborrowcheckerとかのルールや制約を所有権って概念で説明してるだけ
だからメモリ上でCopyな(=単純なmemcpyで矛盾が起きない)型が複製されりゃ新しい所有権が作られるし!Copyな(=単純なmemcpyだと矛盾が起きる可能性が有る)型なら所有権もtransferされるってだけ
そこに解釈云々だのの余地はなく複製もクソもない
578デフォルトの名無しさん
2022/01/14(金) 23:11:40.41ID:Gij7VB+L579デフォルトの名無しさん
2022/01/14(金) 23:13:06.72ID:hAOjwXhX 複製という用語は、2つの実体が作られたよりも、
その2つの同値性が強調される
例えば、一卵性双生児は同一の遺伝子だから複製だけど、
二卵性双生児は複製じゃない。
単に、別々の2つの実体が発生しただけ
二卵性双生児間には同値性が無いから
ただ、文書を書いた外人は、copy を同値性という意味で使っていない
長文で説明するのが面倒くさいので、copyという短い単語で、
単に、2つの実体が作られたみたいに、気軽に使っているのだろう
だから、copyを翻訳すると複製になってしまう
その2つの同値性が強調される
例えば、一卵性双生児は同一の遺伝子だから複製だけど、
二卵性双生児は複製じゃない。
単に、別々の2つの実体が発生しただけ
二卵性双生児間には同値性が無いから
ただ、文書を書いた外人は、copy を同値性という意味で使っていない
長文で説明するのが面倒くさいので、copyという短い単語で、
単に、2つの実体が作られたみたいに、気軽に使っているのだろう
だから、copyを翻訳すると複製になってしまう
580デフォルトの名無しさん
2022/01/14(金) 23:23:12.29ID:b+sgeTEs 複製という訳の問題じゃないよね
「所有権のコピー」と言っても「copy ownership」と言っても何も変わらない
「所有権のコピー」と言っても「copy ownership」と言っても何も変わらない
581デフォルトの名無しさん
2022/01/14(金) 23:34:11.11ID:b8FVBfqE PIDとか二卵性双生児とか、根拠や脈絡がない例え話が次々に出てくるのが笑える。
なんでそこまで必死なのかと。
なんでそこまで必死なのかと。
582デフォルトの名無しさん
2022/01/14(金) 23:56:50.14ID:ErNyx2qm fork出してきたお前が言うなやw
583デフォルトの名無しさん
2022/01/15(土) 00:13:28.41ID:5R4N3qYj584デフォルトの名無しさん
2022/01/15(土) 01:02:15.31ID:l/1QpEiq585デフォルトの名無しさん
2022/01/15(土) 01:19:56.24ID:KOUnkRnZ C++の例外をちゃんと扱うのは難しい、Rustのほうが簡単やろ
586デフォルトの名無しさん
2022/01/15(土) 01:20:44.09ID:KOUnkRnZ スレ間違えた
まあいいや
まあいいや
587デフォルトの名無しさん
2022/01/15(土) 02:34:21.16ID:LQYSNqi+ >>583
そう感じちゃうのがRustの所有権を理解してない何よりの証拠なんだよなぁ
そう感じちゃうのがRustの所有権を理解してない何よりの証拠なんだよなぁ
588デフォルトの名無しさん
2022/01/15(土) 08:00:13.06ID:SUNY4hKu589デフォルトの名無しさん
2022/01/15(土) 08:48:58.88ID:MrK/oPRe 根拠があるってんなら単にrust公式から定義をひっぱってくればいいのではw
それが無いから単なる珍妙なオレオレ用語で終了なんだよこの話は
こーいう手合いをいちいち構ってると時間足りないぞ人生は短いぞ
それが無いから単なる珍妙なオレオレ用語で終了なんだよこの話は
こーいう手合いをいちいち構ってると時間足りないぞ人生は短いぞ
590デフォルトの名無しさん
2022/01/15(土) 09:24:09.35ID:i5tbAI8Y >>588
複製おじさん必死だなww
複製おじさん必死だなww
591デフォルトの名無しさん
2022/01/15(土) 10:37:04.68ID:SKIF+upB もう誰か本家のissueに「CopyとMoveって何をcopy、moveしてるの?所有権のcopyっておかしい?」って突撃してこいよw
592デフォルトの名無しさん
2022/01/15(土) 10:38:54.35ID:zYbpVr1V スレ追い切れてないけど所有権だけcopy/moveしてるという主張してる人がいるの?
593デフォルトの名無しさん
2022/01/15(土) 11:23:39.22ID:xPHqeDv2594デフォルトの名無しさん
2022/01/15(土) 11:24:43.51ID:ZhZU0a8B >>592
複製おじさんちーっすw
複製おじさんちーっすw
595デフォルトの名無しさん
2022/01/15(土) 12:21:18.07ID:NVDl8gUD 参照の説明に合わせてCopy Typeには所有権は無いという捉え方ならかろうじて理解はできる
596デフォルトの名無しさん
2022/01/15(土) 13:06:56.98ID:SKIF+upB >>593
おれら匿名の有象無象におかしいって指摘されても聞く耳持たねぇみたいだから本家でぶった切られてこいっていう皮肉なw
おれら匿名の有象無象におかしいって指摘されても聞く耳持たねぇみたいだから本家でぶった切られてこいっていう皮肉なw
597デフォルトの名無しさん
2022/01/15(土) 16:47:14.84ID:MrK/oPRe Cでポインタへのポインタをダブルポインタと言い張ったり
Cで関数へポインタで値渡ししてるだけのことを参照渡しと言い張ったり
酷いと思わんかね?
思わん人も居ることのほうが問題
Cで関数へポインタで値渡ししてるだけのことを参照渡しと言い張ったり
酷いと思わんかね?
思わん人も居ることのほうが問題
598デフォルトの名無しさん
2022/01/15(土) 17:52:02.36ID:gzKdcX6j >Cでポインタへのポインタをダブルポインタと言い張ったり
>Cで関数へポインタで値渡ししてるだけのことを参照渡しと言い張ったり
c++でポインタ渡しを参照渡し言うならそりゃ誤解は出てくるが、そんなに問題にならんわ。
てか extern C で参照渡しは普通にポインタ扱いになるしな。
rustで所有権のコピー言うのは明確に意味がおかしい。
>Cで関数へポインタで値渡ししてるだけのことを参照渡しと言い張ったり
c++でポインタ渡しを参照渡し言うならそりゃ誤解は出てくるが、そんなに問題にならんわ。
てか extern C で参照渡しは普通にポインタ扱いになるしな。
rustで所有権のコピー言うのは明確に意味がおかしい。
599デフォルトの名無しさん
2022/01/15(土) 18:25:43.70ID:V6fKEShR もうええやろこの話題は…こんな枝葉の問題でギャーギャー騒いでたら何も身につかんで…
Rust棒を使って気に食わないやつを殴りたいだけなんか…?
Rust棒を使って気に食わないやつを殴りたいだけなんか…?
600デフォルトの名無しさん
2022/01/15(土) 18:25:58.18ID:T5sD8sXT 所有権 → リソースの解放義務
コピーしたらアカン
コピーしたらアカン
601デフォルトの名無しさん
2022/01/15(土) 19:00:19.86ID:Pt/mdzot c++23以降で契約プログラミングのサポートが入るらしいけど、rustって言語レベルで契約プログラミングサポートしてる?
602デフォルトの名無しさん
2022/01/15(土) 19:35:04.98ID:Ipn+w0vn 1週間以上も議論が続いている原因はおそらく
copyとmoveの対象の非対称性にあると思う
Copy trait非実装の型は「所有権がmoveされる」
Copy trait実装の型は「値がcopyされる」そして「新たな所有権が生じる」
copyとmoveの対象の非対称性にあると思う
Copy trait非実装の型は「所有権がmoveされる」
Copy trait実装の型は「値がcopyされる」そして「新たな所有権が生じる」
603デフォルトの名無しさん
2022/01/15(土) 20:06:03.10ID:gzKdcX6j そんな複雑な理屈じゃなくてただのバカが意固地になってるだけだろ。。
604デフォルトの名無しさん
2022/01/15(土) 21:12:26.97ID:U8m/+TaT >>602
議論が続いてる気になってるんだw
議論が続いてる気になってるんだw
605デフォルトの名無しさん
2022/01/15(土) 21:34:33.77ID:5CQZXOEN >>602
moveの対象も値だぞ
the bookのownershipの解説ページに1つでもmoveの対象がownershipになってる箇所あるか?
https://doc.rust-lang.org/book/ch04-01-what-is-ownership.html
@ITの記事はそこも間違ってる
moveの対象も値だぞ
the bookのownershipの解説ページに1つでもmoveの対象がownershipになってる箇所あるか?
https://doc.rust-lang.org/book/ch04-01-what-is-ownership.html
@ITの記事はそこも間違ってる
606デフォルトの名無しさん
2022/01/15(土) 21:37:55.34ID:5CQZXOEN607デフォルトの名無しさん
2022/01/15(土) 21:44:00.10ID:+D8ShBal 俺は中立派なので
「Copyトレイト実装型は値と所有権が複製される」
でも構わないし9割以上の人々にはこれで通じるだろう
あとはどこまでこだわるかだけだ
これ以上その表現は容認できないと続けるならばスレ荒らしと変わらない
「Copyトレイト実装型は値と所有権が複製される」
でも構わないし9割以上の人々にはこれで通じるだろう
あとはどこまでこだわるかだけだ
これ以上その表現は容認できないと続けるならばスレ荒らしと変わらない
608デフォルトの名無しさん
2022/01/15(土) 21:52:50.82ID:MrK/oPRe609デフォルトの名無しさん
2022/01/15(土) 22:04:56.72ID:Ipn+w0vn 一般的に「批判や反対だけならバカでもできる」と言われるので
ここは代替案、修正案、改善案を示してはどうだろうか?
ここは代替案、修正案、改善案を示してはどうだろうか?
610デフォルトの名無しさん
2022/01/15(土) 22:09:17.84ID:im+Hgbd+ 匿名掲示板のやりとりで意見を変える人なんていないしとっとと次の話題に移るに限る
611デフォルトの名無しさん
2022/01/15(土) 22:17:16.04ID:xn0tLhqJ 複製おじさんが必死過ぎて草www
自分の間違いに気づいてもなお苦し紛れの言い訳テラワロスw
自分の間違いに気づいてもなお苦し紛れの言い訳テラワロスw
612デフォルトの名無しさん
2022/01/15(土) 22:29:40.11ID:SUNY4hKu >>597
参照渡しという用語は定義があるからCのポインタ値渡しに使うのは明らかに間違いなわけだが
ダブルポインタの方は正式に仕様で規定されているわけではないが俗語として通用しているな。
俗語だから前提無しに誰にでも通じるわけじゃないというところ注意が必要だが。
参照渡しという用語は定義があるからCのポインタ値渡しに使うのは明らかに間違いなわけだが
ダブルポインタの方は正式に仕様で規定されているわけではないが俗語として通用しているな。
俗語だから前提無しに誰にでも通じるわけじゃないというところ注意が必要だが。
613デフォルトの名無しさん
2022/01/15(土) 22:30:43.34ID:daomKUdj 複製おじさんは自演して複数人を装ういつもの人
いつも間違いを指摘されるが全く反省せず
嘘を書き続けて強弁しつつ自演擁護するのが趣味
C++じいさんと一緒にここに隔離されてる
いつも間違いを指摘されるが全く反省せず
嘘を書き続けて強弁しつつ自演擁護するのが趣味
C++じいさんと一緒にここに隔離されてる
614デフォルトの名無しさん
2022/01/15(土) 22:33:34.89ID:im+Hgbd+ 所有権も複製されるとするとrustの所有権システム破綻するの?
そういう話ではなくて用語の用法に違和感があるという議論だよね?
理解合ってる?
そういう話ではなくて用語の用法に違和感があるという議論だよね?
理解合ってる?
■ このスレッドは過去ログ倉庫に格納されています
