Имя пользователя:
Пароль:
 

Название темы: указатели
Показать сообщение отдельно
pva pva вне форума

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


В C++ эта конструкция правильней. Она обозначает явный вызов конструктора копирования.
Ещё полезные примеры:
Код: Выделить весь код
double x = double(); // то же самое, что double x(double()), но с явным вызовом.

class X
{
public: explicit X() {cout << "X::X()\n";}
}

X x = X(); // сработает
X x(X()); // сработает
X x; // ошибка - нет неявного конструктора.
X x(); // ошибка - описание функции;

template<class T> class temp1
{
    double y;
    X x;
public: temp1() : x(), y() {} // вызов явных конструкторов, x=X(), y=double()
}

Отправлено: 08:50, 22-12-2005 | #4

Название темы: указатели