generated at
Rustの文字列型











文字列が静的か、動的かという視点で見るなら
コード上に直接記述するような、リテラルとしてプログラムに含まれるような文字列は &str
プログラム実行時に動的に決まるような文字列は String にする
となるが、この↑説明は必要条件を満たしてるが、十分条件は満たしていない感じ
実際は、 &str はslice、参照なので意味合いとしてはもっと広い
String のsliceも &str で表現できるし






>str と String の使い分けに関する、ものすごく実用に偏った説明「仮引数では基本的に &str、ただしその関数の実装で String が必ず必要なら String で受ける。構造体のメンバについては、str と String の区別がつかないうちは全部 String で困らない」

参考




>