私が理解していることから、Nim の文字列は基本的に変更可能な一連のバイトであり、割り当て時にコピーされるということです。
それを考えると、私はそれsizeof
が(のようにlen
)バイト数を教えてくれると思いましたが、代わり8
に私の64ビットマシンでは常に与えられるので、ポインタを保持しているようです。
それを踏まえて、以下の質問があります...
課題のコピーの背後にある動機は何でしたか? それらが可変だからですか?
割り当てられたときにコピーされないことがありますか? (
var
関数以外のパラメータはコピーされないと思います。他に何かありますか?)変異した場合にのみ実際にコピーされるように最適化されていますか?
文字列とシーケンスの間に大きな違いはありますか、それとも上記の質問に対する答えはすべてのシーケンスに等しく適用できますか?
一般的に注目に値するものはありますか?
ありがとうございました!