@ProCxx

Страница 2070 из 2477
Kitsu
20.05.2018
18:20:46
вопрос уровня @supapro а вообще мало инфы, мб используешь перед объявлением, нужно смотреть в ошибку

Sevak
20.05.2018
18:21:35
)))

Юра Незнанов
20.05.2018
18:23:57
Google
Anatoly
20.05.2018
18:24:51
а супапро это флуд канал или уже круче?? имена просто поменяли
ну, это не такой крутой как ультрамегапро, но на порядок выше чем pro.cxx

Alexander
20.05.2018
19:50:47
https://jguegant.github.io//jguegant.github.io/blogs/tech/meta-crush-saga.html

Kitsu
20.05.2018
20:02:05
во наркоман ? но чорт, это круто

Alexander
20.05.2018
20:04:41
вот такие люди потом и приходят в комитет с жалобами, чо им там не хватает в compile-time ?

Al
20.05.2018
20:05:35
дык блекджек уже добавили. ждем че там дальше по списку :)

Юра Незнанов
20.05.2018
20:16:22
можно ли catch перехватить сегм фолт при delete??

Aidar
20.05.2018
22:37:21
О знаете что хочу? defined_int<minvalue, maxvalue>

Ведь это определяет ксстомную область значений явно в типе

Alexander
20.05.2018
22:43:10
а какое поведение хочешь при нарушении ренджа?

Дмитрий
20.05.2018
22:43:15
Много кто такие хочет) Но мне бы для начала хватило тупо distict_int<my_tag>, создающий уникальный тип. Причём это несложно, но хочется на стандартном уровне. А если вспомнить трюк с non-constant constexpressions, так и вообще легко написать.

Google
Дмитрий
20.05.2018
22:45:15
есть вроде пропозал по typedef, который делает новый тип
А называется как примерно, если помните?) Ну и конечно будет очень больно, если typedef так написать модно будет, а using нет.

Alexander
20.05.2018
22:46:08
https://groups.google.com/a/isocpp.org/forum/#!topic/std-proposals/GP2Crh9hY84

ну и далее искать инфу про strong typedef

Aidar
20.05.2018
22:51:59
а какое поведение хочешь при нарушении ренджа?
Можно мне андефайнд бихейвор, я выбираю андефайнд бихейвор

Alexander
20.05.2018
22:52:22
Aidar
20.05.2018
22:52:31
Чтобы не вычислять вручную

Alexander
20.05.2018
22:52:33
или ты хочешь на уровне хинтов компилятору?

Aidar
20.05.2018
22:52:39
Количество битиков

Для wide int

И ещё информационный эффект

Alexander
20.05.2018
22:53:08
окей. а теперь перечисли юзкейсы, где тебе такое бы пригодилось

Aidar
20.05.2018
22:53:16
Для программиста

Я бы везде юзал ваще где определены границы

Alexander
20.05.2018
22:54:17
скажи конкретнее. для каких задач тебе пригодился бы такой тип

Aidar
20.05.2018
22:55:00
Для всех где семантически не подходит size_t и ptrdiff_t

И charовые типы

Alexander
20.05.2018
22:55:35
ты пример можешь привести хоть один?

Aidar
20.05.2018
22:55:54
Да блин дано число вывести число

Google
Alexander
20.05.2018
22:56:22
используй int

Aidar
20.05.2018
22:56:22
Любой ваще пример

используй int
Он не несёт инфы

Alexander
20.05.2018
22:56:50
а какая тебе инфа нужна? о диапазоне? напиал коммент и всё

так как твоя инфа про диапазон всё равно ничего другого больше не делает

Aidar
20.05.2018
22:57:14
Зачем комент если можно типизировать

Потомучто коменты это не код

Alexander
20.05.2018
22:57:45
ок, здесь согласен

но я так и не увидел примера задачи, где эта бы хуйня подходила

Aidar
20.05.2018
22:58:25
Ну вот я рандомом чиселки генерю крч

Я могу забыть границы, хотя они фиксированы

Да кстати что насчёт рандома для wide_int? Будь аналог бустовых фич для мультипрецишн?

Al
20.05.2018
22:59:39
Я могу забыть границы, хотя они фиксированы
и? продолжай. границы то зачем?

Aidar
20.05.2018
23:00:53
и? продолжай. границы то зачем?
Ну приходится смотреть в генератор потомучто тип результата не даёт инфы, ну или велосипедить

Ещё было бы полезно типа int<min, 0>

<-1, max>

Al
20.05.2018
23:02:38
Ну приходится смотреть в генератор потомучто тип результата не даёт инфы, ну или велосипедить
ну так ты в название переменной и пиши чего там тебе нужно :) int ETA_PEREMENNAYA_V_DIAPAZONE_OT_1_DO 15

кто тебе запрещает

развлекайся на полную

Aidar
20.05.2018
23:03:08
Дык переменная не должна тип обозначать

Google
Aidar
20.05.2018
23:03:15
Она должна обозначать применение

Al
20.05.2018
23:03:28
применение в куда? внутрь?

