Реализация может наследовать любой класс в стандартной библиотеке C ++ от класса с именем, зарезервированным для реализации.
Некоторые классы, определенные в стандартной библиотеке C ++, должны быть производными от других классов стандартной библиотеки C ++. Реализация может получить такой класс непосредственно из требуемой базы или косвенно через иерархию базовых классов с именами, зарезервированными для реализации.
В любом слючае:
Каждый базовый класс, описанный как, virtual должен быть виртуальным;
Каждый базовый класс, не указанный как virtual , не должен быть виртуальным;
Если явно не указано иное, типы с разными именами должны быть разными типами.182
Все типы, указанные в стандартной библиотеке C ++, не должны бытьfinal типами, если не указано иное.