
Александр
27.05.2017
10:45:35
почему? возможно, просто hana оперирует не массивами, а tuple
subset на drop или take заменяется

Tom
27.05.2017
10:47:58
потому как в Hana результаты предикатов как non-type template parameters используются. Тут такое не сработает.

Evgeniy
27.05.2017
10:50:13

Google

Tom
27.05.2017
10:51:44
Вот по этой самой причине и задал вопрос тут.

Alex Фэils?︙
27.05.2017
12:27:52
Товарищи, предполагаю, все знакомы с Ranges TS. А было бы интересно иметь что-то подобное в compile time? Типа
constexpr int xs[] = {1, 3, 5, 2, 4};
constexpr int ys[] = {1, 2, 3};
static_assert(
(xs | sort(std::less<void>{}) | subset(0, 3))
== ys
);
В принципе, если обмазать констэкспром, то мб сработает

Tom
27.05.2017
12:36:06
В принципе, если обмазать констэкспром, то мб сработает
Например, в документации к boost::hana::find_if :
In the current version of the library, the predicate has to return an IntegralConstant holding a value that can be converted to bool.
Так что никакой constexpr не спасет AFAIK...

Александр
27.05.2017
13:03:47

Tom
27.05.2017
13:40:58
А в обратную сторону-то никак ;)
template <std::size_t N>
constexpr auto foo(int const (&xs)[N]) noexcept
{
// Вот тут мы уже не знаем, xs вообще constexpr или нет. И как теперь IntegralConstant возвращать?
}
Hana основана на факте, что все данные внутри типа содержатся. Но это не общий случай. Мы, может, xs в компайл тайм знаем, но в типе int ничего не прописано.
Или я путаю чего?

Александр
27.05.2017
14:08:19
Можно пример кода, который hana якобы не смогёт?
Пример задачи*

Tom
27.05.2017
14:11:40

Antony
27.05.2017
14:12:49

Tom
27.05.2017
14:14:54

Los
27.05.2017
14:14:58
down

Александр
27.05.2017
14:15:26

Google

Antony
27.05.2017
14:18:29

Tom
27.05.2017
14:22:03

Александр
27.05.2017
14:25:10
напомните онлайн ide'шку с бустом

Grigor
27.05.2017
14:26:05
Wandbox
Или как то так

Александр
27.05.2017
14:26:12
точно, спасибо

Grigor
27.05.2017
14:26:40
Она с ВИМОМ И ЕМАКСОМ

Александр
27.05.2017
14:37:32

Tom
27.05.2017
14:40:27

Александр
27.05.2017
14:42:06

Tom
27.05.2017
14:43:23

Александр
27.05.2017
14:45:01
Это верно... а не муторно ли?
Муторно :) Но я пока не встречался с типами, которые хорошо работают в compile-time, кроме фундаментальных и которым понадобились бы мощные алгоритмы

Tom
27.05.2017
14:49:00

Roman
27.05.2017
17:12:30
Ребята, всем привет!
Тем кто работает с Qt, да и в принципе многим будет интересна данная библитека:
https://qbeon.github.io/QuickStreams/
Буду рад отзывам, спасибо за внимание!

Antony
27.05.2017
17:38:12
Кстати, вот это может помочь: https://github.com/boostorg/algorithm/pull/35/files
Там Mikhail Maksimov сделал огромное количество тестов на constexpr для Boost.Algorithm

Tom
27.05.2017
17:53:13

Александр
27.05.2017
18:12:16

Surreal
27.05.2017
18:16:44
Нет, не чистит.
template<
typename X
>
struct identity
{
typedef X type;
};

Antony
27.05.2017
18:24:55
Избежать ambiguity и заставить брать тип T от первого параметра. Другими словами, без identity может не собраться код, или произойдут неожиданные преобразования первого аргумента наподобие int i = 3; i = clamp(i, -1.f, 10u)

Google

Александр
27.05.2017
18:35:28
круто!

Evgeniy
27.05.2017
18:50:13

Vladislav
27.05.2017
18:51:15

UnkownUSR
28.05.2017
06:42:56
Всем привет
Есть тут кто живой?
А, тут для нубовопросов отдельная конфа

al
28.05.2017
06:45:03
Есть вопрос.
С помощью какой либы на с++ можно загрузить изображения что бы с ним работать?(узнать его размер,поменять младшие байты и т.д.)
ну или ПРОСТО, как загрузить изображение для работы с ним. Какая библиотека нужна ?

Alex
28.05.2017
06:54:20

Astroman
28.05.2017
07:03:26
+

Pepe
28.05.2017
07:04:38
Там есть метод который позволяет это сделать и вообще заточена под работу с изображениями

Admin
ERROR: S client not available

fox.lua
28.05.2017
07:28:59
а вообще, тысячи их
C++ Image Processing Libraries - Stack Overflow
stackoverflow.com
I am looking for a C++ library for image processing. I need the library to threshold a PPM photo (color photo). Should I write my own code? what do you guys think?

Stanislav
28.05.2017
09:45:27
http://libtins.github.io/

Berkus
28.05.2017
10:15:06
Годно выглядит

Andrei
28.05.2017
11:14:43
если формат известен — лучше загружать специфичную библиотеку. Больше шансов что без проблем заработает. Если надо сразу несколько форматов, то чем проще тем лучше. Монструозный опенсиви тянуть ради открытия двух картинок — не надо.

Google

al
28.05.2017
11:17:14
суть моей задачи такова:
пройтись по всем пикселям изображения. Заменить в каждом канале(RGB) пиксель цвета на текст(на часть текса). LSB - еще называют

Anton
28.05.2017
11:20:22
http://libtins.github.io/
Вот ещё. К тому же на стероидах (dpdk, pfring). Не пользовался правда.
https://github.com/seladb/PcapPlusPlus

Alex Фэils?︙
28.05.2017
11:20:59

Stanislav
28.05.2017
11:21:13
https://www.youtube.com/watch?v=zBkNBP00wJE

Igor
28.05.2017
11:25:36

Stanislav
28.05.2017
11:44:10
о да

Berkus
28.05.2017
11:47:01
Было раза два по-моему

Stanislav
28.05.2017
11:48:32
Боян, нет?
может быть :) ноя видимо прослоупочил все

Berkus
28.05.2017
11:49:52
Ну хорошо хоть сейчас посмотрел, я этим видео терридевису доказывал что плюсы поэффективнее сей могут быть, тщетно конечно же

Stanislav
28.05.2017
11:54:08

Александр
28.05.2017
15:26:13
Подскажите, как запилить фичу, схожую с std::declval<> - запрет использования некоторых методов (шаблонных) везде, кроме unevaluated-context?

Antony
28.05.2017
17:54:18
Можно попробовать использовать std::declval<int?) первой строчкой в таком коде.

Александр
28.05.2017
17:57:14

Surreal
28.05.2017
17:59:29
Ситуация: есть моя функция - X(...) и есть асинхронная функция большой библиотеки - Y(...). Я хочу вызвать эту функцию и дождаться результата. У функции Y(...) есть колбек, сейчас я вызываю ее так:
std::promise<bool> p;
std::future<bool> f = p.get_future();
auto callback = [&p](...) {
p.set_value(true);
};
Y(...,callback);
auto status = f.wait_for(std::chrono::seconds(10));
Собственно вопрос: безопасно ли это? Функция Y(...) выполняется внутри планировщика библиотеки.

Berkus
28.05.2017
18:05:37

Antony
28.05.2017
18:05:49
Зависит от имплементации Y. Надо смотреть в документацию - если callback будет вызываться только один раз - тогда ОК