const(FAQ)をじっくり読む
const(FAQ)
D の const システムは独特なものなので、 多くの質問があると思われます。
* 何故 D には const があるのか?
* D の const の設計を決める原理は何か?
* 推移的 const とは何か?
* 頭部 const とは何か?
* 尾部 const とは何か?
* 論理的 const とは何か?
* 読み取り専用ビューの意味で readonly を使わないのは何故か?
* 何故 Java は const を排除したのか?
* C++ の const とどう違うのか?
* なぜ文字列がinvariantなのか?
* 関数の引数がデフォルトで const でないのは何故か?
* クラスの静的メンバは推移的 const でカバーされるのか?
論理的constをなくしたり,const性を推移的にしたりと,C++とはバランスの取り方が違うんだなと改めて思った.
これらの理由は理解しますが,標準ライブラリには void f(const(char)[] s){} と void f(string s){} の両方を定義するようにしてください><;
明示的にidupするの大変だし無駄ですぅ.