3 Что произойдет, если конструктор копирования определенного класса получит свой аргумент по значению, а не по ссылке?
a. Никаких изменений.
б. Деструктор будет немедленно вызван.
c. Ошибка компиляции.
d. Будет вызван конструктор по умолчанию.
4
Учитывая следующие строки кода:
class A
{
public:
A() { cout << "A constructor "; }
virtual ~A() { cout << "A destructor " << endl; }
};
class B : public A
{
public:
B() { cout << "B constructor " << endl; }
~B() { cout << "B destructor " << endl; }
};
void main()
{
A* a2 = new B;
delete a2;
}
Что, как ожидается, будет напечатано после выполнения функции? Объяснять.
a. Конструктор B конструктор B деструктор A деструктор
b. Конструктор A деструктор
c. Конструктор B Конструктор A деструктор B деструктор
d. Ничего
6
Учитывая следующие строки кода:
class A
{
public:
void display() { cout << "Displaying..\n"; }
virtual void show() { cout << "Showing..\n"; }
virtual void print() = 0;
};
class B : public A
{
//
};
Which of the methods in class A must be overridden in class B so that the following statement in the main function will work:
"B b;"
a Все методы - показать, показать, распечатать
б Только виртуальные методы - показать, распечатать.
c Только метод «print».
d. Ни одним из методов.