Недавно я читал о неизменяемых строках, здесь и здесь, а также о том, почему D выбрал неизменяемые строки. Кажется, что есть много преимуществ.
- тривиально безопасный поток
- более безопасный
- больше памяти в большинстве случаев использования.
- дешевые подстроки (токенизация и нарезка)
Не говоря уже о том, что большинство новых языков имеют неизменяемые строки, D2.0, Java, С#, Python и т.д.
Может ли С++ извлечь выгоду из неизменяемых строк?
Возможно ли реализовать неизменяемый строковый класс в С++ (или С++ 0x), который будет иметь все эти преимущества?
обновление:
Есть две попытки в неизменяемых строках const_string и fix_str. Ни то, ни другое не было обновлено через полвека. Они даже используются? Почему const_string никогда не превращал его в boost?