В C++ или Objective-C термин «конструктор» точно такой же, как «инициализатор»?Является ли конструктор таким же, как инициализатор?
Причина в том, что всякий раз, когда я вижу термин «конструктор», он кажется несколько неопределенным, поскольку он также чувствует, что конструктор отвечает за настройку объекта в пространстве памяти, в то время как на самом деле конструкторы просто «инициализируют» ». Таким образом, термин «конструктор» может сбивать с толку, потому что он чувствует, что он сочетает alloc и init, в то время как термин инициализатор очень ясен, что он просто устанавливает значения.
Является ли вышеуказанное утверждение в целом правильным?
поэтому, когда мы говорим, что мы пишем конструктор класса C++, мы просто записывают «часть 2» работы конструктора (инициализация)? (часть 1 была автоматически сделана для вас) –
Если это поможет вам подумать об этом, то да. Когда вы создаете объект класса foo или struct bar (структуры на самом деле являются классами на C++), конструктор автоматически вызывается. –