タグ

技術と値型に関するpolynityのブックマーク (1)

  • SwiftのArrayが実はすばらしかった - Qiita

    先日SwiftのArrayがヤバイという投稿をしましたが、その後仕様が変更されたこともあり、考えれば考えるほど SwiftのArrayがすばらしいように思えてきました。 SwiftのArrayがすばらしいと思うのは、 Arrayが参照型ではなく値型であることで無駄なコピーが回避できる からです。単純に考えると、代入の度にコピーが発生する値型の方が無駄なコピーが発生しそうなものです。 なお、投稿ではArrayのみを扱いますが、Dictionaryについてもまったく同じことが言えます。 可変長配列は普通は参照型なんじゃないの? 多くの言語では可変長配列は参照型として実装されています。しかし、SwiftのArrayは値型でした。最初にそれを知ったとき、気持ち悪い言語だなぁと思いました。 値型はその性質上、メモリ上でのサイズが固定されている必要があります[*1]。そのため、可変長配列のようにサイ

    SwiftのArrayが実はすばらしかった - Qiita
  • 1