Эта таблица говорит, что перегрузка назначения возможна только для структур, но не классов. Это удивляет меня. Разве синтаксический сахар A = B не безопасен? Каково было обоснование дизайна для ограничения его структурами?
A = B
В D классы используются для справки.Поэтому, когда вы делаете A = B, вы не копируете сам объект, а просто ссылку на этот объект.
Ни один из объектов не изменяется в процессе.Так что нет смысла определять opAssign для них.
D классы имеют ссылочную семантику.Если вам нужен способ получить копию объекта (он думает), стандартная или обычная вещь - предоставить свойство .dup.
.dup
Я бы подал ошибку, и сделал .Общее правило: Язык программирования D , реализация DMD, веб-сайт.Так как у меня нет TDPL под рукой, я собираюсь приступить к реализации этого.