Главная » C++ энциклопедия » К » Конструкторы с аргументами
Категория: C++ энциклопедия » К
  • 0

13 дек 2011

Автор: admin

Конструкторы, как и все остальные функции, можно перегружать. Вы можете объявить столько сигнатур конструкторов, сколько вам потребуется. Единственное настоящее отличие между сигнатурами конструкторов и обычных функций заключается в том, что конструкторы не имеют возвращаемого значения и не могут объявляться константными. Если вы объявите какие-либо конструкторы с аргументами, но не объявите конструктора без аргументов, то компилятор не позволит конструировать объекты этого класса, даже в качестве базового для другого класса, с использованием конструктора без аргументов.

class Foo { 
public:
Foo(char*);
};

Foo f;  // Нельзя – нет конструктора без аргументов!
class Bar : public Foo {
public:
Bar();
};
Bar::Bar()
{
// Ошибка! Нет конструктора Foo без аргументов
}
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.