Aidar
20.05.2018
23:03:28
А это тип

Применение этой переменной

Тоесть int i, string s, vector v это говнокод

Пережитки венгерской нотации

Al
20.05.2018
23:09:15
Тоесть int i, string s, vector v это говнокод
о слушай. переходи сразу в JS тогда. там то что ты хочешь. можно складывать стринги в которых цифры и получать результат без всяких преобразований в инт. вообще возможны любые непредсказуемые фокусы с переменными.

Admin
ERROR: S client not available

Al
20.05.2018
23:09:51
я первый раз когда увидел JS чуть не окосел от такого счастья

Al
20.05.2018
23:10:31
Ты рофлишь чтоль
чустно пытался понять что ты хочешь. и не смог

Nik
21.05.2018
04:08:08
Может, чар и 1 байт, точно не помню, а лонг 8 байт 100%.
Linux - да, винда - нет. Откуда по-твоему пошли схемы LP и LLP?

Никита
21.05.2018
04:46:45
О знаете что хочу? defined_int<minvalue, maxvalue>
В инкубаторе буста, кажется, я видел либу safe_int<T>, суть которого сводится к проверке наличия значения в диапазоне при касте между типами и арифметических операциях. Там как раз было небольшое расширение для кастомных диапазонов.

Можно поискать proposals по этой теме, safe_int многие реализуют, тот же msvs вроде даже таскает с собой реализацию SafeInt.hpp

Никита
21.05.2018
04:54:11
Они разве делают хоть какую-то проверку значения? Это же просто тип с гарантией размера

Никита
21.05.2018
05:04:44
А переполнение, возникшее в арифметических операциях?

Да и в целом наличие отдельного типа подразумевает минимизацию проверок. Единожды проиниализировал и передал в дальнейшее использование, и принимающая сторона не должна производить те же самые проверки.

Nik
21.05.2018
05:52:49
А переполнение, возникшее в арифметических операциях?
Вот с этим интересней. Вроде бы был пропозал сделать UB для signed integer overflow и сделать defined behaviour. http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0907r0.html

Google
Igor
21.05.2018
06:33:15
есть такая вот штука: https://www.boost.org/doc/libs/1_61_0/libs/serialization/doc/strong_typedef.html
https://github.com/foonathan/type_safe и такая, если буст тащить влом)

а какое поведение хочешь при нарушении ренджа?
Передаваемое в шаблонном параметре std::terminate или throw ?

Такой вопрос: Полухин в книжке по бусту пишет, что де код в критических секциях может в разы ускоряться, если все используемое внутри секции будет поддерживать перемещение, а не только копирование. Это как так? Я всегда искренне считал, что все подкапотные сохранения состояния происходят на уровне операционки, которая знай себе байты перекладывает, не заморачиваясь что байты лежат в программе на с++11+, которая умеет в перемещения вместо копирований. Я был, глубоко неправ, или неправильно понял автора?

Aidar
21.05.2018
06:57:11
Я думаю там что-то хитрое в контексте текста книги

Al
21.05.2018
06:57:50
если честно, вообще не вижу связи с доступом к общему ресурсу и абстракцими c++ типа перемещения. может там что-то хитрое в контексте именно буста
Ну с точки зрения процессора проще писать все по ходу работы а не прыгать туда сюда между страницами по всей памяти что бы прочитать/сохранить

А так по сути переместил рабочий кусок и последовательно переколбасил и тут же сохранил результат

В разы не уверен но быстрее точно

vlad
21.05.2018
07:00:22
Ну с точки зрения процессора проще писать все по ходу работы а не прыгать туда сюда между страницами по всей памяти что бы прочитать/сохранить
не силен в винапи, но как связана блокировка нитей и фрагментация памяти? всегда считал что это cs это лёгкий мутекс

Al
21.05.2018
07:01:22
vlad
21.05.2018
07:03:22
Я вообще далек от винды. Как оно там память нарезает понятия не имею.
просто если данные внутри cs выровнены и находятся последовательно (массив), то не вижу никакой разницы

Al
21.05.2018
07:06:01
просто если данные внутри cs выровнены и находятся последовательно (массив), то не вижу никакой разницы
Сомневаюсь что кто то там их ровняет и размещает последовательно. Это видимо случаетчя как раз в процессе переноса

Тем более со всеми этими кучами ядер и кешами многоуровневыми. В оперативке наверняка каша дефрагментированная

vlad
21.05.2018
07:08:07
Тем более со всеми этими кучами ядер и кешами многоуровневыми. В оперативке наверняка каша дефрагментированная
запросто, только стд мув и буст ничего не могут знать об этом, поэтому вряд-ли могут поспособствовать)

Al
21.05.2018
07:09:17
запросто, только стд мув и буст ничего не могут знать об этом, поэтому вряд-ли могут поспособствовать)
Ну возможно что при переносе винапи как раз собирает куски в одно место

Иначе книжка врет

vlad
21.05.2018
07:10:33
Иначе книжка врет
нужны замеры, ассемблер и низкоуровневый трейс)

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