Нежелательное неявное создание объекта с помощью std::byte VS charC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Нежелательное неявное создание объекта с помощью std::byte VS char

Сообщение Anonymous »

Похоже, что std::byte обычно предназначен для замены использования char в буферах для распределения блоков необработанной памяти.
Но меня беспокоит тот факт, что std::byte может неявно создавать объекты, а char — нет. Если цель состоит в том, чтобы выделить необработанную память, чтобы вы могли создавать в ней объекты (например, с помощью нового размещения), зачем вам нужно, чтобы std::byte заранее заполнял буфер кучей неявно созданных объектов?< /p>
Не лучше ли использовать char, чтобы избежать потенциального неопределенного поведения, связанного со временем жизни этих нежелательных и неявно созданных объектов std::byte (т. е. доступа к ним извне) их время жизни случайно)?
И еще один связанный с этим второй вопрос: перекрываются ли времена жизни объектов std::byte с более крупными объектами, созданными поверх той же памяти? Должны ли объекты std::byte закончить свое время существования, прежде чем другой объект сможет использовать байты, или несколько жизней объекта могут совместно использовать байты?
Спасибо.

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

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

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

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

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

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

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