Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: STR912 + CW 1.7
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Страницы: 1, 2
meister
Цитата(dxp @ Feb 18 2008, 17:47) *
А где размер хранить?


Там в параметре шаблона size. Он, кстати, оттуда и берется в Size. Нафик автор копирует константу времени компиляции в поле класса я так и не просек.
dxp
Цитата(meister @ Feb 18 2008, 21:39) *
Там в параметре шаблона size. Он, кстати, оттуда и берется в Size. Нафик автор копирует константу времени компиляции в поле класса я так и не просек.

А, вы вот о чем, не въехал сразу, прошу пардону. Основная причина, почему так, является исторической - в первой версии в качестве основы очередей был использован класс TCbuf (кольцевой буфер для 8-битных целых), шаблон ring_buffer вырос из него, структура данных перекочевала почти без изменений.

Кроме того, какой реально выигрыш даст использование параметра шаблона в качестве литерала? 1 байт экономии - на фоне общего потребления памяти каналом это ловля блох, имхо. К тому же по быстродействию еще вопрос, что будет шустрее - тут уже от целевой архитектуры больше зависит. Собственно, это, видимо, и есть причина, почему до сих пор никто не обращал внимания на этот момент. smile.gif

Но замечание ваше разумное и правильное, имеет смысл поробовать и такой вариант, спасибо. a14.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.