
Alex Фэils?︙
21.05.2018
11:20:15

Andrey
21.05.2018
11:20:42

Anatoly
21.05.2018
11:21:18

Andrey
21.05.2018
11:22:36
Ой. Не заметил, что ответ был от автора.

Google

Andrey
21.05.2018
11:23:00

Spoonson
21.05.2018
11:25:56
я думаю, тут suspends тут подразумевалось существительным во множественном числе судя по всему

Anatoly
21.05.2018
11:26:12
вот контекст
тогда там должно быть threads suspend and wakeup

Andrey
21.05.2018
11:26:41
Ну так автор, то что говорит? То же самое! )

Anatoly
21.05.2018
11:27:44
редакторы, прочтя "threads suspends and wakeups" расценили это как перечисление и поставили запятые бездумно. поскольку здесь явный микс множественного числа thread и глаголов оформленных как будто они применяются к существительному в единственном числе suspends, wakeups

Alex Фэils?︙
21.05.2018
11:28:37

Andrey
21.05.2018
11:28:47
Что у бедного редактора, учитавшегося статьи о плюсах, глаз выпал. прямо на клавишу "запятая"

Aidar
21.05.2018
11:39:37

Alex Фэils?︙
21.05.2018
11:42:26

Google

Alex Фэils?︙
21.05.2018
11:52:16

Alex
21.05.2018
11:56:35
8 < 4 ??

Alex Фэils?︙
21.05.2018
11:56:48
8 >= 4

Alex
21.05.2018
11:56:58
4 на х86 и 8 на х86-64

Alex Фэils?︙
21.05.2018
11:57:01
"не меньше" - это "больше или равно"

Alex
21.05.2018
11:57:03
Уже обсосали

Andrew
21.05.2018
11:58:28
Вот это врыв

Pika
21.05.2018
11:58:53

Alex Фэils?︙
21.05.2018
11:59:00
алекс какойто queue

Igor
21.05.2018
12:00:00

Alex Фэils?︙
21.05.2018
12:01:01

Pika
21.05.2018
12:01:58

Antony
21.05.2018
12:04:08

Alex Фэils?︙
21.05.2018
12:05:40

Constantine
21.05.2018
12:05:57

Google

Constantine
21.05.2018
12:06:32
а, там просто std::unique_ptr<Interface> create_method(std::string name) генерируется

Alex Фэils?︙
21.05.2018
12:06:33

Constantine
21.05.2018
12:07:33
фишка в том, что список потомков собирается по xml-модулям а не по cpp-TU
anti-cpp-name-lookup модель, name lookup производится во всей единице трансляции, а не порядкозависимо

Alex Фэils?︙
21.05.2018
12:08:27

Nikita
21.05.2018
12:27:21
при использовании вот такого костыля
[](...) {} ((lambda(strings), 0)...);
(strings - это template pack) есть ли простой способ гарантировать порядок вычисления параметров?
(если я ничего не путаю, то по стандарту он не определён, а мне хочется строго слева-направо, на текущем компуляторе получается справа-налево)

Constantine
21.05.2018
12:30:38
о_О
что ты хочешь вообще сделать?

Alexander
21.05.2018
12:31:01

Constantine
21.05.2018
12:31:07
справа налево все считают

Nikita
21.05.2018
12:31:08
вызвать лямбду от каждой строки из template pack'а

Constantine
21.05.2018
12:31:11
так в стек удобнее класть
в порядке?

Nikita
21.05.2018
12:31:44
ну да

Constantine
21.05.2018
12:32:14
а нельзя там через || мерджить в цпп17?

Nikita
21.05.2018
12:32:32
мне на работе незя цпп 17

Constantine
21.05.2018
12:33:14
тогда, вроде, никак
только хвостовую рекурсию делать

Google

Spoonson
21.05.2018
12:33:38
а в initializer_list запихнуть не выйдет?

Constantine
21.05.2018
12:33:50
а у него порядок гарантируется вычисления?

Spoonson
21.05.2018
12:34:09
вроде да, но надо проверить

Constantine
21.05.2018
12:34:16
я голосую, что нет
потому что зачем?
объект типа std::initializer_list<T> это легкий объект прокси-сервер

Spoonson
21.05.2018
12:36:01
https://stackoverflow.com/questions/20266153/stdinitializer-list-and-order-of-evaluation-of-the-elements

Constantine
21.05.2018
12:36:03
Every initializer clause is sequenced before any initializer clause that follows it in the braced-init-list. This is in contrast with the arguments of a function call expression, which are unsequenced.

Admin
ERROR: S client not available

Constantine
21.05.2018
12:36:22

Spoonson
21.05.2018
12:36:44
можно, но почему?

Constantine
21.05.2018
12:37:04
потому что я вот прямо сейчас найду пару ответов, которые просто ошибочны
Nikita вот и ответ - действительно, нужно через initializer list проходить

Nikita
21.05.2018
12:38:15

Constantine
21.05.2018
12:38:27
короче написано, что в initializer list порядок гарантируется

Spoonson
21.05.2018
12:40:02

Constantine
21.05.2018
12:40:28
stackoverflow сам по себе источник чуть лучше википедии

Spoonson
21.05.2018
12:41:06
я понял ваше мнение, спасибо за объяснение

Constantine
21.05.2018
12:41:53
проблема в том, что отвечающие (пишущие википедию) зачастую не разбираются в теме

Google

Constantine
21.05.2018
12:42:03
тот же cppreference за таким не замечен

Nikita
21.05.2018
12:48:16
правда тут вопрос, а имеет ли право компилятор выкинуть нахрен создание этого списка

Spoonson
21.05.2018
12:49:27
он его и выкинет, но сайд эффекты (вызов лямбды) оставит

Nikita
21.05.2018
12:49:59
а
отлично
спасибо

Constantine
21.05.2018
12:50:53

Andrey
21.05.2018
13:29:24

Alex Фэils?︙
21.05.2018
14:07:54
а у меня андроид :P
а почему не хочешь кросс-компилировать?

olologin
21.05.2018
14:12:09
Господа, зачем линкер под линуксом оставляет в so файлах имена скрытых символов?
В чём была идея?
типа в аутпуте nm'а символы с малой буковой 't'
https://stackoverflow.com/questions/22244428/hiding-symbol-names-in-library

Antony
21.05.2018
14:20:29
Господа, зачем линкер под линуксом оставляет в so файлах имена скрытых символов?
Одна из причин - RTTI. Например если в двух библиотеках, активно обменивающихся указателями на базовые классы, объявлены одинаковые классы A, то вы захотите, чтобы линкер схлопнул два объявления в одно. Тогда typeid(a1) == typeid(a2) будет достаточно сравнить указатели на type_info и не сравнивать текстовое имя типа.
P.S.: только вот вышеописанное схлопывание не всегда работает

Oleksandr
21.05.2018
14:20:33
char f()
{std::cout « "Hello\n";
return 0;
}
void main()
{
if (!(!(0 || 1) && !(1 && 0)) && (16 &4) && (2 & 10) && f () && ~false) {
std::cout « "World!\n";
}
Каким будет результат выполнения такой программы и почему ???

olologin
21.05.2018
14:21:07
Просто вопрос в том что они какбы скрытые, линкер ими не может пользоваться, не статический не динамический, но nm их показывает, а вот зачем они в бинарнике тогда хранятся - не ясно