[過去ログ]
Rust part24 (1002レス)
Rust part24 http://mevius.5ch.net/test/read.cgi/tech/1716759686/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
207: デフォルトの名無しさん [sage] 2024/06/16(日) 13:26:09.91 ID:Crm/SwBu あえて機械語レベルでも考えるとするなら概念的には移動でも (最適化を別にすれば) ビットパターンはコピーしている。 所有権を失った変数にはアクセスできないように静的に制限されるから所有権が移動したように見える。 借用は (借用が存在している間は) 移動を許さない権利として捉えることができる。 http://mevius.5ch.net/test/read.cgi/tech/1716759686/207
395: デフォルトの名無しさん [sage] 2024/06/27(木) 10:21:46.91 ID:nawTLqWn >>389 キャッシュに乗るという前提なら、 確保・解放が遅いだけでアクセス速度とかは変わらないってことでOK? キャッシュに乗る確率とかもスタックとヒープでやっぱちがうんかな http://mevius.5ch.net/test/read.cgi/tech/1716759686/395
399: デフォルトの名無しさん [sage] 2024/06/27(木) 11:20:07.91 ID:veLj9zg3 よくわかんないんだけどスタック上に確保したメモリの所有権を外に移して関数は終了してスタックが縮んじゃうとかさ 「そんなわけないだろ」って思うんだけど http://mevius.5ch.net/test/read.cgi/tech/1716759686/399
417: デフォルトの名無しさん [sage] 2024/06/27(木) 22:40:30.91 ID:TDzAch9x >>406 そのmoveについてもmoveというRust上の概念の理解のみがRustを学習&利用していく上で必要となるよ moveによる生成コードがどのようになるかは最適化の方法の変更や進化で変わり得る話だから確定することはできず、学ぶこともできない こんな場合に現在はたまたまこんな生成コードになっていることだけは実験などでわかるけど今後の保証はない、としか言えない だからmoveはmoveとして理解することが唯一の正解でしょう http://mevius.5ch.net/test/read.cgi/tech/1716759686/417
629: デフォルトの名無しさん [sage] 2024/07/07(日) 17:13:03.91 ID:KUDE2scl 継承はいらん。 理想(のひとつ)はダックタイプで、継承は実装上の都合でそうなっている妥協の産物でしかない。 http://mevius.5ch.net/test/read.cgi/tech/1716759686/629
679: デフォルトの名無しさん [sage] 2024/07/09(火) 15:20:15.91 ID:aoAam1/W >>676 LSPに明記されている前提すら満たさない異なるものであるため 「RustのTraitはLSPと関係ない」で合っている LSPが対象としている遺物における諸問題に悩まされずに済むように 新たな視点で整理されたより良いものとしてRustのTraitが提供されている http://mevius.5ch.net/test/read.cgi/tech/1716759686/679
801: デフォルトの名無しさん [sage] 2024/07/13(土) 08:51:48.91 ID:zzh5ASvo >>784 いくつものバージョンのrustやそのバージョン用のcratesを それぞれ独立に管理して切り替えて使える統合環境なら嬉しいな venvみたいな http://mevius.5ch.net/test/read.cgi/tech/1716759686/801
818: デフォルトの名無しさん [] 2024/07/13(土) 11:54:54.91 ID:mV5TIlCk それはコンパイルのされ方の話であって意味の上での問題ではない気がする Box<dyn T> なら動的ディスパッチされるわけだし let x: T = ... のような変数を作れないという意味ならその通りだけど、それはオブジェクト指向言語におけるインターフェースでも同じでは (それともインターフェースに対してLSPは成り立たない?) http://mevius.5ch.net/test/read.cgi/tech/1716759686/818
991: デフォルトの名無しさん [] 2024/07/30(火) 22:49:06.91 ID:MqLM+D1V 最適化じゃなくて単に移動の問題 Box::newで要素を直接ヒープに作れない (いちどスタックに作られてからコピーされる) のと同じで、コンストラクタを抜ける前に構造体が maybeuninit::assume_init で移動する その上で構造体のアドレスがC++のメソッドにthisポインタとして渡される際に問題を引き起こす、というように思える だとすると最適化の有無は関係なく起こる気がする ついでにいえば >>987 もあまり意味のない発言で、移動はムーブの訳語でもある (例えばC++の仕様の訳語に移動コンストラクタという表現がある) し、そもそもこの問題はムーブセマンティクスによるものでもない これはStringやVecが持つリソースを所有権ごと移動することで効率的に別の変数に割り当てるもので、構造体のアドレスのようなローレベルなものとは違うかと http://mevius.5ch.net/test/read.cgi/tech/1716759686/991
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.051s