12.10.2015 14:33, Чуйкин Андрей пишет:
> Имя detail используется многими проектами и во многих книгах.
> Встречая его, однозначно понимаешь, что за ним находится. В том
> смысле какого рода код находится в namespace detail.
Ни разу не встречал. По смыслу тоже не вижу тут связи - код кольцевого
буфера, который там сейчас есть, и подобные вещи не являются деталями
реализации ОС, это именно библиотека поддержки. Будь возможность сделать
это стандарными средствами, так бы оно и было реализовано.
Кстати, в stl есть хорошая реализация этой вещи (std::queue), но stl
требует аллокации, что тащит за собой работу со свободной памятью, а это
не радует. Можно или нет написать свой аллокатор, который будет
размещать объект статически, не знаю, на это моих умений на данный
момент не хватает. А вообще, цель более, чем достойная: убрать этот
кольцевой буфер и заменить его стандартным.
>
> usr в oslib вроде как шило на мыло. Раз detail не нравится, то
> трогать не будем.
Можно, например, просто сделать lib. Коротко и понятно. Но мне не
нравится изменение API - пользовательский код перестанет
компилироваться. Если бы это несло какую-то новую функциональность,
тогда на это имел бы смысл пойти на это. Будет новая функциональность,
можно будет озаботиться и именами. Имхо.
--
HZ