sport->write( 0x06 ); - это и есть запись ответа ACK в устройство. *(pointer + counter)Есть глобальная структура, в ней пока пустая ссылка на инстанс класса датчика dht.
typedef struct {
SensorDht *dht = nullptr;
} GlobalSensors_t;/* что-то типа &new SensorDht(...args) */new SensorDht{ /*whatever*/ };?&new? но я на 99% уверен, что любое решение на основе deque (priority_queue или ручной вариант) будет самым быстрым, с учётом малого объёма данных и более частого попадания в кэш, чем при использовании деревьев
std::deque не решает задач приоритетной очереди. Стандартная std::priority_queue, при этом, по умолчанию базируется на std::vector.Язык программирования - это просто инструмент.
Инструмент всегда выбирается под конкретный проект.
Профессионализм - это способность владеть широким набором инструментов и постоянная готовность осваивать новые инструменты.
std::hash в некоторых реализациях обращается именно к функции CityHash64.hashed и положить в Out of line. Так будет даже удобнее. Сама hashed в таком случае станет очень легкой и сможет участвовать в операциях времени компиляции.std::hash нам тут тоже не очень нужен. Мы вполне можем справиться (я очень уверенно справляюсь) с простой хеш-функцией, которая может быть и ненадежной, но давать максимально равномерное распределение значений. например, я работаю с конгруэнтным генератором - Ly.std::byte, то inline можно смело менять на constexpr или consteval. std::hashне может использоваться в контексте времени компиляции. Он не отвечает требованиям к составным объектам времени компиляции. Он не имеет constexprконструктора и его оператор не помечен как constexpr. Особенно у реализации для std::basic_string. В общем смысле, согласно стандарту, код в примере не будет работать на этапе компиляции.std::unordered_map::find свой аргумент принимает по ссылке. Как только от constexpr объекта требуется указатель или ссылка, он сразу перестает быть constexpr. В последних строках ничего не этапе компиляции делаться не будет.constexpr, но она находится в составе типа, объект которого в коде хочет создаваться на этапе компиляции.std::hash объявлять друзьями для hashed? Доступ к приватному полю лучше организовать иначе.