
MrSmeet
24.05.2017
15:28:45
А по факту просто из буста преенесли

Alexander
24.05.2017
15:28:53

MrSmeet
24.05.2017
15:29:51
почти ?
Вот когда концепты и пакеты ждать, меня только пакеты на самом деле волнуют но все же. Можешь кинуть referense по пакетам новый или они не запилили?

Google

Igor
24.05.2017
15:30:11

Alexander
24.05.2017
15:30:18

MrSmeet
24.05.2017
15:31:07

Igor
24.05.2017
15:31:54

Alexander
24.05.2017
15:32:01

Маришка
24.05.2017
15:32:06
ну хоть что то с бустом и питоном продвинулось

Alexander
24.05.2017
15:32:15

Маришка
24.05.2017
15:32:21
вернулись опять к ошибке ::hypot has not been declared
:/

Alexander
24.05.2017
15:32:48
вон Антошка вам больше расскажет, чем я. У меня так, свежий инсайд только

Google

Antony
24.05.2017
15:33:29
А по факту просто из буста преенесли
Не совсем. В стандарте сделали так, чтобы filesystem модно было использовать на большем количестве платформ (например zOS), подправили взаимодействие с другими частями стандартной библиотеки, добавили кеширование некоторых операций, пофиксили кучу мелких недочётов... Так что работа там проделана огромная

MrSmeet
24.05.2017
15:33:35
А чего с рефлекшенами то они упоролись, у них новый паблик референс есть или когда ждать, не обессутте я тюлень

Alexander
24.05.2017
15:34:15

MrSmeet
24.05.2017
15:35:44
Use the link in the left sidebar to download a PDF of the current working draft (free). This is the easiest way to get the latest prebuilt PDF. However, you can also…
Ниче не нашел
Придется из git собирать
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4659.pdf
А нет я даун просто
Хм... Ни че и в гит версии не нашел
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0256r0.pdf
Кто хочет ознакомиться

Сергей
24.05.2017
16:04:24

Surreal
24.05.2017
16:06:47

Сергей
24.05.2017
16:07:44
Перешёл на gcc 7.1 - теперь проект не собирается (собирался на шестерке). Называется - придумал себе работу). Причем отвалились ranges, некоторые sfinae (куча ошибок на ambigious call), ещё парочка библиотек (типа json)
LD_LIBRARY_PATH?
опция для clang nostdinc++ вкупе с указанием своей директории через -I<path>

Grigory
24.05.2017
16:20:45
В справке gcc пишут, что nostdinc используется в основном в случаях наподобие сборки ядра или ст. библиотеки. А как IDE после этих опций нашла заголовки?

Сергей
24.05.2017
16:26:21

Sergey
24.05.2017
16:29:43
посоны, а как написать рекурсивную лямбда-функцию?

Google

Sergey
24.05.2017
16:29:53
auto del_rec = []( NodePtr &node ) -> void
{
for ( int i = node->getNumChildren()-1; i >= 0; —i )
{
del_rec( node->getChild(i));
}
node->grab();
};
вот такая вот штука, приводит к такой ошибке
error C3493: 'del_rec' cannot be implicitly captured because no default capture mode has been specified

Дед Пегас
24.05.2017
16:30:18
Через захват контекста, очевидно

Sergey
24.05.2017
16:30:35
не понял
[this] - не помогает, да и не нужен он

Дед Пегас
24.05.2017
16:32:08
[del_rec]

Berkus
24.05.2017
16:32:10

Sergey
24.05.2017
16:32:43

Дед Пегас
24.05.2017
16:33:10

Berkus
24.05.2017
16:33:20
возможно да, но очень говняно получается

Sergey
24.05.2017
16:34:01
std::function<void(NodePtr &node)> del_rec = [&del_rec]( NodePtr &node )
{
for ( int i = node->getNumChildren()-1; i >= 0; —i )
{
del_rec( node->getChild(i));
}
node->grab();
};

Sergey
24.05.2017
16:34:05
так тоже неверно
коллеги говорят - в 11 стандарте вообще никак

Alexander
24.05.2017
16:34:22
ну ка, очнь интересно, как вы это сделаете)))
а в 17 можно?)

Berkus
24.05.2017
16:34:32
да и дальше тоже не очень красиво выходит
проблема в том что ты не можешь закапчурить ссылку на лямбду
надо делать еботу типа Holder<function> f = lambda; а в лямбде капчурить ссылку на холдер и оттуда выдирать функцию

Sergey
24.05.2017
16:35:32
ну вот на хабре приводят "типа рабочий" код

Google

Sergey
24.05.2017
16:35:41
std::function<int(int)> lfib = [&lfib](int n) {return n < 2 ? 1 : lfib(n-1) + lfib(n-2);};

Berkus
24.05.2017
16:37:37

Шаурма
24.05.2017
16:38:04
std::function<void(int)> fn;
fn = [&fn](int v) { qDebug() << v; if (v > 1) fn(v - 1); };
fn(3);

Sergey
24.05.2017
16:38:27
да, заработало. понял.
в 17-й все то же самое кстати
типа, вот так вот
auto del_rec2 = [&del_rec2]( NodePtr &node ) -> void
{
for ( int i = node->getNumChildren()-1; i >= 0; —i )
{
del_rec2( node->getChild(i));
}
node->grab();
};
писать нельзя

Admin
ERROR: S client not available

Sergey
24.05.2017
16:41:37
'del_rec2': cannot be used before it is initialized

Vladislav
24.05.2017
16:49:43
С auto не получится, нужно в std::function завернуть

Berkus
24.05.2017
16:59:36
мы же лямбду сначала инициализируем в потом вызываем)

Vladislav
24.05.2017
17:01:40

Berkus
24.05.2017
17:03:44
а, ну да - это auto

Surreal
24.05.2017
17:06:00

Vladislav
24.05.2017
18:29:51
http://icpclive.org/ тут стримчик если что на русском
Я по старинке, на http://zibada.ru/finals/ смотрю
Го болеть

Alexander
24.05.2017
18:30:20
я уже давно)

Google

Alexander
24.05.2017
18:30:35
сижу вот и смотрю
http://codeforces.com/blog/entry/52150
http://static.kattis.com/icpc/wf2017/

Vladislav
24.05.2017
18:31:09
Корея неожиданно сильна

Alexander
24.05.2017
18:31:32

Vladislav
24.05.2017
18:31:34
Аж две команды в топ10

Sheridan
24.05.2017
19:29:20
Други, чем черевато
void func()
{
std::thread thrd(&CSession::alertIncoming, this);
thrd.detach();
}
?

Berkus
24.05.2017
19:30:39
тем что this будет удален когда-нибудь
например задолго до того как тред вызовет alertIncoming()
shared_from_this() спасет

Sheridan
24.05.2017
19:31:23

Berkus
24.05.2017
19:31:30
тогда ничем

Sheridan
24.05.2017
19:31:45
спасибо! :)

Berkus
24.05.2017
19:31:48
но бинд синтаксис нинужен, используй лямбду
void func() { std::thread th([this] { alertIncoming(); }); th.detach(); }

Sheridan
24.05.2017
19:32:32
в коде так
set_alert_notify([this]()
{
std::thread thrd(&CSession::alertIncoming, this);
thrd.detach();
});
это коллбэк

Berkus
24.05.2017
19:33:38
тогда лучше бы io_service.post([this] { alertIncoming(); }); и пропускать через тредпул

Yura
24.05.2017
21:28:32
Есть те кто работает с QNX и ещё не спит?