Инициализация списка копий - PullRequest
0 голосов
/ 10 ноября 2019

Я изучаю C ++, но есть проблема с инициализацией копирования, которая действительно смущает меня. Ниже приведен класс, который я создал.

class Example{
public:
    Example(initializer_list<int> il) {cout<<"constructor"<<endl;}
    Example(const char *) {cout<<"constructor"<<endl;}
    Example(const Example &) {cout<<"copy constructor"<<endl;}
};

Конструктор и конструктор копирования будут вызваны, если код выглядит следующим образом, Пример ex = "Hello world". Однако, если код является примером ex = {0,1,2,3}, будет вызван только конструктор, а не конструктор копирования. Кто-нибудь объясняет? Я бы очень признателен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...