@ProCxx

Страница 2214 из 2477
Aleksandr
19.07.2018
15:04:20
lvalue -> prvalue и потом double -> char

When converting from one built-in type to another built-in type, only one standard conversion sequence is allowed. A standard conversion sequence consists of the following, in this order: 1) zero or one lvalue transformation; 2) zero or one numeric promotion or numeric conversion; 3) zero or one function pointer conversion; (since C++17) 4) zero or one qualification adjustment.

Alexander
19.07.2018
18:44:39
Вышел Conan 1.6! https://docs.conan.io/en/latest/changelog.html

Google
Alexander
19.07.2018
18:54:22


A.D.
19.07.2018
18:56:03
няшный какой-то

Alexander
19.07.2018
18:56:16
Так потому что новый ?

кстати, скоро будет доступен GCC 8.2, в котором улучшена кодогенерация под Skylake и выше!

так что у кого код компилируется под данные процессоры - мб имеет смысл обновиться через пару недель

Egor
19.07.2018
19:03:59
(которую они отломали?)

Alexander
19.07.2018
19:04:12
https://www.phoronix.com/scan.php?page=news_item&px=GCC-8.2-Release-Candidate

кстати, в бинкрафтеры скоро завезут новые компиляторы! так что будет ещё больше предкомпилированных пакетов под разные компиляторы (завезут gcc 7, gcc 8, clang 5, clang 6, apple clang 9.1)

когда завезут в conan-center я не знаю

Igor
19.07.2018
20:17:27
то ли томск, то ли солвинг жаловался, что от такого кульбита сборки встанут, место кончится а матрица станет неподдерживаемо громоздкой, неужели таки решили превозмогать ?

Google
Alexander
19.07.2018
20:22:03
а недостаток ресурсов надо решщать доавлением ресурсов

Igor
19.07.2018
20:22:13
да шаг-то безусловно правильный, я скорее про аппаратные ограничения вроде того же лимита на бинтрее)

Alexander
19.07.2018
20:22:14
ресурсов билда, разумеется

ну так Conan может им задонить

надеюсь, что может

Egor
19.07.2018
20:22:41
это не одна фирма?

Alexander
19.07.2018
20:23:36
нет

Igor
19.07.2018
20:23:43
есть JFrog, у них работают разрабы Conan, и отдельно на просторах опенсурса пасутся бинкрафтеры

Egor
19.07.2018
20:24:46
а, я может с bintray спутал

Igor
19.07.2018
20:25:10
бинтрей тоже делают JFrog, да

Kirill
19.07.2018
20:30:29
Господа, задался одним вопросом. std::optional имеет такую функцию-член: constexpr const T&& value() const &&; Если я правильно понял, то предполагается перемещение значения при вызов, но тогда, чтобы не вызывать деструктор дважды, нужно перейти в пустое состояние, но это же const!

Assasin
19.07.2018
20:51:09
Какой тогда смысл в этой перегрузке?
вот это не смогу подсказать. На мой взгляд, она бессмысленна. Возможно, для гипотетической компилируемости кода.

reagentoo
19.07.2018
21:39:26
Что-нибудь планируется расширить у enum'ов в следующих стандартах? В курсе кто?

Kitsu
19.07.2018
21:39:45
В cmake можно как-нибудь скоуп переменной ограничить блоком (не функции, а if-а например)?

Alexander
19.07.2018
21:40:17
:(
а чего хотелось бы?

Google
reagentoo
19.07.2018
21:40:50
хотелось бы добавление дополнительных энумераторов

Alexander
19.07.2018
21:41:01
не понял

reagentoo
19.07.2018
21:41:16
уже после объявления enum'а

Alexander
19.07.2018
21:41:52
а зачем?

или может Вы хотите ещё в зависимости от внешних условий иметь разные енумы?

if(argc[1] > 42) enum.push_back(WTF)

reagentoo
19.07.2018
21:43:09
ну нет. только компилтайм

Alexander
19.07.2018
21:43:43
а можно юзкейс нарисовать?

reagentoo
19.07.2018
21:44:07
Mikhail Voronov
19.07.2018
21:47:02
reagentoo
19.07.2018
21:52:49
а можно юзкейс нарисовать?
enum MyTypes; variant< int, MyTypes+={Int1}, int, MyTypes+={Int2}, double, MyTypes+={Dbl}, std::string, MyTypes+={Str}, > v; int i2 = get<Int2>(v);

надеюсь либастрал работает сегодня)

