Yury
сейчас соображу
Yury
это в рантайме проверка?
🐙 Antony
нет, это на compile-time
Yury
👍
A
подскажите, есть ли какая-нибудь фича, чтобы среди дефолтных аргументов задавать аргумент, находящийся на конце, но при этом не перечислять все аргументы идущие до него?
например
void foo(int a=1, int b=2, int c=3, int d=4);
можно ли как-нибудь сделать вызов, указав только d? то есть что-то вроде foo(d=10) ?
🐙 Antony
http://www.boost.org/doc/libs/1_64_0/libs/parameter/doc/html/index.html
Dmitry
🐙 Antony
Не понял ваш вопрос
Dmitry
детекторов мало
Dmitry
только сравнение и потоки
🐙 Antony
Только под задачи данной конкретной библиотеки писались детекторы. Скинул код, как мини-пример, по которому попроще понять что происходит (та имплементация что в стандартной библиотеке - обладает кучей дополнительных шаблонов и разобраться в ней сложнее)
Dmitry
> detector_impl(long)
Dmitry
почему именно long?
Dmitry
> detector_impl<Tleft, Tright> (1L)
Александр
не int
Dmitry
магические нечисла
🐙 Antony
чтобы в начале компилятор пытался выбрать ту перегрузку, которая
detector_impl(long)
, а уж если не получилось, тогда long параметр приводил к int и вызывал
detector_impl(int)
Dmitry
https://github.com/reagentoo/libcxx/blob/master/include/whole.h#L27
Dmitry
вот мой старый велосипед, сильно не ругайте
🐙 Antony
Прикольно:
template <class _X>
_X& declref(...);
declref<X>(declref<_Ys>()...))
Dmitry
подпорка
Constantine
вместо именованных параметров всегда можно структуру впилить
Constantine
со статическими методами
Constantine
если существует некоторых способов создания; если речь идет о конфигурации можно написать
struct some{
arg1_type arg1;
arg1_type arg2;
some& init_arg1(arg1_type arg1);
some& init_arg2(arg2_type arg2);
};
и писать some().init_arg1().init_arg2()
Constantine
я бы сказал, что все эти чудеса буста нужны скорее для разработчиков библиотек
Александр
DI вроде умеет сама всё распихивать по аргументам
Александр
но она жутковата, я не рискнул разбираться
Александр
но если разобраться, то крутая
Constantine
вопрос просто в следующем: вот функция с 10 параметров, ну неужели нет типовых вызовов
Александр
функция с 10 параметрами - плохой код
Александр
https://stdcpp.ru/proposals/59f60920-6fd2-4849-b4b1-9c6d5ca7f47a
Александр
в тему
Constantine
ну да, это немного не хватает
Constantine
просто наверняка есть типовые наборы значений
Constantine
даже если параметров 5
Constantine
а пару значений одновременно так не пихнешь
RattenKong 🦧🐀🦍️
>Неявная инициализация нулем не упомянутых в инициализаторе полей
Constantine
Давно хотел спросить. Есть ли реализация printf или подобного синтаксиса с полным type safety? грубо говоря, хочу L"width = %d, height = %d"_format(10, 20.0)
RattenKong 🦧🐀🦍️
string interpolation? вроде нет
Александр
Есть
Александр
pprint
Александр
Разбирает формат в компилтайме
RattenKong 🦧🐀🦍️
i see only python
Александр
Сейчас найду
Constantine
полагаю речь про
https://github.com/rinatz/pprint/tree/master/include/pprint
Constantine
но что-то я не вижу там того, что я хочу
Constantine
по виду это не то
Александр
Не
Constantine
я видел похожее где-то в районе кодпроджекта, что ли
Alignant
Народ, среди вас есть кто-то кто работал в сфере CV?
Constantine
по заголовку конфы cv здесь значит... немного другое)
RattenKong 🦧🐀🦍️
c vision?)
Constantine
cv-qualifier
Александр
Computer vision
🐙 Antony
Александр
Александр
Нашел!!
Александр
https://github.com/tfc/pprintpp
Александр
It is a pure compile time library, and will add no overhead to the runtime of your programs.
Александр
Минус есть - там макросня юзается
Александр
Александр
А в чем таска?
Surreal
А кто буст финансирует? Орги + пожертвования?
Александр
Evgenii
в каких временных рамках?
Evgenii
я хотел бы, но до августа вряд ли больше пары часов в неделю смогу
RattenKong 🦧🐀🦍️
++ к сЭру выше
Evgenii
Это все та же история про нечеткий поиск?
Evgenii
Я даже нашел алгоритм который мне показался подходящим, но на этом все пока🙄
RattenKong 🦧🐀🦍️
RattenKong 🦧🐀🦍️
книжка по биоинформатике илли вычислительной биологии
RattenKong 🦧🐀🦍️
но там тысяча и один способ терзать строки
Evgenii
RattenKong 🦧🐀🦍️
там вообще
RattenKong 🦧🐀🦍️
конечно, упомянаются случаи при работе с малыми алфавитами
RattenKong 🦧🐀🦍️