Avatar
Avatar
Kuniwak
遅レスです。クラス不変条件が満たさないケースを想定するということは、配列があり count が要素数と一致しないケースを考慮したコードを書くということです。ふつうやらないと思いますし、私はやりたくありません。本来なら配列側のテストで担保されるべきことです。 (edited)
過去ログの議論だとそこでいう配列が struct のことを指していると思いますが,それでいうと配列の型を作る側の話をしてました.struct の init による検査だけで保証されているのなら,init を複数人が触ったり init を迂回する余地があるならその保証は (struct を作っている側からすると) 信用できないという話をしてました.これも規模によるとは思います. なぜこの話をしたのかというと,結局そこが信用できないなら let にしてもコストは減らないので let にしてあとで困る場面にぶつかるより var にしておいた方が良いのではないかと思ったからです.ここでいうコストは struct を作る側のコストだったので,使う側のコストは確かに減ることもあると思います. (edited)