int main()
{
// конкретизируется класс Queue<int>
// оператор new требует, чтобы Queue<int> был определен
Queue<int> *p_qi = new Queue<int>;
int ival;
for ( ival = 0; ival < 10; ++ival )
// конкретизируется функция-член add()
p_qi->add( ival );
int err_cnt = 0;
for ( ival = 0; ival < 10; ++ival ) {
// конкретизируется функция-член remove()
int qval = p_qi->remove();
if ( ival != qval ) err_cnt++;
}
if ( !err_cnt )
cout << "!! queue executed ok\n";
else cerr << "?? queue errors: " << err_cnt << endl;
return 0;
}
После компиляции и запуска программа выводит следующую строку:
!! queue executed ok
Упражнение 16.5
Используя шаблон класса Screen, определенный в разделе 16.2, реализуйте функции-члены Screen (см. разделы 13.3, 13.4 и 13.6) в виде функций-членов шаблона.