Rustとか言うダブスタ言語 (173レス)
上下前次1-新
60: 2024/10/19(土)19:23 AAS
それは単に使わなければ良いだけじゃないの?
61: 2024/10/19(土)19:23 AAS
それは単に使わなければ良いだけじゃないの?
62: 2024/10/19(土)19:39 AAS
>>45
アメリカでは政府も国防総省もRust言語なんだね
63(1): 2024/10/19(土)21:27 AAS
メモリの仕組み理解してからRustやろうね
できればCかC++やってから
64(1): 警備員[Lv.13][芽] 2024/10/19(土)21:29 AAS
>>63
いや理解してんだわ
だからこそ同じ書き方で2つの振る舞いをするRustが嫌いなの
65: 2024/10/19(土)21:35 AAS
JavaやC#もそういうことはある
66: 2024/10/19(土)21:37 AAS
「本当に理解した?」
「はいっ!」←こういう新人いるよね
67(1): 2024/10/19(土)21:44 AAS
こいつは何をダブスタって言ってるんだ?
68(1): 2024/10/19(土)21:50 AAS
>>64
誤解してるんじゃないの?
Rustにはコピー可能型とコピー不可能型の2種類しかない
それを理解すれば振る舞いは常に一意に定まることがわかる
69: 2024/10/19(土)22:03 AAS
無職はほっとけよ
仕事してないんだから
70: 警備員[Lv.4][新芽] 2024/10/19(土)22:59 AAS
このスレには、僕のスッキリしない部分を言語化して説明してくれる人が多くて助かります
71: 警備員[Lv.14] 2024/10/19(土)23:29 AAS
>>67
移譲とメモリコピーで振る舞い変える
72(1): 警備員[Lv.14] 2024/10/19(土)23:30 AAS
>>68
だから.cloneを明記しないと移譲になるでいいじゃん
73(1): 2024/10/19(土)23:46 AAS
>>72
コピーとcloneは明確に異なると定められている
コピーはプログラマーが実装することはなくビットパターンごとサイズ分のメモリがコピーされる
cloneはプログラマーが自由に実装することができて例えばヒープ領域を持つデータならその部分も含めてコピーすることもできるしコピーせずに共有することもできてcloneは型毎に自由度がある
このようにコピーとcloneは明確に異なっている
74: 2024/10/19(土)23:49 AAS
コピーと同じ動作になるのはムーブ
どちらもプログラマーは実装することができない
ただしムーブはムーブ元の値が無効になるという点のみコピーと異なる
75(1): 2024/10/20(日)02:08 AAS
ムーブとコピーで同じイコールを書くのが気に入らないって事かな?
所有権の移譲とか言うから分かりにくいんだと思う。「メモリ管理責任」が無いからコピー、有れば「メモリ管理責任」ごとムーブするだけ。
で、プリミティブ型はそもそも移動する意味がないしコピーの方が速い。
優先順位の考え方が逆で、イコールはコピー出来る型ならコピー、出来ない型ならムーブする。ムーブも出来ない型ならコンパイルエラー。で、エラーが出る場合は明示的にcloneを書いたりする。でcloneも出来ない型なら更に他の方法で対策する。
そうやって型で制約をはめる事で誰が書いても同じ挙動になるようにしている。
76: 警備員[Lv.14] 2024/10/20(日)03:27 AAS
>>73
じゃあなおさら変数.mcopyが必要だね
77(2): 警備員[Lv.14] 2024/10/20(日)03:30 AAS
>>75
そうやって色々試して型探ってくよりはるかにプリミティヴ系も=のみの場合はメモリ解放して使えなくなるくらいのほうが楽だろ
コピーは上で言ってるように.mcopyを明示的に示せばいいだけ
78: 2024/10/20(日)04:25 AAS
>>77
なんか物事の捉え方がインタプリタと勘違いしてない?
コンパイラなんだからコンパイル時に全部処理されるのよ?
79: 2024/10/20(日)04:29 AAS
プログラム的な意味論とそれが最適化されて出力された後のコードの挙動まで解説しないと駄目なのかな?
上下前次1-新書関写板覧索設栞歴
あと 94 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.016s