
Matway
20.06.2017
22:13:56
Ну, идея такая же - берётся голова (или хвост), засовывается в одну структуру, плюс остаток кладётся туда же.
И так в цикле.
И сделать это плотно невозможно.

reagentoo
20.06.2017
22:15:00
а если char c[0]; засунуть — тоже неплотно будет?

Google

Vladislav
20.06.2017
22:15:37

Matway
20.06.2017
22:16:03
Только чтобы полноценная замена std::tuple. Со всей функциональностью.

reagentoo
20.06.2017
22:17:28
имелось ввиду засунуть в тупл это как поле

Andrei
20.06.2017
22:19:09

Matway
20.06.2017
22:20:00

Andrei
20.06.2017
22:20:13
Вообще-то не видел.
Только слышал :)

Vladislav
20.06.2017
22:21:03
std::cout « sizeof(std::tuple<char, char, char, char, char, char, char, double>) « '\n'; —> 64
std::cout « sizeof(Matway::tuple<char, char, char, char, char, char, char, double>) « '\n'; —> 16
Кстати, в шланге у меня и родной тупл 16 показывает

Andrei
20.06.2017
22:21:34
А стдлиб чей? Какой версии?

Vladislav
20.06.2017
22:23:25
libc++

Google

Vladislav
20.06.2017
22:23:59
3.7

Matway
20.06.2017
22:24:01

reagentoo
20.06.2017
22:25:52
так почему 64 показывает? как чинится?)

Vladislav
20.06.2017
22:26:41
ideone.com/l9vXtM
На rextester'е только у msvc проблемы с этим

Matway
20.06.2017
22:30:34
Круто. Видимо, свежак.
1>clang.exe : error : clang frontend command failed due to signal (use -v to see invocation)
А вот мой variant Clang не осилил :( Упал компилятор.

Vladislav
20.06.2017
22:31:17
А какая версия шланга?

Matway
20.06.2017
22:31:30
Ничего незаконного не делал.
3.8
http://ideone.com/g8EgfF
Зачем они их развернули? :)

Berkus
20.06.2017
22:41:04

Vladislav
20.06.2017
22:44:35

Matway
20.06.2017
22:45:26
Но вообще довольно круто, что такое сделали в стандартной библиотеке.

reagentoo
20.06.2017
22:54:29
Наследование в метапроганье - зло.

Ecklory
20.06.2017
22:56:03
Доброго времени суток, коллеги.
Есть умеющие Jenkins?

Matway
20.06.2017
22:56:42

Vladislav
20.06.2017
22:57:19

Google

Matway
20.06.2017
22:57:49

Anatoly
20.06.2017
22:58:01
не понимаю, как фичу можно злом называть)

Vladislav
20.06.2017
22:58:07
Ну то есть завезли, туплы, но их надо сначала написать как-то)

reagentoo
20.06.2017
22:58:09
Покажите что за варианты то пилите

Matway
20.06.2017
23:00:39

reagentoo
20.06.2017
23:05:37
Ну это. Может в личку мне ссыль кините как готово будет.

Anatoly
20.06.2017
23:06:01

Vladislav
20.06.2017
23:10:40

reagentoo
20.06.2017
23:11:10
Jonson

Anatoly
20.06.2017
23:11:44
я понял, друзья, я не понял что хочет человек от jenkinsa

Berkus
20.06.2017
23:12:20

Ecklory
20.06.2017
23:13:42
Да подождите, налетели %)
Jenkins LTS (latest).
При создании проекта выбираю «Freestyle Project -> Source Code Management -> Git»
в Credentials -> Add -> Jenkins
-> Kind -> Gitlab API Token
-> Api Token - мой токен
-> ID -> любые символы на латыне
-> Description -> любой дескрипшен
-> Add
Смотрю обратно сredentials, а там пусто.
Если добавить по юзеру/паролю - всё ок.

Berkus
20.06.2017
23:17:38
смотри gitlab плагин и чо они намудрили там
возможно его надо обновить или наоборот даунгрейднуть

Matway
20.06.2017
23:18:07
Доделал visitor. Заменяю std::variant и бенчмаркаю.

Stanislav
20.06.2017
23:18:16

Berkus
20.06.2017
23:18:17
вероятнее всего к текущему чату этот вопрос относится вообще никак

Vladislav
20.06.2017
23:18:51

FailsBot
20.06.2017
23:24:52
http://en.cppreference.com/w/cpp/container/set/emplace

Google

FailsBot
20.06.2017
23:24:53
Search results for "variant"
1. std::variant
2. std::bad_variant_access

Matway
20.06.2017
23:48:24
Да. Сравнялось со switch. Причём стало одинаково CLang и MSVC.
Идея такая: http://ideone.com/bW852w
Ограничение очевидное - не более N альтернатив. Где N - количество строк, которое не поленились написать в Variant.

Arseny
21.06.2017
00:18:54
А лишние case-ы компилятор догадывается в default перенести?

Admin
ERROR: S client not available

Vladislav
21.06.2017
00:32:05

Alexander
21.06.2017
02:41:58
Ещё одна история о том, что С++ нужно использовать с умом
http://walac.github.io/java-faster-than-cpp/

Александр
21.06.2017
07:19:19
Ну вот, меня обманули. Стёр либу и сегфолт
кстати, кто-нибудь знает разумный способ динамической подгрузки либ, но с предварительной их расшифровкой?
прочитал, расшифровал, сдампил на диск, загрузил
... с диска слили расшифрованную
успеют слить за несколько микросекунд думаешь?
никсы ж файлы не держат как винда
то есть линукс позволит прогрузить в память, удалить исходный файл и всё будет ок? удивительно
да, линукс не запрещает удалять используемые файлы
можно хоть rm -rf / сделать

Group Butler [beta]
21.06.2017
07:19:19
Александр kicked for flood!

Дед Пегас
21.06.2017
07:19:53
Пишите в одном сообщении)

Александр
21.06.2017
07:20:06
Это цитата отсюда же

Google

Александр
21.06.2017
07:21:56

Antony
21.06.2017
07:22:00
Беда с неоптимальной кодогенерацией на variant подобных классах тянется с 2000 годов. В boost это обошли насильно вставив switch вместо рекурсии. За 15 лет можно было бы починить уже проблему на уровне компилятора

Matway
21.06.2017
07:27:13

Александр
21.06.2017
07:28:08
А как в бусте сделали switch с переменным числом аргументов? Препроцессор?

Matway
21.06.2017
07:30:53

Дед Пегас
21.06.2017
07:32:12
Упорото.
Впрочем, пилил switch на шаблонах и генерировался такой же код, что и простой switch.

Berkus
21.06.2017
07:32:46
бустовато!

Matway
21.06.2017
07:35:20
Почему-то boost::variant ещё медленнее, чем std::variant.

Antony
21.06.2017
07:36:41

Matway
21.06.2017
07:38:34

Anatoly
21.06.2017
07:41:53
@MatwayBurkow если есть, можете расшарить синтетический тест?