Alexander
19.07.2018
21:53:39
честно - всё равно не понял

reagentoo
19.07.2018
21:54:11
Kirill
19.07.2018
21:54:43
https://godbolt.org/g/jGBN7R
Ох уж этот mutable...

Mikhail Voronov
19.07.2018
21:55:09
Kirill
19.07.2018
21:56:32
Можно без всяких угрызений совести не реализовывать эту перегрузку. :D

Alexander
19.07.2018
21:56:56
named variant aka rust enum?
поясни, что за оно

Google
Alexander
19.07.2018
21:57:12
что там в расте с енумами такого сделали?

Kitsu
19.07.2018
21:59:43
поясни, что за оно
https://play.rust-lang.org/?gist=570bd82ec44ca47528809ee5fd4b5300&version=stable&mode=debug&edition=2015

что там в расте с енумами такого сделали?
Обычный variant, но только с именоваными элементами

Alexander
19.07.2018
22:01:36
хм, прикольно

Dmitry
19.07.2018
22:08:22
а чего хотелось бы?
Хм... А может наследование? enum Extended : Base. Чтобы сразу в свой scope включал все члены родителя.

Constantine
19.07.2018
22:09:17
Alexander
19.07.2018
22:09:25
Хм... А может наследование? enum Extended : Base. Чтобы сразу в свой scope включал все члены родителя.
множественное наследование! с ошибкой в компайл-тайме, если пересекаются!

тьфу ты, нет... мы же в С++! Если пересекаются, то UB

Constantine
19.07.2018
22:09:52
(иерархия классов констант это локальная шутка про OVERDESIGN)

Dmitry
19.07.2018
22:09:55
Ну пересекаться и в одном могут.

Constantine
19.07.2018
22:11:17
Здесь нужно заметить, что enum с большим числом значений не является потомком класса с меньшим числом значений

Alexander
19.07.2018
22:11:59
И да, зачем????
потому что хочу, конечно. Ну смотри - пришёл от вендора какой-то енум. А мне надо его расширить. и не хочу копировать

вот я от него наследуюсь и расширяю как мне надо. Сейчас мб все вместе и сможем придумать ещё юзкейсов

Dmitry
19.07.2018
22:12:48
Например есть базовый ResultCode в какой то библиотеке и его расширение на application level.

Alexander
19.07.2018
22:13:03
Constantine
19.07.2018
22:13:13
а что?
наследование, но в обратную сторону

Google
Constantine
19.07.2018
22:13:21
т.е. класс вендора на самом деле потомок твоего

более широкого енума

наследование ВСЕГДА сужает область значений типа

Dmitry
19.07.2018
22:16:49
Ну оно сузит базовый код до кода конкретного application.

Множественные кстати тоже неплохо :) по категориям. 2xx, 4xx.

Constantine
19.07.2018
22:18:51
Я думаю, это все разруливается variant-логикой

Потому что вы хотите вывести variant<A, B> средствами компилятора

Azoyan
19.07.2018
22:23:47
Я не понимаю, а почему нельзя использовать, чтобы наследоваться вместо enum структуры? https://ideone.com/wZiI5E

Dmitry
19.07.2018
22:24:24
Например есть Diameter base с определенным стандартом набором ResultCode. А есть уже какие то конкретные приложения, которые его расширяют.

Azoyan
19.07.2018
22:25:04
https://ideone.com/wZiI5E

Constantine
19.07.2018
22:27:53
А я все еще не понял, почему не variant

Azoyan
19.07.2018
22:30:27
А я все еще не понял, почему не variant
Не все на С++17, многие на 03 :)

Dmitry
19.07.2018
22:30:35
А я все еще не понял, почему не variant
Потому что на самом деле это всего лишь int, variant тяжёлая штука. Ну и его не описать в базовой библиотеке, а хотелось бы свободный up/down cast.

Страница 2214 из 2477