No.1253
合間に Rust の勉強をしています。
今は「所有権」について整理していますが、変数は内容を保存するメモリ、そのアドレスとメタデータを保存するインデックスで構成されていると捉えれば自然に理解出来ます。ソースコード上での使い方別問題ですが、「所有権」の譲渡と貸出はこの構成から見ればいいだけでした。挙動の表面だけで理解しようとすると何がどうなっているか、どうしてこんなことをするのか理解し難いようですけど。
ただ、「所有権」という言葉には疑問があります。私の理解では「変数へのアクセス権限」となりました。この言葉のまんまですが、「所有権」は変数の内容にアクセスできるかどうかですから、持っているかより権限があるかが重要だと思うのです。「所有権」という言葉で扱えばいいだけですが、「所有権」と言われると「所有者」はと?聞きたくなり、「所有物」は何?とも聞きたくなります。「所有権」の説明では「所有者」も「所有物」も変数だとする物が多く、当初は何のこっちゃいと感じたものです。「所有者」は変数であり、「所有物」は変数の内容が書かれたメモリとなります。言葉を変えるなら「変数の内容が格納されたメモリのパーミッション」だとも思えます。あくまでイメージですけど。
#Rust
今は「所有権」について整理していますが、変数は内容を保存するメモリ、そのアドレスとメタデータを保存するインデックスで構成されていると捉えれば自然に理解出来ます。ソースコード上での使い方別問題ですが、「所有権」の譲渡と貸出はこの構成から見ればいいだけでした。挙動の表面だけで理解しようとすると何がどうなっているか、どうしてこんなことをするのか理解し難いようですけど。
ただ、「所有権」という言葉には疑問があります。私の理解では「変数へのアクセス権限」となりました。この言葉のまんまですが、「所有権」は変数の内容にアクセスできるかどうかですから、持っているかより権限があるかが重要だと思うのです。「所有権」という言葉で扱えばいいだけですが、「所有権」と言われると「所有者」はと?聞きたくなり、「所有物」は何?とも聞きたくなります。「所有権」の説明では「所有者」も「所有物」も変数だとする物が多く、当初は何のこっちゃいと感じたものです。「所有者」は変数であり、「所有物」は変数の内容が書かれたメモリとなります。言葉を変えるなら「変数の内容が格納されたメモリのパーミッション」だとも思えます。あくまでイメージですけど。
#Rust