Tom
А в обратную сторону-то никак ;)
template <std::size_t N>
constexpr auto foo(int const (&xs)[N]) noexcept
{
// Вот тут мы уже не знаем, xs вообще constexpr или нет. И как теперь IntegralConstant возвращать?
}
Hana основана на факте, что все данные внутри типа содержатся. Но это не общий случай. Мы, может, xs в компайл тайм знаем, но в типе int ничего не прописано.
Или я путаю чего?
Александр
Александр
Можно пример кода, который hana якобы не смогёт?
Александр
Пример задачи*
Tom
Anonymous
down
Александр
Александр
напомните онлайн ide'шку с бустом
Danil
Wandbox
Danil
Или как то так
Александр
точно, спасибо
Danil
Она с ВИМОМ И ЕМАКСОМ
Александр
Александр
Tom
Александр
Это верно... а не муторно ли?
Муторно :) Но я пока не встречался с типами, которые хорошо работают в compile-time, кроме фундаментальных и которым понадобились бы мощные алгоритмы
Roman
Ребята, всем привет!
Тем кто работает с Qt, да и в принципе многим будет интересна данная библитека:
https://qbeon.github.io/QuickStreams/
Буду рад отзывам, спасибо за внимание!
🐙 Antony
🐙 Antony
Кстати, вот это может помочь: https://github.com/boostorg/algorithm/pull/35/files
Там Mikhail Maksimov сделал огромное количество тестов на constexpr для Boost.Algorithm
Tom
Surreal
Нет, не чистит.
template<
typename X
>
struct identity
{
typedef X type;
};
🐙 Antony
Избежать ambiguity и заставить брать тип T от первого параметра. Другими словами, без identity может не собраться код, или произойдут неожиданные преобразования первого аргумента наподобие int i = 3; i = clamp(i, -1.f, 10u)
Александр
круто!
Evgenii
Vladislav
Anonymous
Всем привет
Anonymous
Есть тут кто живой?
Anonymous
А, тут для нубовопросов отдельная конфа
Anonymous
Есть вопрос.
С помощью какой либы на с++ можно загрузить изображения что бы с ним работать?(узнать его размер,поменять младшие байты и т.д.)
Anonymous
ну или ПРОСТО, как загрузить изображение для работы с ним. Какая библиотека нужна ?
Oleksandr
Две Точки
+
Pepe 🐸
Pepe 🐸
Там есть метод который позволяет это сделать и вообще заточена под работу с изображениями
ГуНиСе️
ГуНиСе️
а вообще, тысячи их
ГуНиСе️
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
http://libtins.github.io/
Berkus
Годно выглядит
Andrei
если формат известен — лучше загружать специфичную библиотеку. Больше шансов что без проблем заработает. Если надо сразу несколько форматов, то чем проще тем лучше. Монструозный опенсиви тянуть ради открытия двух картинок — не надо.
Anonymous
суть моей задачи такова:
пройтись по всем пикселям изображения. Заменить в каждом канале(RGB) пиксель цвета на текст(на часть текса). LSB - еще называют
Anton
http://libtins.github.io/
Вот ещё. К тому же на стероидах (dpdk, pfring). Не пользовался правда.
https://github.com/seladb/PcapPlusPlus
🦥Alex Fails
Stanislav
https://www.youtube.com/watch?v=zBkNBP00wJE
Stanislav
о да
Berkus
Berkus
Было раза два по-моему
Stanislav
Боян, нет?
может быть :) ноя видимо прослоупочил все
Berkus
Ну хорошо хоть сейчас посмотрел, я этим видео терридевису доказывал что плюсы поэффективнее сей могут быть, тщетно конечно же
Stanislav
Александр
Подскажите, как запилить фичу, схожую с std::declval<> - запрет использования некоторых методов (шаблонных) везде, кроме unevaluated-context?
🐙 Antony
Можно попробовать использовать std::declval<int😠) первой строчкой в таком коде.
Surreal
Ситуация: есть моя функция - 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
🐙 Antony
Зависит от имплементации Y. Надо смотреть в документацию - если callback будет вызываться только один раз - тогда ОК
🐙 Antony
Если несколько раз - вылетит исключение, и может поломать что-то внутри библиотеки
🦥Alex Fails
Berkus
это про set_value на промисе два раза
Berkus
> An exception is thrown if there is no shared state or the shared state already stores a value or exception.
🐙 Antony
Berkus
можешь вызов Y завернуть в асинк
🐙 Antony
Surreal
Berkus
aleksey
Народ, подскажите в openGL есть возможность рисовать объемный прямоугольник задав его высоту, ширину и толщину(глубину)? Если да, то как?
Berkus
нарисовав все 6 его граней
aleksey
Этот вариант я знаю)). Но хотелось бы что-то типа Panel(h, w, t). Или это нужно самому реализовать?
Berkus
glQuads и делай сам