ВходНаше всё Теги codebook PARTS Поиск Опросы Закон Вторник
5 июля
1164122 Топик полностью
VladislavS. (13.01.2022 17:57, просмотров: 149) ответил Zoro на если я правильно понял: экземпляр объекта "размазывается по исполняемому коду" столько раз сколько упоминается (типо inline). В обычных Си экземпляр объекта занимает память "один раз", а его функции вызываются столько раз сколько надо.
У этих объектов нечем занимать память, переменных членов класса в них нет. Статические методы вырождаются в обычные функции, которые обладают свойством хорошо инлайниться, так как определены в описании класса. Точно так же как и в С они могут быть один один раз в коде и вызываться из разных мест. Это уже на усмотрение оптимизатора. На самом деле, нет никакой необходимости вообще создавать эти объекты. Это я пример просто для понимания сути происходящего привёл. Намного 

эффективней работать именно с типами. Их проще передавать между классами.

using LED = TLed<GPIO::PA5>;  // Вешаем светодиод на ногу PA5
using KEY = TKey<GPIO::PC13>; // А кнопку на PC13

И всё, дальше можно использовать в коде LED и KEY в соответствии с их "повадками".