[過去ログ]
プログラミング言語 Rust 4 (1002レス)
プログラミング言語 Rust 4 http://mevius.5ch.net/test/read.cgi/tech/1507970294/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
694: デフォルトの名無しさん [] 2018/01/15(月) 20:48:46.10 ID:w3dU/zjB >>691, >>692 なるほど。mutable参照が1つしか取れない理由はマルチスレッド以外にも理由があったのか。 単純なコードだけど実際に示されないと気が付けないな。(少なくとも俺は) やっぱりGC無しの言語はメモリ管理が難しいな。 そして、それをコンパイラがはじいてくれるのはやっぱり有難い。 納得のいく答えが得られた。教えてくれてありがとう。 >>690 それは木構造でも親から子を辿るだけで済む場合に限定されない?子から親を辿りたくなった場合だと無理じゃない? 子は複数いるんだからそれぞれの子が全て親のmutable参照を持つことはできないよね。 だって、mutable参照は1つしか作れないんだから。 そうするとRcとWeakとRefCellを使わざるを得なくなるよね?ならない?使わなくても済む方法があるの? ちなみにRcじゃなくてArenaっていう仕組みを使うって方法ならどっかのブログで見たんだけど、 その方法だと動的に追加していくことは出来るけど、動的に削除を行うことは出来ないよね。 例えばJavaScriptのDomツリーとかはparentNodeで子から親のNodeを辿れるようになってるし、 appendChildとかremoveChildとかでNodeを動的に追加したり削除したりももちろん出来るよね。 それと同じようなことをRustでもしたかったらRcとWeakとRefCellを使うしかないんじゃないかと思ってるんだけど。 http://mevius.5ch.net/test/read.cgi/tech/1507970294/694
715: デフォルトの名無しさん [sage] 2018/01/16(火) 18:24:58.75 ID:IF1qR6jo >>694 子→親のリンク無し縛りでも動的な追加削除はできると思うけど。 子からのリンクが必要なのは、各ノードへの参照をそのままイテレータとして見せて前後移動したい場合のみじゃね で、まあ、子からのリンクが絶対必要として、そのためにRc使って要らん参照カウンタと間接参照を各ノード毎に持たせるってすごい無駄に思える 諦めてraw pointerでいいんじゃないかなあ…… http://mevius.5ch.net/test/read.cgi/tech/1507970294/715
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.038s