У некоторых адаптеров -контейнеров защищены участники, так почему же у них также нет виртуальных деструкторов? [дублировC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 У некоторых адаптеров -контейнеров защищены участники, так почему же у них также нет виртуальных деструкторов? [дублиров

Сообщение Anonymous »

Несколько адапторов-контейнеров-специфично, std :: privation_queue , std :: stach и std :: queue -предоставление защищенного доступа к базовому контейнеру первого порядка, например, std :: vector или std :: deque . Это кажется явным приглашением к этим адаптерам, по крайней мере, в некоторых обстоятельствах; В противном случае, какой смысл защищать данные ? Тем не менее, эти адаптеры контейнеров не разоблачают виртуальные деструкторы, что означает, что нет никакой гарантии, что класс, полученный от одного из них, будет разрушен правильно. Есть ли правильный способ получить из одного из этих контейнерных адаптеров, или есть какая-то другая причина их защищенных членов данных? Ни один из этих объектов контейнера не имеет виртуальных деструкторов, поэтому ненадежное разрушение представляет опасность избавиться от любого из них. Но контейнеры первого порядка не подвергают защищенных данных , поэтому в отличие от адаптеров-контейнеров, они явно не приглашают деривации.

Подробнее здесь: https://stackoverflow.com/questions/796 ... -have-virt
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»