公式
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/
※C++との比較は専用スレへ
C++ vs Rust
https://mevius.5ch.net/test/read.cgi/tech/1619219089/
前スレ
Rust part10
https://mevius.5ch.net/test/read.cgi/tech/1617367084/
探検
Rust part11
レス数が1000を超えています。これ以上書き込みはできません。
2021/06/17(木) 00:24:12.56ID:NvYoNP9C
982デフォルトの名無しさん
2021/08/24(火) 15:09:04.48ID:KCG/N/Sb rustってどうやって二重開放のリスク防いでるの?全然ピンとこない
983デフォルトの名無しさん
2021/08/24(火) 15:50:18.44ID:tu56M8w7 ownershipが1つしかない状態を維持しつつownershipが0になったら(確実に)解放する感じ
ownershipはどこかの変数が直接的or間接的に保有してて
同じリソースに複数のownershipが発生しないように
代入とか関数の受け渡しでmoveしたりborrowしたりする
少し逸れるけど解放処理を必要としないデータはCopy可能な場合が多い
ownershipは「所有権」て訳されるけど意味的には「解放権」とか「解放責任」に近いかも
ownershipはどこかの変数が直接的or間接的に保有してて
同じリソースに複数のownershipが発生しないように
代入とか関数の受け渡しでmoveしたりborrowしたりする
少し逸れるけど解放処理を必要としないデータはCopy可能な場合が多い
ownershipは「所有権」て訳されるけど意味的には「解放権」とか「解放責任」に近いかも
984デフォルトの名無しさん
2021/08/24(火) 16:38:09.46ID:Cd1Pd2YU >>977
公式の見解を個人の感想と一緒にするなよ
公式の見解を個人の感想と一緒にするなよ
985デフォルトの名無しさん
2021/08/24(火) 17:46:18.00ID:uCQTu6bl Rustで循環参照作るの簡単とか言ってるやつは100%エアプだからほっといてやれ
他言語での経験をあたかもRustで経験したかのように語りたかったんだろう
他言語での経験をあたかもRustで経験したかのように語りたかったんだろう
986デフォルトの名無しさん
2021/08/24(火) 18:15:27.00ID:otdRB8MX >>985
メモリリークの原因になるかどうかを別にすれば、循環参照自体は普通に簡単に生じるだろう
メモリリークの原因になるかどうかを別にすれば、循環参照自体は普通に簡単に生じるだろう
987デフォルトの名無しさん
2021/08/24(火) 18:45:16.53ID:tu56M8w7 unsafeでポインタ使えば簡単だろうけどライフタイムのある参照の循環は大変そう
'a > 'bと 'b > 'aを両立は不可能に見えるけど何か抜け道あるのかな
'a > 'bと 'b > 'aを両立は不可能に見えるけど何か抜け道あるのかな
988デフォルトの名無しさん
2021/08/24(火) 18:55:37.63ID:SZKxopPy 循環参照どころか連結リストも荷が重い
989デフォルトの名無しさん
2021/08/24(火) 19:43:21.83ID:KCG/N/Sb >>983
なるほどサンクス
リージョン理論に線形論理を上手く組み合わせて、cycloneとかの欠点を克服したrustってすげーなあ
とはいってもそもそも二重開放してエラーになるというのがピンとこない
free(a);
free(a);
は二重解放しているように見えて合法だろ?
一度目のfreeでaにNULLが代入されて、二度目のfreeでは引数がNULLの場合はそのままreturnって処理されるんだから、理論上は何度free使ってもエラーにならないじゃないか
なるほどサンクス
リージョン理論に線形論理を上手く組み合わせて、cycloneとかの欠点を克服したrustってすげーなあ
とはいってもそもそも二重開放してエラーになるというのがピンとこない
free(a);
free(a);
は二重解放しているように見えて合法だろ?
一度目のfreeでaにNULLが代入されて、二度目のfreeでは引数がNULLの場合はそのままreturnって処理されるんだから、理論上は何度free使ってもエラーにならないじゃないか
990デフォルトの名無しさん
2021/08/24(火) 19:58:14.02ID:Mn5s1DvN 何の話? C?
991デフォルトの名無しさん
2021/08/24(火) 20:39:00.27ID:972JwtmU >>980
>Rustで循環参照が起きるにはRc利用が必須
RcだけじゃなくRcとInterior Mutabilityが必須
(どちらか片方はmutableじゃないと循環させられないので)
>Weak(弱参照)を適切に上手く用いて循環参照を避けるのが大変な場合もあるが
Rustの場合は循環参照で意図通り動くコードを書くのに比べれば
弱参照に変更するのはすごく簡単
循環参照を修正してる例
https://github.com/DataDog/glommio/commit/677fe1dfbaf911245fbc5c3eef75532d08d784bf
https://github.com/KWARC/rust-libxml/commit/bd4b120b90b2568ca6d5bfaa368a200573b87d09
>Rustで循環参照が起きるにはRc利用が必須
RcだけじゃなくRcとInterior Mutabilityが必須
(どちらか片方はmutableじゃないと循環させられないので)
>Weak(弱参照)を適切に上手く用いて循環参照を避けるのが大変な場合もあるが
Rustの場合は循環参照で意図通り動くコードを書くのに比べれば
弱参照に変更するのはすごく簡単
循環参照を修正してる例
https://github.com/DataDog/glommio/commit/677fe1dfbaf911245fbc5c3eef75532d08d784bf
https://github.com/KWARC/rust-libxml/commit/bd4b120b90b2568ca6d5bfaa368a200573b87d09
992デフォルトの名無しさん
2021/08/24(火) 20:58:14.10ID:joymTvc2 すまんが、複数のファイルにソースを分割する練習教材みたいなものがあったら教えてくれんか?
993デフォルトの名無しさん
2021/08/24(火) 22:56:02.07ID:972JwtmU994デフォルトの名無しさん
2021/08/24(火) 23:03:55.04ID:PednkAUi >>992
「book」にもモジュールの章がある。
「book」にもモジュールの章がある。
995デフォルトの名無しさん
2021/08/24(火) 23:31:00.93ID:OsSSnb/8 >>987
RcとRefCell使えば数行
RcとRefCell使えば数行
996デフォルトの名無しさん
2021/08/24(火) 23:45:46.97ID:MkJE9y3A 循環によって現れるメモリリークは Rust が提供する「メモリ安全」を損なわないと定義されている。
Rust は循環参照を防がないし、メモリリークに対処するのはプログラマの責任。
Rust は循環参照を防がないし、メモリリークに対処するのはプログラマの責任。
997デフォルトの名無しさん
2021/08/25(水) 00:57:06.67ID:3XgQgETH998デフォルトの名無しさん
2021/08/25(水) 01:28:54.33ID:6n+Di1sM >>990
c
c
999デフォルトの名無しさん
2021/08/25(水) 01:29:12.12ID:6n+Di1sM うんこ
1000デフォルトの名無しさん
2021/08/25(水) 01:29:33.60ID:6n+Di1sM 1000ならここにいるやつら全員失職
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 69日 1時間 5分 21秒
新しいスレッドを立ててください。
life time: 69日 1時間 5分 21秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 【速報】東京・足立区のひき逃げ事故 警視庁が運転手とみられる人物確保 心肺停止の2人は20代女性と80代男性 ★2 [Ailuropoda melanoleuca★]
- 【東京】乗用車が歩行者をはね11人ケガ、うち2人重体 現場に残されたセダンの運転手が衝突後に逃走…ひき逃げ事件として捜査 足立 [ぐれ★]
- 【国防】衝撃を与えた米シンクタンクの「台湾侵攻シミュレーション」日本の被害は? [1ゲットロボ★]
- 尖閣周辺に中国船、10日連続 いずれも機関砲搭載 ★2 [蚤の市★]
- 高市内閣の支持率72%、高い水準維持…読売世論調査 ★2 [尺アジ★]
- 【サッカー】ロシアが来年のW杯と並行して「裏W杯」開催を構想か 参加国は中国、セルビアなど出場を逃した国が候補 [征夷大将軍★]
- 【悲報】今のジャップ見てると80年前も進んで民衆が戦争協力してたってよく分かるよな🥺 [616817505]
- 石破「外交というのは、“言いたいこと言ってやったぜ“とかそういう話ではない」 [834922174]
- 【高市悲報】日本人、足立区11人ひき逃げ犯の国籍で大荒れwwwwwwwwwwwwwwwwwwwwww [316257979]
- ぽこちんで出来た🏡
- 日本「中国との対話、日本はつねにオープン」 中国「嘘だ!高市は本当は耳を傾ける気なんて無いだろ!白々しい」 [271912485]
- 【悲報】高市政権外務省「旧敵国条項、既に死文化しただろ!!!!」Xで発信 [115996789]
