Конструктор
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
А может кто-нибудь рассказать чем отличается инициализация полей класса в таком виде:
от такого:
?
.
А в чем отличие то? В обоих случаях к моменту завершения конструктора поля a и b получают свои значения из аргументов.
Отличие в том,что первый способ не применим к константам, которые как известно должны получать значения на этапе инициализации, иначе выдаст ошибку.
А простым переменным будет без разницы какой способ применишь.
Константы и ссылки не получится так использовать.
Они должны быть инициализированы.
Также это может не прокатить, например,
с объектами классового типа, которые запрещено присваивать,
или, например, это может стукнуть по производительности
для типов со сложной инициализацией или присваиванием.
Но для начала почитайте о том что такое
инициализация и что такое присваивание.