в общем так
1. согласно стандарту 20 это предложение P0645R10, тут можно почитать че дека и как это хорошо и как нуну реализовывать в компиллере:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p0645r10.html
https://en.cppreference.com/w/cpp/20
2. gcc версии 12 почти полностью уже реализует C++20 чем я усиленно пользуюсь в угоду оптимизации выходного кода, но std::format еще не пилили.. взял один из возможных проработанных драфтов на основе которого скорее всего будет перенос (есть другие альтернативы с приемлемой придурью)
https://fmt.dev/latest/index.html
3. потратив 4 вечера перед сном на портирование добился того что компиляется под кортексик, и правильно работает. убрал внешние зависимости характрные для кода "больших машин", убрал ОС-зависимость. все работает но есть косяг. пока полностью выдрать функционал шаблонных параметров wchar и locale не удалось, если на locale сделал затычки по короткому, то для wchar тянется вся портянка wchar функций работы со строками которых в embedded-like libc отродясь особо не водилось. вместо них тоже враперы воткнул. в итоге лишние неработающие 100к кода - шаблон не знает че вы воткнете на инпут поэтому wchar тоже должен быть обработан по его мнению.
как только вырежу скальпелем эту ненужную фичу - выложу для всех, тогда посмотрим кто не захочет красиво выводить текст коротким быстрым кодом без возможности выстрелить себе в ногу ( в стек )ю расчитываю на то чтоб если не дефайнить double аргументы - чтоб вмещалось в проекты с расчетным флешом 16к. можно будет на мелкоконтроллерах применять для удобства.
-
- можно подробнее какие приемы используете Constantin24(66 знак., 01.10.2021 07:24)