Какая из записей является правильной записью абстрактного класса?

Варианты ответа:

1) abstract class A{virtual f()=0;};

*2) class A{virtual f()=0;};

3) class A{virtual f();};

2. Абстрактный класс – это класс, в котором:

1) есть хотя бы один виртуальный метод;

2) есть виртуальный конструктор;

3) есть виртуальный деструктор;

*4) есть чисто виртуальный метод.

3. Основная проблема множественного наследования состоит в:

1) замедлении выполнения программ;

2) необходимости явно указывать, к какому базовому классу принадлежит метод;

*3) возможности существования двух экземпляров объекта базового класса;

4) неэкономном расходовании памяти.

4. Если записано

class A{public:virtual void f(){cout<<1;}};

class B:public A {public:virtual void f(){cout<<2;}};

то что будет напечатано, если

B b;A &a=b; a.f(); ?

Варианты ответа:

*1) 2; 2) 21; 3) 12; 4) 1; 5) ошибка.

5. Если записано

class A {public:void f(){cout<<1;}};

class B:public A{public: void f(){cout<<2;}};

то что будет напечатано, если

B b; b.f(); ?

Варианты ответа:

*1) 2; 2) 21; 3) 12; 4) 1.

6. Если записано

class A{public:virtual void f(){cout<<1;}};

class B:public A{public:virtual void f(){cout<<2;}};

то что будет напечатано, если

B b; b.f(); ?

Варианты ответа:

*1) 2; 2) 21; 3) 12; 4)1; 5)ошибка.

Лабораторная работа № 6
Тема. Потоки, обработка исключительных
ситуаций в C++

Теоретическое введение.В С++ ввод-вывод осуществляется через потоки. Потоки являются объектами соответствующих классов. При запуске программы автоматически открываются стандартные потоки cin, cout, cerr, clog. Последние два потока используются для вывода сообщений об ошибках. В файле iostream.h определены классы: ввода – istream, вывода – ostream, ввода-вывода – iostream.

Для реализации файлового ввода-вывода небходимо включить файл fstream.h, содержащий производные от istream и ostream классы ifstream, ofstream и fstream,и объявить соответствующие объекты. Например:

Ifstream in;//ввод

Ofstream out;//вывод