Почему IntelliSense показывает конструктор, который я не написал? - PullRequest
4 голосов
/ 18 июня 2011

Что означает предложение от IDE? (с использованием VS 2010)

enter image description here

Нет конструктора baseClass_2, который принимает предложенный параметр ( const baseClass_2 & ). Итак, почему это появляется?

Ответы [ 2 ]

7 голосов
/ 18 июня 2011

Неявно определенный конструктор копирования.

Существуют специальные функции-члены, которые определяются по умолчанию, когда вы явно не объявляете / не определяете их:

  • Конструктор по умолчанию
  • Конструктор копирования
  • Destructor

Обратите внимание, что конструктор по умолчанию не будет определен, если вы предоставите любой другой конструктор, кроме конструктора копирования.

4 голосов
/ 18 июня 2011

Конструктор является конструктором копирования, и он объявляется и определяется неявно.

...