
reagentoo
31.05.2017
15:23:37
http://en.cppreference.com/w/cpp/experimental/is_detected оно?

Antony
31.05.2017
15:23:46
да, оно

Александр
31.05.2017
15:23:50
decltype(std::declval<T>.somemethod(std::declval<int>()))
опа

Google

Александр
31.05.2017
15:24:09
в стандарт завезли что ли

reagentoo
31.05.2017
15:24:24
ехал деклвал через деклвал

Александр
31.05.2017
15:25:47

Antony
31.05.2017
15:26:21
Если нужна упрощенная имплементация, то как-то вот так:
https://github.com/apolukhin/magic_get/blob/develop/include/boost/pfr/detail/detectors.hpp#L14-L27

Yury
31.05.2017
15:27:00
Господа, подскажите простой способ задать шаблон наследника класса для c++ 11?

Antony
31.05.2017
15:29:26

Yury
31.05.2017
15:30:08
Что-то вроде template<class T : BaseClass>, только чтобы компилировалось ?

Antony
31.05.2017
15:31:46
Вот это подойдёт?
static_assert(std::is_base_of<BaseClass, T>::value, "")

Yury
31.05.2017
15:32:18
сейчас соображу
это в рантайме проверка?

Antony
31.05.2017
15:32:36
нет, это на compile-time

Yury
31.05.2017
15:32:54
?

Alexey
31.05.2017
15:37:40
подскажите, есть ли какая-нибудь фича, чтобы среди дефолтных аргументов задавать аргумент, находящийся на конце, но при этом не перечислять все аргументы идущие до него?
например
void foo(int a=1, int b=2, int c=3, int d=4);
можно ли как-нибудь сделать вызов, указав только d? то есть что-то вроде foo(d=10) ?

Google

Antony
31.05.2017
15:39:18
http://www.boost.org/doc/libs/1_64_0/libs/parameter/doc/html/index.html

reagentoo
31.05.2017
15:39:59

Antony
31.05.2017
15:41:16
Не понял ваш вопрос

reagentoo
31.05.2017
15:41:31
детекторов мало
только сравнение и потоки

Antony
31.05.2017
15:44:09
Только под задачи данной конкретной библиотеки писались детекторы. Скинул код, как мини-пример, по которому попроще понять что происходит (та имплементация что в стандартной библиотеке - обладает кучей дополнительных шаблонов и разобраться в ней сложнее)

reagentoo
31.05.2017
15:45:33
> detector_impl(long)
почему именно long?
> detector_impl<Tleft, Tright> (1L)

Александр
31.05.2017
15:46:27
не int

reagentoo
31.05.2017
15:47:56
магические нечисла

Antony
31.05.2017
15:48:22
чтобы в начале компилятор пытался выбрать ту перегрузку, которая
detector_impl(long)
, а уж если не получилось, тогда long параметр приводил к int и вызывал
detector_impl(int)

reagentoo
31.05.2017
15:49:51
https://github.com/reagentoo/libcxx/blob/master/include/whole.h#L27
вот мой старый велосипед, сильно не ругайте

Antony
31.05.2017
15:51:50
Прикольно:
template <class _X>
_X& declref(...);
declref<X>(declref<_Ys>()...))

reagentoo
31.05.2017
15:52:10
подпорка

Constantine
31.05.2017
15:58:12
вместо именованных параметров всегда можно структуру впилить
со статическими методами
если существует некоторых способов создания; если речь идет о конфигурации можно написать
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()
я бы сказал, что все эти чудеса буста нужны скорее для разработчиков библиотек

Google

Александр
31.05.2017
16:07:11
DI вроде умеет сама всё распихивать по аргументам
но она жутковата, я не рискнул разбираться
но если разобраться, то крутая

Constantine
31.05.2017
16:07:48
вопрос просто в следующем: вот функция с 10 параметров, ну неужели нет типовых вызовов

Александр
31.05.2017
16:08:40
функция с 10 параметрами - плохой код
https://stdcpp.ru/proposals/59f60920-6fd2-4849-b4b1-9c6d5ca7f47a
в тему

Constantine
31.05.2017
16:09:09
ну да, это немного не хватает
просто наверняка есть типовые наборы значений
даже если параметров 5
а пару значений одновременно так не пихнешь

Simon
31.05.2017
16:45:30
>Неявная инициализация нулем не упомянутых в инициализаторе полей

Constantine
31.05.2017
16:47:17
Давно хотел спросить. Есть ли реализация printf или подобного синтаксиса с полным type safety? грубо говоря, хочу L"width = %d, height = %d"_format(10, 20.0)

Simon
31.05.2017
16:49:29
string interpolation? вроде нет

Александр
31.05.2017
16:49:57
Есть
pprint
Разбирает формат в компилтайме

Simon
31.05.2017
16:50:44
i see only python

Александр
31.05.2017
16:51:06
Сейчас найду

Constantine
31.05.2017
16:51:09
полагаю речь про
https://github.com/rinatz/pprint/tree/master/include/pprint

Google

Constantine
31.05.2017
16:52:21
но что-то я не вижу там того, что я хочу
по виду это не то

Александр
31.05.2017
16:53:07
Не

Constantine
31.05.2017
16:53:41
я видел похожее где-то в районе кодпроджекта, что ли

Eugene
31.05.2017
16:54:46
Народ, среди вас есть кто-то кто работал в сфере CV?

Constantine
31.05.2017
16:55:07
по заголовку конфы cv здесь значит... немного другое)

Simon
31.05.2017
16:56:46
c vision?)

Constantine
31.05.2017
16:57:12
cv-qualifier

Александр
31.05.2017
16:57:54
Computer vision

Admin
ERROR: S client not available

Antony
31.05.2017
17:02:15

Eugene
31.05.2017
17:03:49

Александр
31.05.2017
17:05:13
Нашел!!
https://github.com/tfc/pprintpp
It is a pure compile time library, and will add no overhead to the runtime of your programs.
Минус есть - там макросня юзается

Stas
31.05.2017
17:17:10
/rules@GBReborn_bot

Google

Stas
31.05.2017
17:17:48
/stat@combot
/stat@combot

Combot
31.05.2017
17:18:51
combot.org/chat/-1001031904034

Alexander
31.05.2017
17:28:48
Ну что, повторю свой вопрос ещё раз - никто не хочет поработать во славу Boost?
Вакансии открыты на: Boost.Algorithm, Boost.Container, Boost.Sort

Александр
31.05.2017
17:34:57
А в чем таска?

Surreal
31.05.2017
17:37:01
А кто буст финансирует? Орги + пожертвования?

Александр
31.05.2017
17:37:09

Constantine
31.05.2017
17:40:15

Evgeniy
31.05.2017
17:42:41
я хотел бы, но до августа вряд ли больше пары часов в неделю смогу

Simon
31.05.2017
17:43:30
++ к сЭру выше

Evgeniy
31.05.2017
17:44:30
Я даже нашел алгоритм который мне показался подходящим, но на этом все пока?

Simon
31.05.2017
17:48:35
книжка по биоинформатике илли вычислительной биологии
но там тысяча и один способ терзать строки

Evgeniy
31.05.2017
17:49:14

Simon
31.05.2017
17:49:24
там вообще
конечно, упомянаются случаи при работе с малыми алфавитами