#cpp #шаблоны_с++
Дан шаблон класса для хранения списка элементов типа T. Какие типы данных нельзя использовать в качестве T? templateclass List { private: struct element { T data; element *next; }; element *head; ... };
Ответы
Ответ 1
В таком виде нельзя в качестве типа использовать ссылки. Их нужно сразу инициировать при создании, а в случае членов класса это можно сделать только в списке инициализации в конструкторе. Благодаря уточнению @Котик_хочет_кушать добавляю, что это ограничение свойственно для С++2003. В С++11 можно с помощью initializer-clause .Ответ 2
Какие типы данных нельзя использовать в качестве T Здесь нельзя использовать абстрактные типы данных, например: интерфейсы. И void - естественно. Да и компилятор, скорее всего, сразу об этом скажет. К чему этот вопрос? Вроде все очевидно.
Комментариев нет:
Отправить комментарий