公式
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
981デフォルトの名無しさん
2021/08/24(火) 12:45:30.39ID:PednkAUi982デフォルトの名無しさん
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を超えています。これ以上書き込みはできません。
ニュース
- 【足立区暴走11人死傷】歩行者はねた後も減速せず…精神疾患がある37歳男「車で神奈川の山の方に行きたいと思った」 [ぐれ★]
- NHKの災害情報、閲覧に「ユーザー登録必要」で批判の声多数 [少考さん★]
- 🇺🇸🇨🇳米中関係は「極めて強固」とトランプ氏… ★7 [BFU★]
- 【北海道】「稀に見る大きな個体」 体長1.9m、体重400kg超の巨大グマを捕獲 苫前町 [煮卵★]
- SuicaとPASMOのコード決済「teppay(テッペイ)」26年秋開始 🐧🤖 [少考さん★]
- 【円安】「ホストに貢ぎたい」と海外で売春する日本人女性 2カ月で2千万円稼ぐケースも★2 [1ゲットロボ★]
- 【高市悲報】中国「日本への渡航禁止報復はたったの4ヶ月ネ!花見時期には解除するアル」 [614650719]
- 小林源文(74)「実際に日中戦争になったら先の大戦の沖縄、硫黄島での戦闘のように日本人の恐ろしさを教えてあげるよw」 [237216734]
- 防衛省「台湾有事にロシア参戦するかも」 [177178129]
- 【速報】米中電話会談、おやびん側からの提案だった。高市さん... [834922174]
- エロ漫画男「金玉上がってきた…ッ!」 [279254606]
- イケメンになりたいからイケメンお前らの習慣教えて
