Size: a a a

2019 November 25

VK

Valentin Kornienko in C++ Together 2.0
'_' #_~
мм... ну я просто не привык юзать то в чем нет сразу необходимости...


второй ответ Only use std::function if you really need a systematic way of organizing a heterogeneous collection of callable entities, such as functions, functors, capturing lambdas and bind expressions.
на счет "отжирающего" std::function -  если вы пишете под маленькие железки-  используйте etl::function. Она не трогает кучу.
Etl- embedded template library.
https://www.etlcpp.com/
источник

'#

'_' #_~ in C++ Together 2.0
ооо
источник

'#

'_' #_~ in C++ Together 2.0
не знал
источник

'#

'_' #_~ in C++ Together 2.0
а как оно вкратце ?
источник

VK

Valentin Kornienko in C++ Together 2.0
На счет "выжирающего память и место" С++. Я сейчас пишу под NRF52832. Так вот. Удобство в управлении памятью, модульностью, архитектурными возможностями по сравнению с Си- огромное. Прошивка в собранном виде с О3 порядка 80 килобайт сейчас. Использую С++17/VSCode/CMake.
источник

'#

'_' #_~ in C++ Together 2.0
Valentin Kornienko
На счет "выжирающего память и место" С++. Я сейчас пишу под NRF52832. Так вот. Удобство в управлении памятью, модульностью, архитектурными возможностями по сравнению с Си- огромное. Прошивка в собранном виде с О3 порядка 80 килобайт сейчас. Использую С++17/VSCode/CMake.
и etl?
источник

VK

Valentin Kornienko in C++ Together 2.0
'_' #_~
а как оно вкратце ?
Оптимизировать надо там, где вы действительно смогли найти просадку в производительности. Экономия на флеше у современных МК- бесполезное дело. Уже на F1 семействе вы не почувствуете ее.
источник

VK

Valentin Kornienko in C++ Together 2.0
'_' #_~
и etl?
нет. Etl я не использую пока. Использую максимум стандартную либу.
источник

VK

Valentin Kornienko in C++ Together 2.0
В ближайшем будущем собираюсь поверх FreeRTOS накрутить потоки из C++11.
источник

VK

Valentin Kornienko in C++ Together 2.0
'_' #_~
и etl?
источник

VK

Valentin Kornienko in C++ Together 2.0
Можете тут посмотреть. Репозиторий с схемой и прошивкой живет тут
источник

VK

Valentin Kornienko in C++ Together 2.0
И, для справки. У NRF52 SPI медленнее, чем у F1 семейства:)
источник

'#

'_' #_~ in C++ Together 2.0
круть.. спс
источник

VK

Valentin Kornienko in C++ Together 2.0
Вообще. Если есть возможность использовать С++- надо использовать С++. Гарантий больше дает в итоге.
источник

VK

Valentin Kornienko in C++ Together 2.0
Да, в моем случае тоже были места, куда прокидывать void* приходится. Это стык С и С++ кода, тут уже ничего не поделать.
источник

'#

'_' #_~ in C++ Together 2.0
Valentin Kornienko
Да, в моем случае тоже были места, куда прокидывать void* приходится. Это стык С и С++ кода, тут уже ничего не поделать.
я все еще надеюсь что void * не уберут) кучу времени экономит
источник

VK

Valentin Kornienko in C++ Together 2.0
Убирать его нельзя. Куча системного апи сломается. А вот использовать в своем коде не надо.
источник

'#

'_' #_~ in C++ Together 2.0
а мб я тоже системный апи когда нибудь буду писать)
источник

'#

'_' #_~ in C++ Together 2.0
почему сейчас то не надо?
источник

VK

Valentin Kornienko in C++ Together 2.0
Вы гарантируете, что под void* лежит тип, который вы ожидаете и что этот адрес выровнян ?
источник