Методы — это функции, которые могут выполнять какие-либо действия над данными (свойствами) класса. Методы класса делают публичными.
Сигнатура – это комбинация имени функции с её параметрами.
Методы класса можно перегружать также, как и обычные функции. Особенно это удобно, когда нужно сделать несколько конструкторов, которые будут принимать разные параметры.
Одна из самых распространенных причин для перегрузки конструкторов заключается в необходимости предоставить возможность одним объектам инициализировать другие. Это дает возможность конструировать объекты самыми разными способами.
Список инициализации — концепция суть которой состоит в том, что структура/класс или массив могут быть созданы передачей списка аргументов в порядке, соответствующем порядку определения членов структуры. Списки инициализации рекурсивны, что позволяет их использовать для массивов структур и структур, содержащих вложенные структуры.