Re[2]: constexpr и преобразование указателей
От: Videoman Россия https://hts.tv/
Дата: 18.11.19 09:55
Оценка:
Здравствуйте, rg45, Вы писали:

R>Так оставь в объявлении члена uint8_t*, а в конструкторе void*. Таким образом, касты становятся деталью реализации класса и не затрагивают клиентский код. При желании преобразования можно локализовать в специальных закрытых функциях так, что это не будет доставлять дискомфорта даже при имплементации самого класса.


Ну, собственно, так и было сделано до constexpr. m_data был void*, но как только к конструктору или оператору добавляется constexpr, компилятор тут же начинает ругаться что static_cast<uint8_t*>(m_data) — не разрешен во времени компиляции. В этом и вопрос, а как "двигать" указатель без каста тогда?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.