C++ «недопустимый конструктор»

когда я пытаюсь создать класс с конструктором, который принимает объект этого класса по значению, например,:

class X{
    X(){}
    X(X x){} //Error!
};

тогда g++ жалуется на следующее для второго конструктора:

error: invalid constructor; you probably meant ‘X (const X&)’

Уважаемый компилятор, нет, я не имел ввиду ссылку на константу. На этот раз я хотел сделать то, что написал :, чтобы передать параметр x по значению! Почему это недействительно?

6
задан gexicide 10 August 2012 в 15:40
поделиться