Программирование


Ответить в тред Ответить в тред

Check this out!
<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
587 41 164

C++ тред предюбилейный /cpp/ Аноним 09/11/19 Суб 22:51:32 15173051
image.png (97Кб, 1200x1349)
1200x1349
image.png (83Кб, 255x364)
255x364
image.png (700Кб, 960x560)
960x560
Аноним # OP 09/11/19 Суб 22:52:20 15173062
>>1517305 (OP)
Блять, твердый знак забыл. Совсем ебанулся уже.
Аноним 09/11/19 Суб 23:12:04 15173313
Аноним 09/11/19 Суб 23:23:17 15173424
image.png (33Кб, 553x64)
553x64
>>1517322
Как прикажешь для микроконтроллеров писать проги?
Аноним 09/11/19 Суб 23:32:11 15173485
>>1517342
Имеется в виду, что прямого доступа к указателям нет. Можно сделать ссылку или передать переменную в владение другой переменной
Аноним 10/11/19 Вск 01:47:33 15174396
>>1517331
Байтослесарь порвался. Иди память подчисти, да висящие ссылочки ручками поудаляй : )
Аноним 10/11/19 Вск 02:04:50 15174537
как в c++ справку вызвать, хелпануть. чтобы он выдал справку по модулям и прочему?
Аноним 10/11/19 Вск 02:05:43 15174548
>>1517453
кресты не будут тебе помогать ни в чем
Аноним 10/11/19 Вск 02:06:21 15174559
Аноним 10/11/19 Вск 02:17:18 151746210
Аноним 10/11/19 Вск 02:19:18 151746611
Аноним 10/11/19 Вск 02:20:07 151746812
>>1517348
В С++ так нельзя сделать как-будто, лол. Уноси говно свое обрезанное.
Аноним 10/11/19 Вск 02:21:42 151747113
>>1517466
но ты можешь прочитать парочку тысячестраничных книжек и тогда..
Аноним 10/11/19 Вск 02:22:20 151747214
>>1517471
спасибо. уже вот гуглить пошёл книжку страуструпа.
Аноним 10/11/19 Вск 02:46:58 151748615
>>1517472
последние книги старика так себе.. "язык программирования с++, специальное издание" годная книга у него, и то с оговорками.. "дизайн и эволюция" самая интересная, но не для тебя..


Аноним 10/11/19 Вск 03:19:02 151749716
Вот я думаю: этот растошизик один срет в треде плюсов или таких сектантов несколько?
Ебанутый, честное слово.
10/11/19 Вск 04:21:43 151750617
>>1517497
Один, ибо у них совсем все тухло. Аналогично шизику, который под яблоко прогает и срет в си-треде и тут иногда, использует боевые картиночки.
Аноним 10/11/19 Вск 05:12:10 151751318
А можно в ваших крестах лямбды в <>-скобках хуячить? Например
unordered_set<Kluch,
[](Kluch&k){return...},
[](Kluch&k1,Kluch&k2){return...;}>

чтоб в одну строку создать эту хуергу со своей простенькой хеш-функцией и предикатом тождества.
Аноним 10/11/19 Вск 05:40:35 151751519
https://www.youtube.com/watch?v=ZQds2aGHwDA

Бьерн хвалит msvc компиль. Линуксоблядей попрошу выйти из треда. Microsoft топ-1 контора мира, уже совсем скоро сожрет всю индустрию целиком.
Аноним 10/11/19 Вск 08:15:11 151752220
>>1517515
Когда в венду завезут способ ускорения, кроме переустановки системы?
Аноним 10/11/19 Вск 08:59:38 151752821
>>1517515
Жаль, что VS весит ебанных 5-15 гигов. Спасибо, но нет.
Аноним 10/11/19 Вск 09:32:21 151753322
Аноним 10/11/19 Вск 09:44:55 151754223
>>1517486
> последние книги старика так себе

А че там норм сейчас?
Аноним 10/11/19 Вск 09:50:00 151754324
>>1517515
> Линуксоблядей попрошу выйти из треда

Я бы такой и не против стать линуксблядью, ну в нём нету нихуя, чтобы пописать музычку, и чтобы ваять дизайнчик в прогах от адобе, короче только кодить в нём.
Аноним 10/11/19 Вск 11:11:47 151756725
Аноним 10/11/19 Вск 11:28:51 151757826
>>1517543
>только кодить
дизайноблядь, ты как сюда попал?
Аноним 10/11/19 Вск 11:56:54 151759427
>>1517528
Очередные программситы с винтом на 80гб в треде рофл
Аноним 10/11/19 Вск 12:34:22 151761628
>>1517542
шаблоны вандервурда второе издание
последняя книга майерса
Аноним 10/11/19 Вск 12:49:22 151762629
>>1517322
При желании все стандарты новые С++ позволяют писать без утечек и мне похуй, что вы там себе напридумывали про безопасность. Вы сосете член и даже не стесняетесь.
Аноним 10/11/19 Вск 13:00:56 151763430
Есть ли разница между х86 и х64 PE форматом исполняемых файлов? Например, если я сделаю в студии компил под х86, то он определяет IMAGE_NT_HEADERS как IMAGE_NT_HEADERS32, а если под х64, то как IMAGE_NT_HEADERS64. Чо делать то?
Аноним 10/11/19 Вск 13:09:01 151763631
image.png (19Кб, 583x124)
583x124
>>1517634
Короче, я сам посмотрел и единственная разница в структуре IMAGE_OPTIONAL_HEADER, где некоторые поля внизу инициализируются ULONGLONG вместо DWORD. То есть мне придется писать две версии класса для обработки ПЕшки под две архитектуры?
Аноним 10/11/19 Вск 13:14:36 151763732
image.png (15Кб, 477x271)
477x271
Кстати, в С++ не считается такое использование typedefá быдловатостью сишной?
Аноним 10/11/19 Вск 13:24:29 151764233
>>1517637
Ну некоторым удобнее using, а в шаблонах вообще без вариантов. Или ты про что?
Аноним 10/11/19 Вск 13:31:07 151764634
>>1517642
То что я прозвал unsigned char Architektoм, при этом что это обычный тип, а не класс.
Аноним 10/11/19 Вск 13:37:24 151765235
Можно ли как-то запилить шаблон, который будет принимать только два определенных типа аргументов?
Аноним 10/11/19 Вск 13:47:26 151766436
>>1517652
static_assert
или
enable_if
>>1517637
Напиши enum class, что ты как не родной
Аноним 10/11/19 Вск 13:52:26 151766637
Эй, хуесосы, я к вам обращаюсь!
>>1517513
Аноним 10/11/19 Вск 13:57:03 151766838
>>1517666
Здесь хуи не сосут. Тебе в другой тред, чмо.
Аноним 10/11/19 Вск 13:57:50 151767039
>>1517664
>static_assert
Кстати, а вообще ветвить код в функции в зависимости от типа переданного шаблонцозавра порочно? Так делают истинные гуру?
Аноним 10/11/19 Вск 14:00:28 151767140
>>1517646
Епта, это называется абстракция. Можешь потом менять тип данных в куче мест одной строчкой. Плюс позволяет различать значения с разной семантикой, чтобы не складывать яблоки с пчелами (но для этого лучше настоящий strong typing).
Аноним 10/11/19 Вск 14:02:53 151767341
Но вообще да, в данном случае напрашивается перечисление.
Аноним 10/11/19 Вск 14:03:32 151767442
Аноним 10/11/19 Вск 14:07:16 151767943
Лол, вот то я вас пидоров выдрессировал - перекатываете треды еще до бамплимита

оп-растоблядь
Аноним 10/11/19 Вск 14:10:34 151768344
>>1517679
Если ты посмотришь, то и до этого так перекатывали, педеRUST-борщехлёбушка. Дрессируй лучше себя, чтобы не срать в треды.
Аноним 10/11/19 Вск 14:10:41 151768445
>>1517515
Лол, сейчас бы в 2к19 хвалить проприетарный компилятор. Дежурно напоминаю, что msvc пришлось наверстывать поддержку новых стандартов именно из-за clang. Не было бы шланга, сосали бы вы сейчас прямо как пользователи icc
Аноним 10/11/19 Вск 14:12:45 151768646
>>1517683
Дешевые оправдания с помощью былых заслуг. Если рантше перекатывали, то чего перестали, лалка?
Аноним 10/11/19 Вск 14:13:27 151768747
>>1517626
В том-то и проблема, что при желании можно писать с утечками. И не только при желании, можно тупо ошибиться. В этом и суть Rust: он не даёт прострелить колено, отсеивая подобные баги на этапе компиляции
Аноним 10/11/19 Вск 14:13:52 151768848
>>1517670
а бы сначала попробовал сделать через перегрузку функции, если не устроило бы, то через специализацию шаблонной функции и в крайнем случае стал бы использовать возможности новых стандартов..

Аноним 10/11/19 Вск 14:14:02 151768949
>>1517686
>лалка
Типичный расторебёнок.
>Дешевые оправдания с помощью былых заслуг
Просто ты, манька, сидишь и высираешь в тред про то, что из-за тебя великого кто-то что-то там делает даже. На деле же всем похуй на тебя, юродивый.
Аноним 10/11/19 Вск 14:15:15 151769150
>>1517670
constexpr if, маня. Еще можно специализациями
Аноним 10/11/19 Вск 14:15:46 151769351
>>1517687
>он не даёт прострелить колено, отсеивая подобные баги на этапе компиляции
Если он такой ахуенный, то почему его никто не использует кроме пары бородатохипстерофирм? И не пизди, что %FIRMA_NAME% его юзает, педеРАСТ растёт крайне медленно и через лет 5 вообще сдохнет, потому что его создатели его окончательно превратят в говнофункциональную парашу по типу хаскеля.
Аноним 10/11/19 Вск 14:16:27 151769452
>>1517691
>constexpr if
Да, уже понял, что можно
if constexpr (is_same<T, Anus>::value)
Аноним 10/11/19 Вск 14:17:28 151769853
>>1517689
>Настолько похуй, что не могу тебя о этом не уведомить
На будущее - чтобы продемонстрировать безразличие, лучше не отвечать

растоблядь
Аноним 10/11/19 Вск 14:19:21 151769954
Блядь, вы еще один тред засрете растокоастером?
Аноним 10/11/19 Вск 14:23:26 151770455
>>1517693
Через 5 лет в C++ перенесут и borrow checker из раста, и концепты оформят как в расте, и stdlib сделают человеческой как в расте, и std::move превратится в destructive move как в расте. И нихуя у тебя от современного C++ не останется. Ты еще не понял, что растобляди уже победили: или rust победит, или C++ по сути станет таким же, как rust.
Аноним 10/11/19 Вск 14:24:39 151770656
>>1517698
>продемонстрировать безразличие
Я безразличен к твоим действиям, но небезралично потешаюсь с твоей тупости.
Аноним 10/11/19 Вск 14:25:40 151770857
image.png (354Кб, 493x350)
493x350
>>1517704
>растобляди уже победили
Ох уж эти триумфаторы на борщах маман.
Аноним 10/11/19 Вск 14:29:04 151771358
Аноним 10/11/19 Вск 14:30:47 151771759
>>1517713
Один ты тут нервничаешь
Аноним 10/11/19 Вск 14:31:37 151772060
Самое забавное, что растобляди всячески агитируют за прогрессивные технологии и всячески радуются тому, что они появляются в других языках, в тоже время C++-сектанты как таксисты старой формации - протестуют против убера.
Аноним 10/11/19 Вск 14:32:44 151772161
image.png (835Кб, 1604x763)
1604x763
>>1517693
Он по сути конкурирует с с++. И говорить, что его никто не использует, неправильно - просто язык относительно молодой.

Если borrow checker перенесут на с++, то он превратится в монстра без обратной совместимости. А раст останется чистым и аккуратным
Аноним 10/11/19 Вск 14:36:37 151772762
>>1517720
>новые технологии
>синтаксический сахар для дебилов
легаси на Фортране на вас нет
Аноним 10/11/19 Вск 14:37:08 151772863
>>1517713
>Ты главное не нервничай
Мне-то самому rust больше нравится, только что ты тут агитируешь аки проповедник? Тут люди серьезные сидят и у нас на крестах работа повязана, старые проекты, что, могут и на шее ярмом быть, но они есть, так что я тебя не понимаю, зачем ты тут полемику начинаешь.
Аноним 10/11/19 Вск 14:37:42 151773064
>>1517727
>легаси на Фортране на вас нет
Я последний раз это говно в ракетных войсках на С-125 видел.
Аноним 10/11/19 Вск 14:39:27 151773265
10/11/19 Вск 14:41:03 151773666
>>1517636
> То есть мне придется писать две версии класса для обработки ПЕшки под две архитектуры?
Да. Можешь еще как лох на макросах и if/else.
Аноним 10/11/19 Вск 14:43:08 151773867
>>1517736
>Да. Можешь еще как лох на макросах и if/else.
Я в итоге шаблоноеблей ограничился.
>>1517732
Да тред посмотри, он внутри него, ржавчиной растет.
Аноним 10/11/19 Вск 14:48:28 151774568
>>1517322
>Юзайте пикрил
А как в расте low-level acces делают безопасно? Там я могу такой на понтах взять и тупо по адрессу 0x228 обратиться и записать что-то?
Аноним 10/11/19 Вск 14:49:03 151774769
Растошизик все не успокоится, я смотрю. Ну пусть посидит еще чуть-чуть, забанить за нерелейтед всегда успеем.
Аноним 10/11/19 Вск 14:53:02 151774970
>>1517720
Ты понимаешь, что ты уже который тред агитируешь не за раст, а за собственную распиздатость? Ты молодец, весь такой прогрессивный и охуенный, создай себе тред и сиди в нем
Аноним 10/11/19 Вск 14:54:52 151775171
>>1517578
Кодить это необходимость, а не смысл жизни, тупая ты никчемная овца. Это как умение пользоваться молотком, отверткой, плоскогубцами, паяльником.
Аноним 10/11/19 Вск 14:59:49 151775672
>>1517594
> Очередные программситы с винтом на 80гб в треде рофл

Очередная чмоха, сейчас будет рассказывать, что ради логотипчика любимой корпорации нужно непременно тратить бабло и увеличивать вычислительные мощностя, пусть того и требует лишь идеешечка с компилятором.
Аноним 10/11/19 Вск 15:01:47 151775873
>>1517670
Для этого и придумывали if constexpr. Только не вздумай потом писать в else-блоке !std::is_same<T,T>
Аноним 10/11/19 Вск 15:02:25 151776174
>>1517668
Простите, я больше так не буду.
Уже разобрался.
Аноним 10/11/19 Вск 15:10:00 151777575
>>1517513
auto fn = [](T l, T r){...};
set<T, decltype(fn)>(fn)
Аноним 10/11/19 Вск 15:11:14 151777876
>>1517775
Хотя в будущем C++20 вроде как можно будет такое писать искаропки
Аноним 10/11/19 Вск 15:16:18 151778077
Аноним 10/11/19 Вск 15:35:05 151780478
>>1517468
Как будто в расте нельзя дрочить голые указатели с маллоками. Уноси своё раздутое говно.
Аноним 10/11/19 Вск 15:42:49 151780779
Аноним 10/11/19 Вск 16:05:57 151782080
>>1517515
>Бьерн хвалит msvc компиль.
Он очень тормозной. Даже со stdafx компилит в разы медленнее, чем mingw. Из плюсов - больше ворнингов ловит по дефолту, но сообщения об ошибках гораздо хуже, чем у GCC.
Аноним 10/11/19 Вск 16:07:03 151782281
>>1517756
Да, нищий студентик, твое мнение о профессиональной разработке всем очень важно.
Аноним 10/11/19 Вск 16:07:42 151782382
image.png (668Кб, 869x538)
869x538
Так блэт, что у вас там за хуйня с новыми стандартами? Приставку Legacy к старым итераторами присрали, а новые не завезли? Хозмаг переезжает, не закрыв вход охуевающим покупателям?
Аноним 10/11/19 Вск 16:09:32 151782583
>>1517687
>В этом и суть Rust: он не даёт прострелить колено, отсеивая подобные баги на этапе компиляции
Обсудили же в прошлом треде. Он это делает, только пока ты данные располагаешь в виде дерева. Единственная альтернатива этому - использовать индексы и Rc (умные указатели) вместо ссылок, из-за чего вся магия раста сразу теряется, он перестает ловить ошибки во время компиляции, и становится ничем не лучше крестов.
Аноним 10/11/19 Вск 16:11:16 151782984
>>1517721
>А раст останется чистым и аккуратным
Ага, менять синтаксис языка в минорных релизах - сама чистота и аккуратность.
Аноним 10/11/19 Вск 16:38:54 151785885
>>1517825
>из-за чего вся магия раста сразу теряется, он перестает ловить ошибки во время компиляции, и становится ничем не лучше крестов
И тут ты такой приносишь пример, где компилятор не детектит ошибку
Аноним 10/11/19 Вск 16:46:47 151786886
Посоны, опрос!!!

Вы на виндушатине консольные утилиты типа cmake в чем запускаете?
Аноним 10/11/19 Вск 16:53:19 151787087
>>1517868
башем который идет вместе с гитом
Аноним 10/11/19 Вск 17:01:08 151787588
>>1517751
>как умение пользоваться молотком, отверткой, плоскогубцами, паяльником.
членом еще
Аноним 10/11/19 Вск 17:16:48 151788589
>>1517875
и разъебанной дырочкой ануса
Аноним 10/11/19 Вск 17:39:46 151790890
Screenshot2019-[...].png (223Кб, 983x697)
983x697
Аноним 10/11/19 Вск 17:46:33 151791491
Когда в плюсах появятся гигиенические макросы?
Аноним 10/11/19 Вск 17:50:22 151791692
>>1517914
Когда в жопу ебаться перестанешь
Аноним 10/11/19 Вск 18:07:23 151793193

Жил-был СТРАУСТРУП. Шел обычный, скучный день. СТРАУСТРУП занимался рутинными вещами, такими как ебля своей трехсоткиллограмовой матери в зад. Только успев кончить матери в пердак и вынуть измазанный в говне хуй, СТРАУСТРУП услышал стук в дверь. Не заметив, что его мать умерла от сердечного приступа еще 3 дня назад, он пошел открывать дверь и вышел на веранду. На веранде никого не было. СТРАУСТРУП, было, уже начал подозревать СТЕПАНОВА в очередной подъебке, но вдруг, из под крыльца что-то вылетело и понеслось на него. От перевозбуждения СТРАУСТРУП уронил скрепленнеые скотчем очки на пол и смиренно ждал, что будет дальше. ЛЯМБДА, с огромной скоростью пролетела мима СТРАУСТРУПА, квадратной скобкой отпихнула его и заползла в дом, крепко заперев дверь. ЛЯМБДА ясно дала понять, что она приняла дом в качестве аргумента, но отказывается возвращать функцию, которая принимает ПИЗДЮЛИ в качестве аргумента и возвращает дом. ЛЯМБДА заползла на стул перед компьютером и свернувшись в уютный клубок, зашла на ДВАЧ. СТРАУСТРУП знал ЛЯМБДУ. По крайней мере, это слово он точно слышал, но не знал, что оно значит. Он очень удивился, когда недавно узнал, что ЛЯМБДУ включили в НОВЫЙ СТАНДАРТ, принятый полгода назад. СТРАУСТРУП понял, что надо выгнять ЛЯМБДУ из дома, потому что желание в очередной раз залезть на мамочку было слишком велико. Будучи первоклассным инженером, СТРАУСТРУП начал искать решение проблемы. Для разминки он решил повторить таблицу умножения до 12 на 12. Он 2 часа стоял на одном месте и смотрел в никуда, потея как свинья. Пока он боролся с таблицей умножения, из за угла вышел измазанный в говне АНДРЕЙ АЛЕКСАНДРЕСКУ и осмотрелся. Рядом стояли несколько зданий, включая психбольницу для буйнопомешанных и тюрьму. АНДРЕЙ задумался и понял, что в округе нет ни одного настолько больного и гнилого человека, чтобы продать ему свою книгу. Небрежно посвистывая, АНДРЕЙ удалился. СТРАУСТРУП закончил разминку и начал думать, как прогнать ЛЯМБДУ. Вдруг его осенило. Его дом был скомпилирован последней версией GNU G++, которая поддерживает ЛЯМБДУ. Именно поэтому, ЛЯМБДА и смогла проникнуть к нему в дом. СТРАУСТРУП понял, что ему нужна более старая версия G++, которая не поддерживала ЛЯМБДУ и тогда, при попытке компиляции дома, ЛЯМБДУ выкинет вместе с СООБЩЕНИЯМИ ОБ ОШИБКАХ. Но старую версию было негде взять. СТРАУСТРУП нанял ФУНКЦИОНАЛЬЩИКА СО ШТАНГОЙ за 5 тысяч рублей. Так как компьютера у них не было, ФУНКЦИОНАЛЬЩИК вначале написал на бумажке компьютер в 1 строчку НА ХАСКЕЛЕ:

Computer = Computer

ФУНКЦИОНАЛЬЩИК сожрал бумажку и высрал работающий системный блок с ВОДЯНЫМ ОХЛАЖДЕНИЕМ и предустановленой WINDOWS 7. На компьютере уже был установлен АЛАН ВЭЙК и ХАСКЕЛЛ ПЛАТФОРМ. Корпус был красного цвета, с наклейкой ТУРБО на прозрачной боковой крышке. Затем ФУНКЦИОНАЛЬЩИК написал в 2 строчки старую версию G++:

Compiler :: [C++SourceCode] -> [ExecutableFile]

Compiler source =(Link . Compile) source

СТРАУСТРУП взял исходники своего дома и запустил компиляцию. Компилятор начал дристать СООБЩЕНИЯМИ ОБ ОШИБКАХ. СТРАУСТРУП попытался разобрать первую строчку, но увидев такое, дальше лезть не решился(таблица умножения и так вымотала его):

std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::less<std::basic_string<char, std::map<std::basic_string<std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>,std::allocator<char> > const, std::basic_string<char, std::char_traits<char>,std::allocator<char> > > > >char, std::char_traits<char>, std::allocator<char> >,std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>,std::allocator<char> > const, std::basic_string<char, std::char_traits<char>,std::allocator<char> > > > >std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>,std::allocator<char> > const, std::basic_string<char, std::char_traits<char>,std::allocator<char> > > > >

Высрав 10 000 СТРОК СООБЩЕНИЙ ОБ ОШИБКАХ, компилятор скончался от ЛЕНИВЫХ ВЫЧИСЛЕНИЙ ПРЯМОЙ КИШКИ и из монитора вылетела ЛЯМБДА. Придерживая круглые скобки квадратными скобками, ЛЯМБДА в ужасе съеблась под ближайший камень. Ей еще долго не захочется принимать и возвращать значения. Довольный СТРАУСТРУП плюнул в руку, чтобы наслюнявить хуй и уже решился залезать на мамочку, но передумал и решил вначале запостить эту историю на ИЗДАЧ.
Аноним 10/11/19 Вск 18:31:42 151794694
>>1517914
дзен заключается в понимании того что гигиенические макросы на плюсах - это шаблоны
теперь уебывай
Аноним 10/11/19 Вск 18:32:16 151794795
Аноним 10/11/19 Вск 18:32:59 151794996
>>1517931
>СТРАУСТРУП занимался рутинными вещами, такими как ебля своей трехсоткиллограмовой матери в зад.
Тоже что ли видели то видео? Ебать я тогда ахуел.
Аноним 10/11/19 Вск 18:33:52 151795097
Аноним 10/11/19 Вск 18:49:21 151796598
Добрый вечер. Я Аркадий. Я люблю С++. Давайте дружить!
Аноним 10/11/19 Вск 18:53:31 151796999
>>1517965
Доброго времени уток! Я белочка. Давай дружить не тужить.
Аноним 10/11/19 Вск 19:01:45 1517975100
>>1517965
Привет, я Эдуард, педераст и либирал.
Аноним 10/11/19 Вск 19:06:29 1517985101
Аноним 10/11/19 Вск 19:10:15 1517992102
>>1517965
‹‹Записываю витал-икону+наши хромосомы из выделений в присос =кровь хромосомы::горизонт жидкостей тела=убить как собаку, разложенную до голого гена =ТВ/спазм// Я разочарован в объёмной инокуляции гидромашины::бесконечный круговорот масс плоти::исчезаю с телом машинной природы ТоК::‹‹высасываю порно нервный газ бойроида// Душа/грамма самосокрушения до квантовой трагедии NDRO// Выход=преступник внутренней-системы-органов›› Определяет++мазо=траффик::от ToKAGE, скапливающихся в городе Городе Трупов// Душа/грамм их разжижают внутренние жидкости тела++себя, что вызывает в цифровом вампире функцию насилия::чудовнще разрастающееся запечатлено в голограмме пса и реверберации// Жестокость замученной памяти/
Аноним 10/11/19 Вск 19:16:06 1517998103
>>1517975
> педераст и либирал.

Я так и решил оставить карьеру, когда сменив две галеры и придя работать в третью, увидел что там то же одни педерасты и либаралы и прочие подвиды хипстеров. Презираю всех вас, чмошек ебанных.
Аноним 10/11/19 Вск 19:34:33 1518024104
Аноним 10/11/19 Вск 19:37:15 1518025105
Аноним 10/11/19 Вск 19:40:08 1518028106
Кто, блядь, притащил на двачи ебаный термин "бумер". В этой стране эквивалентом американских бумеров является слово "совок". Именно совки это та пидарасня, которая ненавидит молодых и успешных либералов, потому что в их возрасте совки сосали хуи по всем фронтам и им завидно, что все, за что они боролись, современная молодежь имеет по умолчанию.
Аноним 10/11/19 Вск 19:43:03 1518030107
>>1518028
Проиграл с ''С++'' треда.
Аноним 10/11/19 Вск 19:43:17 1518031108
>>1518024
>Что за видео?
Он про видео, где СТРАУСТРУП занимался рутинными вещами, такими как ебля своей трехсоткиллограмовой матери в зад.
Аноним 10/11/19 Вск 19:47:57 1518034109
>>1518028
>Кто, блядь, притащил на двачи ебаный термин "бумер".
Никто вроде, тут только миллениалы и зумеры (но это не точно).
Аноним 10/11/19 Вск 19:48:49 1518036110
15696783672600.png (394Кб, 633x469)
633x469
У питона есть urllib для работы с вебом. Есть ли среди дефолтных либ с++ аналоги? Если нет, то как тогда можно работать с SMTP, FTP, HTML, JSON итп? Что можно почитать на эту тему?
Аноним 10/11/19 Вск 19:49:55 1518040111
>>1518036
>У питона есть urllib для работы с вебом. Есть ли среди дефолтн
Это троллинг, да? Ты специально давишь на это, ирод?
Аноним 10/11/19 Вск 19:50:37 1518042112
>>1518040
Нет, честно. Правда не знаю.
Аноним 10/11/19 Вск 19:53:50 1518050113
>>1518042
В С++ нет дефолтных либ для этих задач. Либо используй какой-нибудь curl, либо подрбуй boost. Можешь сам, конечно, на сокетах навелосипедить или заюзать платформозависимую хуйню тибо winnet с std либы, но это порочно.
Аноним 10/11/19 Вск 19:54:48 1518051114
>>1518036
К сожалению в крестах демократия, одобренных Партией либ мало, гугли типа "c++ json library"
Аноним 10/11/19 Вск 19:55:57 1518052115
>>1518051
Не-не, такое:
>>1518050
>>Можешь сам, конечно, на сокетах навелосипедить и
Аноним 10/11/19 Вск 19:56:57 1518053116
Или сажайся на фреймворк типа Qt, там жсон с серверами будет искаропки.
Аноним 10/11/19 Вск 19:58:24 1518055117
>>1518052
>на сокетах навелосипедит
У меня раньше был фетиш на то, что я делал велосипеды под все и дрочил на них. У меня был свой класс строки, была своя либа запросов, было все свое, но мне было стыдно это постить на гитхаб, так как это было говно уровня HippoString string = new HippoString("anus");
Аноним 10/11/19 Вск 19:59:38 1518056118
Хочу сам написать. Что можно читануть на эту тему? Ну вот, например, хочу получить html этой страницы и вывести его в консоль. С чего вообще тут начать?
>>1518055
Мне пойдет.
Аноним 10/11/19 Вск 20:08:30 1518060119
>>1518056
>Ну вот, например, хочу получить html этой страницы и вывести его в консоль. С чего вообще тут начать?
в современном мире это может быть проблематично, тк контент многих сайтов генерится динамически на клиенте при помощи js
но в качестве тренировки тебе можно начать просто с реализации либы которая реализовывала бы client http, те клиентскую часть протокола http


Аноним 10/11/19 Вск 20:12:57 1518065120
>>1518056
Берешь пиздон и мажешься реквестом
Аноним 10/11/19 Вск 20:14:03 1518067121
Аноним 10/11/19 Вск 20:15:33 1518068122
Это шиза или это и есть кресты во плоти?
Аноним 10/11/19 Вск 20:18:17 1518070123
>>1518036
нужно отталкиваться от того, под винду тебе это надо, или под юниксы, или кроссплатформенное решение
из кроссплатформы, к примеру, многим нравится cpprestsdk от майкрософт
в нем есть http client, websocket client, ouath client, json и обертка для асинхронки..
по итогу это позволяет работать (с клиентской стороны) с современным интернетом, где много данных гоняется поверх http (+webcocket)

Аноним 10/11/19 Вск 20:22:02 1518071124
zakaz-HP-630-No[...].jpg (379Кб, 1365x1073)
1365x1073
>>1518068
Какие кресты? Тут теперь филиал б-га РАСТА на Земле.
Аноним 10/11/19 Вск 20:29:06 1518076125
>>1518067
Да при чем тут? Учусь я, а как лучше всего это делать? Правильно, руками.
Аноним 10/11/19 Вск 20:37:29 1518082126
>>1517661
Ты читать умеешь? Матрица NxM, а не 5х5.
Аноним 10/11/19 Вск 20:49:29 1518094127
>>1517357
А как в 1 строчку-то?
Аноним 10/11/19 Вск 21:09:20 1518111128
>>1518056
>Что можно читануть на эту тему?
Сокеты читай.
Аноним 10/11/19 Вск 21:09:53 1518112129
>>1518082
Не умею читать, сорри.
Аноним 10/11/19 Вск 21:14:14 1518115130
Аноним 10/11/19 Вск 21:17:20 1518117131
>>1517825
> ничем не лучше
Лучше, там в рантайме в случае бага будет вполне определенная ошибка, а не неведомое нечто (UB).
Аноним 10/11/19 Вск 21:21:42 1518119132
На дворе 2к19, а в ваш ссаный STL все еще не завезли многопоточную очередь, хосспаде...
Аноним 10/11/19 Вск 21:22:49 1518120133
Почему у плюсов такая куцая либа?
Аноним 10/11/19 Вск 22:37:48 1518152134
>>1518094
[[min(x+1, y+1, N-x, M-y) for x in range(N)] for y in range(M)]
Аноним 10/11/19 Вск 22:51:41 1518159135
Бляяяяяяядь!!! Какого хуя даже в boost нет нормальной очереди?!?!?! В boost::lockfree::queue хуй ты положишь string, потому что нетривиальные конструкторы-деструкторы, матерей всех ебал! Неужели таки самому писать?!?!?!?!??!?!! Да нахуй тогда сдались ваши кресты ВШИВЫЕ, когда я на Сишке люблю чистые прямолинейные велосипеды писать, но не на крестах блядь из говна и палок запутанную хуету всякую.
Аноним 10/11/19 Вск 22:53:30 1518163136
>>1518159
ты хуй сосешь и в жопу долбишься
Аноним 10/11/19 Вск 22:53:57 1518164137
>>1518159
shared_ptr ложи, хуле ты такой тупой.
Аноним 10/11/19 Вск 22:54:23 1518166138
>>1518163
Дядя, как стать таким умным, как ты?
Аноним 10/11/19 Вск 22:54:24 1518167139
>>1518120
Потому что комитет на комитете, и много реализаций. А не одна, как в твоем языкнейм.
Аноним 10/11/19 Вск 22:55:23 1518169140
Аноним 10/11/19 Вск 22:55:30 1518170141
>>1518152
Я думал мы на плюсах пишем. Ну а так да, классное решение print ток еще добавить
Аноним 10/11/19 Вск 22:55:45 1518171142
>>1518166
хуй сосать и в жопу долбиться
Аноним 10/11/19 Вск 22:57:01 1518176143
>>1518164
Я не ради того свой пет-прожект с няшной чистой сишечки на ваши ублюдские грязные кресты переношу, чтоб с поинтерами пердолиться в перемешку с говноабстракциями. Так-то я все вообще красиво сделаю, но вопрос нахуя тогда гигабайтные либы тащить??? Когда один хуй надо через маллокать буфер, класть в него .c_str() и аналогичную хуету при извлечении. При чем ебаная .pop() еще возвращается с ничем, вместо того чтоб дождаться, ЧТО БЛЯДЬ ЛОГИЧНЕЕ НАХУЙ!!!!!
Аноним 10/11/19 Вск 23:02:26 1518185144
Аноним 10/11/19 Вск 23:05:22 1518188145
110816042552ed-[...].jpg (20Кб, 640x360)
640x360
Аноним 10/11/19 Вск 23:16:04 1518206146
>>1518188
Да я в курсе, что lockfree и означает не блокировку потока процедурой .pop() при пустой очереди. Но ведь других вариантов и не завезли! Спрашивается, какого хуя? Разве не логично, чтоб поток-producer запушил туда столько null, сколько потоков-consumer, чтоб каждый попнул свое послание нахуй и за-join-ился? Я теперь, как мудак, должен рассчитывать на UB, что раз пусто, то скорее всего больше не будет, потому что producer в среднем быстрее обработчика? Хуита какая-то, ответственно заявляю-с, однако.
Аноним 10/11/19 Вск 23:16:38 1518208147
>>1518176
Я >>1518169 же говорю, смотри нормальные библиотеки (вроде folly), а не буст.
Аноним 10/11/19 Вск 23:19:55 1518215148
>>1518208
Но ведь boost - это та самая околостандартная библиотека, фичи которой со временем прирастают к STL, не?
Аноним 10/11/19 Вск 23:23:15 1518217149
>>1518208
Алсо, что опытный анон может сказать о Qt?
Аноним 10/11/19 Вск 23:24:08 1518218150
>>1517858
Любой вариант, когда начинаешь использовать индексы массива вместо ссылок >>1514610
Аноним 10/11/19 Вск 23:35:32 1518225151
>>1517823
Расслабься, пилят еще стандарт. На 17 еще год минимум сидим.
Аноним 10/11/19 Вск 23:36:12 1518226152
>>1518215
Да, и именно из-за этого ничего хорошего ждать там не стоит. Если пытаться угождать всем и сразу — всегда получаются вот такие уёбища как stl/boost/java spring/итд.
>>1518217
Что сказать-то? Если делаешь гуйню на нём то уже только его использовать и можно (он сам на себе завязан с ног до головы), если хочешь лайтово и перформансно — это точно не про Qt.
Аноним 10/11/19 Вск 23:36:38 1518227153
>>1517868
> винда
> консоль
Лол... Cmake-gui качай и не выебывайся.
Аноним 10/11/19 Вск 23:37:21 1518228154
Аноним 10/11/19 Вск 23:39:14 1518230155
>>1518227
>качать цмейк гуй
>устанавливать цмейк гуй
>запускать цмейк гуй
>нажимать на кнопку в цмейк гуй
>вместо cd hui; cmake .
Шиндушатники как обычно.
Аноним 10/11/19 Вск 23:46:29 1518236156
Аноним 10/11/19 Вск 23:51:18 1518238157
>>1518176
>Когда один хуй надо через маллокать буфер, класть в него .c_str() и аналогичную хуету при извлечении.
в modern с++ предполагается что буфер памяти будет представляться как std::vector<std::byte>

Аноним 10/11/19 Вск 23:57:02 1518239158
>>1518208
>нормальные библиотеки (вроде folly)
FBString.h
о, да, детка
не изменяй традициям!
каждая уважающая себя компания пищая на крестах должна иметь свой класс строки
Аноним 10/11/19 Вск 23:58:31 1518240159
>>1518159
а зачем тебе локфри очередь? а вдруг дзен заключается в том что она тебе не нужна


Аноним 11/11/19 Пнд 00:00:02 1518241160
>>1518164
возможно, глупый вопрос, но зачем класть обязательно shared_ptr, почему просто не unique_ptr?


Аноним 11/11/19 Пнд 00:01:43 1518244161
>>1518240
Мне нужна нормальная очередь.
Аноним 11/11/19 Пнд 00:02:49 1518248162
>>1518236
И че теперь?
Как ты представляешь себе wait-free queue pop?
Аноним 11/11/19 Пнд 00:06:04 1518251163
>>1518239
Т.е. тебя не смущает, что у них там вообще всё окружение своё (как и у всех), а свои строки смущают?
>каждая уважающая себя компания пищая на крестах должна иметь свой класс строки
Т.е. ещё тебя не смущает тот факт, что даже в, блядь, джаве такое встречается?
Аноним 11/11/19 Пнд 00:07:13 1518253164
>>1518241
Наверное, можно и unique_ptr.
Аноним 11/11/19 Пнд 00:10:04 1518254165
>>1518119
>2к19, а в ваш ссаный STL все еще не завезли многопоточную очередь
да использовали стандартные контейнеры stl в многопоточке вовсю, четверть века уже используют
просто оборачивали в примитивы синхронизации, кто то писал классы-обертки для этого
сейчас то же самое на изи делают, но уже со стандартной многопоточкой..


Аноним 11/11/19 Пнд 00:14:32 1518256166
Есть два стула: возвращать unique_ptr с результатом в случае его наличия или возвращать bool флаг наличия результата, а сам результат записывать через параметр по ссылке. На какой сам сядешь, на какой мать Страуструпа посадишь?
То есть
std::unique_ptr<T> zalupa();
или
bool zalupa(T &resultat);
Аноним 11/11/19 Пнд 00:15:55 1518257167
>>1518230
> ПКМ -> открыть cmake здесь.
Хех, мда. Терминалопидоры соснули, опять.
Аноним 11/11/19 Пнд 00:17:24 1518260168
>>1518230
> cmake .
> .
Как потом кэш чистить будешб? Вилкой?
Аноним 11/11/19 Пнд 00:18:35 1518261169
>>1518251
да это известная шутеечка про свой класс строки в каждой крестовой фирме..
но, в оправдание, мотивация то этого велосипедостроения была оправданна по соображениям производительности (особенно в геймдейве это людей раздражало)
хотя щас то все вроде более менее норм, тк семантика перемещения есть и string_view есть.. так что и стандартная строка тоже норм стала..

Аноним 11/11/19 Пнд 00:19:37 1518264170
Аноним 11/11/19 Пнд 00:20:26 1518266171
>>1518264
Как там, в будующем?
Аноним 11/11/19 Пнд 00:23:55 1518269172
krestiki.png (4Кб, 1284x89)
1284x89
Аноним 11/11/19 Пнд 00:25:00 1518271173
>>1518260
А зачем его чистить-то? У шиндодибилов опять всё отваливается?
Аноним 11/11/19 Пнд 00:26:55 1518272174
>>1518271
Ты пишешь смакелистс, который с первого раза работает? Можно я тебе отсосу?
Аноним 11/11/19 Пнд 00:26:58 1518273175
>>1518271
красноглазый полудурок в очередной серет в штаны в прямом эфире, ничего не понимая, но виновата шинда
Аноним 11/11/19 Пнд 00:27:02 1518274176
>>1518256
Возвращу сырой поинтер, проверю рещультат и засуну его в unique_ptr.
Аноним 11/11/19 Пнд 00:30:11 1518276177
>>1518272
А что там писать-то? Он же простой как палка.
Даже когда где-то обосрусь, поправляю и ебашу make — и он сам себя обновляет прекрасно.

>>1518273
Причём тут я-то? У меня никогда ничего и не отваливалось, хз зачем вообще чистить этот кэш.
Аноним 11/11/19 Пнд 00:31:08 1518277178
>>1518274
Какие преимущества? Я вижу потенциальную утечку, но это при неправильном использовании, разумеется. Если по указателю память выделена, но не стал записывать в юник_птр.
Аноним 11/11/19 Пнд 00:36:46 1518278179
Аноним 11/11/19 Пнд 00:36:57 1518279180
>>1518277
>Какие преимущества?
Простой и понятный код.
> Я вижу потенциальную утечку
Ну так и юзай раст, лол.

Алсо, есть ещё гениальный вариант в стиле go-вна с кортежом
if (auto [huita, err] = zalupa(); err != nullptr) { pizdos(); }
Аноним 11/11/19 Пнд 00:39:48 1518282181
>>1518239
>каждая уважающая себя компания пищая на крестах должна иметь свой класс строки
Бывает, что у компании своя строка, да еще и в сторонних либах, которые эта компания использует, в каждой по своей версии строк и умных указателей.
Аноним 11/11/19 Пнд 00:39:49 1518283182
>>1518256
насколько я понимаю, в современном c++ типа модно возвращать значение (с передачей владения) через unique_ptr, заодно nullptr будет говорить об ошибке, еще плюс этого что можно возвращать полиморфные типы..
есть еще второй вариант через std::optional, он удобный в том случае когда не возврат значения не является ошибкой, и еще удобный тем что дальше ты работаешь напрямую с объектом (а не косвенно через укзатели, будьто и умные указатели)
может есть и еще какие новые способы возврата значения..

Аноним 11/11/19 Пнд 00:43:27 1518284183
>>1518274
>Возвращу сырой поинтер
это очень хуевое решение, очень
оно имеет пользу в одном случае - это когда из твоего контейнера есть необходимость показать наружу его потроха, к примеру, как в std::vector метод data()

Аноним 11/11/19 Пнд 00:45:59 1518286184
>>1518279
такой подход тоже использовался в крестах
возвращали std::pair, первый член - данные, второй - валидны или нет
очевидный минус этого что данные (в отличие от std::optional всегда должны быть, те всегда должен создаваться возвращаемый объект)

Аноним 11/11/19 Пнд 00:46:18 1518287185
>>1518283
>может есть и еще какие новые способы возврата значения..
Стандартный способ еще до 11 стандарта - своя обертка, внутри которой указатель на данные, которая работает как value-тип. Вроде std::string и почти любого класса Qt (причем pimpl тут не обязателен).
Аноним 11/11/19 Пнд 00:51:16 1518289186
>>1518283
Можешь по старинке еще:
T val = T::defaultValue();
bool ok = collection->find( val );
Аноним 11/11/19 Пнд 00:53:05 1518291187
>>1518286
к примеру, результат вставки insert в множество возвращал пару где second было удачно ли завершилась вставка, а first - возвращала позицию вставки, это было оправданно тк итераторы stl - легкие объекты, зачастую это всего лишь указатели..

Аноним 11/11/19 Пнд 00:53:24 1518292188
>>1518286
>такой подход тоже использовался в крестах
А я этот псевдокодкод на чем написал по-твоему?

>>1518284
Зависит от ситуации. Если писать коллекции для библиотеки, которая торчит везде - да, какой нибудь дебил обязательно отстрелит ногу всем. Если внутренняя залупа для проекта — то документации хватит с головой.
Аноним 11/11/19 Пнд 00:56:17 1518293189
>>1518289
ну это то понятно
типа out-параметр обычный, но тк это ссылка, то он должен быть проинициализирован, поэтому пропехивают пустой объект в обрабатывающую функцию, а тот с ней работает
проблема такого подхода очевидна - в случает ошибки или отстутвия результата, все равно приходится "тратится" на создание пустого объекта..


Аноним 11/11/19 Пнд 00:58:03 1518296190
>>1518292
>А я этот псевдокодкод на чем написал по-твоему?
на ободке своей сигары, очевидно же!
потом выкурил ее, и понял, что все это только дым!

Аноним 11/11/19 Пнд 01:02:48 1518299191
>>1518287
не очень понимаю
в ситуации отсутствия механики перемещения это же приводит к копированию внутренних данных, которые обернуты этим классом?

Аноним 11/11/19 Пнд 01:03:24 1518301192
>>1518218
Тебя с этой хуйней в прошлом треде обоссали, шизик. Там получишь внятную ошибку в рантайме с хорошим стектрейсом. А в C++ от этой ошибки можно защититься только с помощью санитайзеров
Аноним 11/11/19 Пнд 01:16:40 1518311193
>>1518301
>А в C++ от этой ошибки можно защититься только с помощью санитайзеров
Можешь сделать проверку в рантайме без всяких санитайзеров, так же как в расте, никто не запрещает.
Аноним 11/11/19 Пнд 01:19:44 1518313194
>>1518299
>в ситуации отсутствия механики перемещения это же приводит к копированию внутренних данных, которые обернуты этим классом?
Да, но в том же Qt это нормально работает. Если тебе не нужна какая-то суперпроизводительность, то почему бы и нет.
Аноним 11/11/19 Пнд 01:26:20 1518316195
>>1518301
>Там получишь внятную ошибку в рантайме
А куда девается компиляторная чудо-магия? Я и в джаве могу на красивые стектрейсы посмотреть.
Аноним 11/11/19 Пнд 01:40:03 1518322196
>>1518256
Верну поинтер, но в функцию, по ссылке буду передавать логгер. Короче, как у тебя, но наоборот. Сам не догадался что-ли?
11/11/19 Пнд 01:45:35 1518325197
>>1518301
> Там получишь внятную ошибку в рантайме с хорошим стектрейсом
Будто я на крестах не могу в рантайме зарегать свой обработчик ошибок с блэкджеком, шлюхами и стектрейсом длиннее твоего. В очередной раз растоманя обосралась. Вот потом такие дебилы и не могут use after free от null pointer dereference отличить.
11/11/19 Пнд 01:50:27 1518328198
>>1518311
Не пали контору этому коробочнику. Он думает, что если в стандарте нету, то все, нельзя и язык говно. Хотя язык здесь вообще не причем, это просто дополнительный инструментарий Сам же вообще нихуя не знает, как все это внутри устроено. Я уверен на 100% что этот школьник совершенно не знает кресты, насмотрелся в ютубе на сойбоев, начитался проплаченных на хабре статей про ржавоговно и пришел срать в тред.
Аноним 11/11/19 Пнд 02:33:50 1518338199
Аноним 11/11/19 Пнд 02:33:50 1518339200
>>1518316
>А куда девается компиляторная чудо-магия? Я и в джаве могу на красивые стектрейсы посмотреть.
Она возможна, но не в общем случае. Bounds checking - это частный случай проблемы остановки, так что с этим все грустно.
В джаве со стектрейсами все хорошо, но там сложнее добиться такого же memory footprint, latency и throughput, как в rust и c++. Ну и NullPointerException вылетает не в том месте, где null реально появился.

>>1518311
>Можешь сделать проверку в рантайме без всяких санитайзеров, так же как в расте, никто не запрещает.
А можешь и не сделать.

>>1518325
>Будто я на крестах не могу в рантайме зарегать свой обработчик ошибок с блэкджеком, шлюхами и стектрейсом длиннее твоего
>мечтает о большом, длинном стектрейсе
Ох уже эти комплексы у секты свидетелей небитого стека

>не могут use after free от null pointer dereference отличить
Не надоело срать под себя и смывать чужую мочу с лица?
Аноним 11/11/19 Пнд 02:40:23 1518341201
>>1518339
>А можешь и не сделать.
В этом суть С++. Проверки небесплатные. Хочешь - делаешь, не хочешь - не делаешь.
Аноним 11/11/19 Пнд 03:37:24 1518360202
>>1518341
Сразу видно, что о бенчмарках ты только слышал, отсюда и фразы "не платишь за то, что не используешь".
Аноним 11/11/19 Пнд 03:39:57 1518362203
>>1518360
Аргументация уровня /b

Хотя, что еще ожидать от челика, который постоянно промахивается тредом, получает струю урины в лицо, и снова приходит за свежей струей
Аноним 11/11/19 Пнд 03:46:22 1518364204
>>1518362
>пук
маня не в курсе, что серьезные дяди сперва профилируют и пишут бенчмарки, и только потом оптимизируют. Внезапно bounds check можно заоптимайзить и в расте, и джаве, и в js, если очень хочется. Удивительно, правда?
Аноним 11/11/19 Пнд 03:49:41 1518366205
>>1518364
Серьезные дяди достаточно обучаемы, чтобы не срать там, где их не просят. Однако все те же серьезные дяди упорно продолжают срать.
Аноним 11/11/19 Пнд 03:52:42 1518368206
>>1518360
Любая проверка в рантайме небесплатная.

>не платишь за то, что не используешь
Это про другое
Аноним 11/11/19 Пнд 03:53:41 1518369207
>>1518366
Ну не сри тогда, дядя, раз ты такой обучаемый
Аноним 11/11/19 Пнд 04:27:49 1518377208
>>1518339
Вот и подтверждение моей правоты. 0 аргументов, 0 опровержений, одни оскорбления. Попрошу тебя уйти из этого треда, ты совершенно некомпетентен.
Аноним 11/11/19 Пнд 05:56:46 1518391209
Аноним 11/11/19 Пнд 07:29:50 1518409210
>>1518278
>faster threads help their slower peers
Прости, но ты вообще не понимаешь, о чем речь.
Совершенно очевидно, что в общем случае queue.pop не может быть wait free.
Аноним 11/11/19 Пнд 13:45:39 1518520211
auto it = a.begin();
...
b.push_back(std::move(*it));
a.erase(it); // Допустимо ли ерасить итератор после мувинга? Это всё ещё итератор на тот же элемент контейнера, пускай сам элемент уже и не валиден?
Аноним 11/11/19 Пнд 13:54:42 1518529212
>>1518520
Сделал два сравнения. В общем, итератор до мува равен итератору после мува, но в то же время итератор до ераса не равен итератору после ераса. Надеюсь, что это не UB и этих данных достаточно, чтобы полагать, что допустимо ерасить итератор после мувинга.
Аноним 11/11/19 Пнд 16:05:37 1518630213
6-Figure4-1.png (143Кб, 838x566)
838x566
Аноним 11/11/19 Пнд 16:13:13 1518633214
>>1518167
>.
Нижнеточкобляди и на мой двач пришли, пиздец·
Аноним 11/11/19 Пнд 16:18:19 1518638215
C++ какой-то ебаный· Добавили перегрузку оператора кавычки, добавили ебучий спейшип оператор· Когда это говно закончится? Я хочу обратно свой ванильный C++·
Аноним 11/11/19 Пнд 16:35:10 1518650216
>>1518638
не используй новые фичи? можешь даже новые стандарты не включать
Аноним 11/11/19 Пнд 17:13:37 1518692217
>>1518520
Итератор -можно, на него move не влияет.
Аноним 11/11/19 Пнд 17:16:10 1518694218
>>1518638
> spaceship operator
Сначала подумал, что это шутка, а потом как проиграл.
Аноним 11/11/19 Пнд 17:17:31 1518696219
>>1518638
> spaceship operator
Сначала подумал, что это шутка, а потом как проиграл.
Аноним 11/11/19 Пнд 18:19:34 1518749220
Здорово крестьяны

Почему move-семантику называют именно семантикой? Это что, очередная попытка повысить ЧСВ за счет охуенно умных слов?

И что вообще значит это слово семантика применительно к проганью? Мб есть места где есть объяснения для даунов. Не уверен, что до конца вник в суть термина.
Вот еще вдогонку: "++hui;" и "hui=hui+1;" - это семантически эквивалентные выражения?
Аноним 11/11/19 Пнд 18:23:05 1518753221
>>1518749
> это семантически эквивалентные выражения?
Не совсем.
>Это что, очередная попытка повысить ЧСВ за счет охуенно умных слов?
Не совсем.
>Почему move-семантику называют именно семантикой?
Ну не совсем.
Аноним 11/11/19 Пнд 18:26:00 1518757222
>>1518749
>++hui;" и "hui=hui+1;
Правильнее так: i -= -1;
Аноним 11/11/19 Пнд 18:27:35 1518759223
>>1518757
>i -= -1;
Очевидно это не совсем правильно.
Для начала надо создать RAII для числовых вычислений, затем при помощи умного указателя инициализировать переменную i с определенным значением и инициаилизировать единичку, чтобы из соображений безопасности не было утечек мозгов в пендостан.
Аноним 11/11/19 Пнд 18:31:52 1518764224
>>1518749
>"++hui;" и "hui=hui+1;" - это семантически эквивалентные выраже
Нет, твой хуй может как угодно переопределить эти операторы.
Даже в случае инта там возможно будет разный ассемблерный код, если отключить все оптимизацию.
Аноним 11/11/19 Пнд 18:42:28 1518780225
>>1516856
И снова я тут, тестовое успешно сделал, написал к нему 25 тестов, отправил сорцы и документацию компании. Спустя день позвонили и попросили меня скинуть готовый .exe файл и тут я охуел. Собрал эксешник, три раза скидывал его этой ебаной эйчарше, но только спустя 2 часа до нее дошло что письма с прикреплёнными эксешниками блокируются почтовым сервисом. В итоге они дали мне какой-то хостинг куда я должен был залить программу, что я и сделал. Спустя еще час они написали мне что не смогли скомпилировать мой проект и запустить эксешник. Я хуй знает чему можно научится в фирме, которая с инструкцией по сборке не может собрать программу, и при тестах на линукс команды работает на винде. Уже и хуй знает как от них тактично отказаться, чтобы репутацию среди других компаний не портить.
Аноним 11/11/19 Пнд 19:18:04 1518801226
Аноним 11/11/19 Пнд 19:35:39 1518814227
>>1518753
>>1518757
>>1518801

Попытались выебнуться, но как обычно изговняли штаны, так и не ответив на вопрос

Вы на мамкин вопрос "Почему обосрал трусы" также отвечать будете "Это не трусы, это стринги"?

Элитный тред зк во всей красе
Аноним 11/11/19 Пнд 19:44:47 1518822228
>>1518780
В чём заключала задача для тестового задания? Насколько сложно? Можешь примерно почувствовать?
Аноним 11/11/19 Пнд 19:55:29 1518833229
>>1518749
>Вот еще вдогонку: "++hui;" и "hui=hui+1;" - это семантически эквивалентные выражения?
Да
Аноним 11/11/19 Пнд 20:54:34 1518907230
>>1518520
Внимательно посмотри на сигнатуру erase.
Аноним 11/11/19 Пнд 21:04:59 1518914231
>>1518780
Да им скорее всего впадлу разворачивать окружение для сборки, поэтому и попросили exe. Скинул бы им wannacry ради лулзов, HR можно даже попросить антивирус выключить - и сука выключит
Аноним 11/11/19 Пнд 21:25:48 1518937232
>>1518914
>Да им скорее всего впадлу разворачивать окружение для сборки
>exe
>>1518780
>и при тестах на линукс команды работает на винде
Да нет, там всё куда хуже. Начальник смены — старший заместитель младшего руководителя среднего инженегра — Пидорасов Андрей Хуилович не для того сидит 40 лет на своёи заводе.
Аноним 11/11/19 Пнд 22:16:04 1518970233
Аноним 11/11/19 Пнд 22:32:21 1518977234
Аноним 11/11/19 Пнд 23:30:51 1519001235
>>1518977
Ладно, раз ты тупой, то придется объяснять.
В первом случае у тебя будет выполняться только тело оператора++, а во втором - создастся временный объект, к нему прибавится единица и он будет присвоен левой части выражения. Хорошо если перемещением, но что-то мне подсказывает, что здесь будет копирующее присваивание без std::move.
Чуешь? Семантически это нихуя не эквивалентные выражения.
Аноним 12/11/19 Втр 00:22:47 1519027236
image.png (58Кб, 1914x442)
1914x442
image.png (54Кб, 1881x362)
1881x362
Аноним 12/11/19 Втр 00:31:16 1519032237
>>1518749
>Вот еще вдогонку: "++hui;" и "hui=hui+1;" - это семантически эквивалентные выражения?
Зависит от определения операторов ++ и +, они могут любую хуйню творить, даже кофе заваривать. Эквивалентные ли они для примитивных типов данных -- уже другой вопрос.
>>1519027
Это еще не значит, что семантика одинаковая, т.к. компилятор оптимизирует автоматически. Т.е. де юре происходит вся та хуйня, которую описал анон выше, а де факто бинарный код одинаковый.
Аноним 12/11/19 Втр 00:34:55 1519035238
>>1519001
>оператора++
Только в этом случае был ++оператор, умник хуев
Аноним 12/11/19 Втр 02:25:24 1519071239
>>1519032
Да блять понятно что для примитивных. Мб еще придеретесь к тому, что на системе с копилером должен англ язык быть установлен, чтобы код вводить?

int a=0;
++a;

и

int a=0;
a=a+1;

Синтаксически написано по разному с использованием разных операторов, а логически инкремент a

Вообще забавляет как такой казалось бы базовый вопрос насадил на бутылку весь тред
Аноним 12/11/19 Втр 02:30:33 1519072240
>>1519001
Ты можешь за базар пояснить свой?
Почему не эквивалентные, если итог в обоих случаях - инкремент?
Что подразумевает собой семантичексая эквивалентность операций тогда
Аноним 12/11/19 Втр 02:41:55 1519076241
>>1519072
Хотя бы потому что операторы можно переопределить как угодно.
Аноним 12/11/19 Втр 02:47:21 1519079242
zalupa.png (139Кб, 1870x1243)
1870x1243
>>1519072
Давай возьмем пример чуть посложнее, раз уж ты необучаемый.

Посмотри пикрелейтед и пойми, в чем разница между += (чем является append семантически для строки) и var = var + increment;
Аноним 12/11/19 Втр 03:17:10 1519089243
>>1519079
Ты не знаешь разницу между постфиксным и префиксным ++ но уже пытаешься в 8й класс информатики
>чем является append семантически для строки
Если ты не пытаешься залить жиром просто выкатись на хуй отсюда
Аноним 12/11/19 Втр 03:32:21 1519092244
>>1518749
Ну смотри. Есть три выражения
a = b;
c = d;
e = f;
Синтаксис один и тот же. Однако в первом случае у тебя в a будет копия b, потому что его operator= ведет себя так как будто b значение.
Во втором случае у тебя c и d станет одним и тем же, потому что тип d, точнее его оператор=, ведет себя так, как будто d как ссылка (что не обязательно значит что d это ссылка или указатель, это может быть класс с перегруженными операторами и счетчиком ссылок, или вообще что угодно)
В третьем случае у тебя f превратится в e, а само использование f станет опасным. Потому что = в этом случае означает перемещение.

Т.е. написано одно и то же, а делается совсем разное. Что написано - синтаксис, что делается - семантика
>Вот еще вдогонку: "++hui;" и "hui=hui+1;" - это семантически эквивалентные выражения?
Правильный ответ: неизвестно, потому что мы не видим имплементацию этих операторов
Аноним 12/11/19 Втр 06:04:12 1519095245
>>1519035
Нет, ты говоришь про оператор++(инт).
Аноним 12/11/19 Втр 11:33:17 1519213246
>>1518814
>Вы на мамкин вопрос "Почему обосрал трусы" также отвечать будете "Это не трусы, это стринги"?
Да, так и буду делать.
the_pidor
Аноним 12/11/19 Втр 12:12:33 1519231247
Правильно ли я понимаю что язык программирования состоит из программ?
Аноним 12/11/19 Втр 12:21:43 1519235248
>>1518914
У них вакансия С/C++ джун и у них нет блять окружения для сборки проекта из 2 файлов? Зачем они вообще эти языки указали в вакансии, я так понял я вообще первый за всю их историю кто пишет на крестах, иначе я не знаю как обьяснить ситуацию с эксешником.
>>1518822
Тестовое не сложное, есть стена из блоков произвольной формы прямоугольной только, есть набор блоков, задача определить можно ли построить стену из этих блоков или нет, блоки можно ставить горизонтально или вертикально.
Аноним 12/11/19 Втр 12:46:56 1519256249
>>1519235
if 'Mozhno' print 'Yes'
else 'Nelza'

вот и весь твой тест, ну ты и ньюфаня. учись.
Аноним 12/11/19 Втр 12:50:36 1519259250
Аноним 12/11/19 Втр 12:52:35 1519263251
>>1519259
хм, прочитав твой пост мне захотелось написать программу которая бы переводила в машинный код "ты пидор".
Аноним 12/11/19 Втр 21:17:22 1519620252
>>1517305 (OP)
Выручайте анонасы.
>Дано натуральное k. Определить, k-ую цифра последовательности 110100100010000100000, в корой выписаны подряд степени 10.
Нужно делать без циклов и т.д. На просторах интернета нашел такое решение
>Если 8*k - 7 точный квадрат натурального числа, то единичка, иначе нолик.
Источник: Формула суммы последовательных натуральных чисел. Плюс голова.
Не надо только говорить "но ведь источник есть, что понять не можешь?". Нет, не могу, к сожалению.
Сижу битый час, не могу понять откуда эта формула взялась и как она работает. Т.е. прошу вас 1) объяснить смысл формулы 2)показать иное решение без этой формулы, если это возможно ну и как говорилось используя лишь if/else и стандартные функции вроде корня/квадрата
Аноним 12/11/19 Втр 21:58:37 1519663253
>>1519620
> Определить, k-ую цифра последовательности 110100100010000100000, в корой выписаны подряд степени 10.
Ты сначала русский или английский язык выучи, а потом за c++ берись.
Аноним 12/11/19 Втр 22:02:48 1519667254
>>1519663
Как было преподом в файле напечатано, так и скопировал.
Ему не за это платят.
Аноним 13/11/19 Срд 00:15:05 1519770255
Есть вектор. Он заполняется пользователем. После заполнения, юзеру предлагают ваести два числа - х и у. Далее прога сравнивает число х со всеми числами в векторе и вылаёт результат.
Как заставить прогу сравнивать именно Х именно со всеми элементами вектора?
Аноним 13/11/19 Срд 00:18:43 1519771256
>>1519770
int x, y;
std::cin >> x >> y;

for( const auto &v : vector )
{
if( v > x ) { std::cout << v << ' '; }
}
Аноним 13/11/19 Срд 00:21:58 1519773257
Аноним 13/11/19 Срд 00:53:11 1519781258
1568891975293.jpg (85Кб, 2627x3553)
2627x3553
Сап ананасы! Вкатываюсь в cpp и попал мне в руки один нерабочий кусок говна код.

Игра экшон, суть токова. Есть базовый класс world в котором все объекты хранятся в векторе из поинтеров.
std::vector<worldObject> worldObjects;

Добавление объектов происходит таким образом:
void AddObject(worldObject
newObj)
{
worldObjects.push_back(newObj);
}

Дестрой таким:
void RemoveObject(worldObject newObj)
{
auto it = std::find_if(worldObjects.begin(), worldObjects.end(), [&](GameObjPtr in) { return (in==newObj); });
worldObjects.erase(it);
}

Успешно напихав туда все новосозданные объекты


Приложение валится при итерации внутри world
for (auto it : worldObjects)
{
it->Update(
this); // <- ТУТ с ошибкой "Exception thrown: read access violation. it was 0xFFFFFFFFFFFFFFFF."
}


Посему вопрос, насколько вообще разумно использовать std::vector для таких целей(динамический массив указателей)? Что лучше подойдет для таких целей? И чому происходит подобное?

Пикрандом
Аноним 13/11/19 Срд 00:55:39 1519783259
>>1519781
Ухбля как форматирование то распидорасило
Аноним 13/11/19 Срд 01:02:55 1519784260
>>1519781
>насколько вообще разумно использовать std::vector для таких целей(динамический массив указателей)?
Других динамических массивов не завезли. Правда, если тебе нужно именно постоянно добавлять-удалять элементы и похуй на доступ по индексу можешь попробовать std::list. Хотя, если в твоём векторе мало элементов — не надо.
> И чому происходит подобное?
Потому что ты где-то в it->Update() удалил объект и распидорасил итератор по которому шёл, из-за каждой операции вставки/удаления массив полностью переаллоцируется в другом месте и ты пинаешь труп. Гугли iterator invalidation.
Аноним 13/11/19 Срд 01:52:54 1519813261
>>1519784
Он ещё в for берет не по ссылке, из-за чего происходит каст до worldObject, а для него может быть косячный Update.
Хотя у него и добавление/удаление так же сделано.
>>1519781
Погугли как правильно вызывать виртуальные методы наследников.
Аноним 13/11/19 Срд 08:22:04 1519885262
>>1519813
>вызывать методы наследников
reinterpret_cast?
Аноним 13/11/19 Срд 10:28:41 1519927263
>>1519885
Reinterpret_cast в сочетании с виртуальными таблицами может давать очень весёлый результат. Вообще я его только с тривиальными типами использую.
мимопроходил-кун
Аноним 13/11/19 Срд 14:10:39 1520030264
Аноним 13/11/19 Срд 14:36:32 1520057265
>>1517305 (OP)
Что подразумевают под знанием/опытом работы с бустом? Там ведь дохуя библиотек, если я работал с hana или asio, можно писать есть опыт использования буста?
Аноним 13/11/19 Срд 14:39:45 1520060266
>>1520057
Я очень долго думал на эту тему, пришел к выводу что это:
1. Ты можешь собрать и прилинковать буст к твоему проекту
2. Ты не боишься читать документацию с этими адовыми шаблонами
3. Ты хоть примерно знаешь список библиотек в бусте и зачем они нужны.

Аноним 13/11/19 Срд 15:28:41 1520112267
Блять!
Как настроить этот ебучий Qt creator? Какого хуя, когда я создаю консольное приложение с++ и собственно ввожу код, мне ошибками подсвечивается почти каждая строка? Мб я криворукий и что-то не поставил? Мб стоит накатить Eclipse?
Аноним 13/11/19 Срд 16:08:15 1520133268
>>1520112
Для консоли достаточно крестоблокнота.
Аноним 13/11/19 Срд 16:21:00 1520141269
>>1520133
Проверял консольное приложение, но мне Qt нужен для более масштабных вещей.
Аноним 13/11/19 Срд 16:56:03 1520174270
>>1520141
Ну тогда давай какую ошибку высирает, скрины идеехи, че как маленький.
Аноним 13/11/19 Срд 17:32:29 1520212271
>>1520060
>Ты можешь собрать и прилинковать буст к твоему проекту
Хедер-онли хану то. Ну а так наверное так и есть, странно что компании не указывают какие конкретно либы из буста они используют, один раз только видел что нужен опыт с асио, остальным будто похуй. С Qt кстати аналогичная ситуация, может они там эмбед на кьюбасе ебошат, чем им мои знания виджетов помогут я не знаю.
Аноним 13/11/19 Срд 17:33:12 1520215272
>>1520141
Использовать Qt ты можешь вообще в любой иде, просто создай в креаторе цмейк проект и открывай хоть студией, хоть цлионом, хоть эклипсом.
Аноним 13/11/19 Срд 17:36:26 1520220273
>>1520060
>1. Ты можешь собрать и прилинковать буст к твоему проекту
find_package(Boost REQUIRED)
include_derictories(${Boost_INCLUDE_DIR})
target_link_libraries(huitaname ${Boost_LIBRARIES})

Или надо как мужыг с зовода, руками в швиндовый прожект вижуал говностудии каждый путь добавить?
Аноним 13/11/19 Срд 17:48:06 1520239274
>>1520220
Кто бы знал, ей богу.

>>1520212
> Хана
> Продакшен
Где-то есть такое вообще?

>>1520112
Студия + QT VS Addin, не пердолься.
Аноним 13/11/19 Срд 17:49:07 1520241275
ненавижу блядь qt creator глючное тормозное говно но ничего лучше не завезли на линукс с поддержкой qt дiзайнера
Аноним 13/11/19 Срд 17:50:02 1520243276
>>1520239
>Хана
>> Продакшен
А что не так с ханой? Выглядит интересно, гетерогенные контейнеры, компайл-тайм алгоритмы, одни профиты же.
Аноним 13/11/19 Срд 18:12:10 1520300277
Аноним 13/11/19 Срд 18:19:14 1520310278
>>1520243
Хана это круто с академической точки зрения, и я бы с удовольствием посмотрел, какие проблемы в проде ей решают. Не более того.
Аноним 13/11/19 Срд 18:48:07 1520351279
image.png (31Кб, 868x187)
868x187
Аноним 13/11/19 Срд 19:18:40 1520363280
Аноним 13/11/19 Срд 20:08:24 1520392281
>>1520351
накати mingw тулчейн из инсталлера кутипараши, и используй его
Аноним 13/11/19 Срд 20:15:04 1520394282

>>1520241
Но ведь Designer есть отдельным приложением
Аноним 13/11/19 Срд 20:19:13 1520397283
>>1520394
ладно, а чтобы собрать можно было c qt?
Аноним 13/11/19 Срд 20:23:13 1520403284
Аноним 13/11/19 Срд 20:29:38 1520411285
Аноним 13/11/19 Срд 20:45:00 1520425286
>>1520411
Назови хоть 1 IDE не поддерживающую cmake, додик блядь.
Аноним 13/11/19 Срд 21:41:49 1520468287
>>1519235
И как такую задачу решить? Перебором только?
Аноним 13/11/19 Срд 21:47:17 1520470288
>>1520220

>Или надо как мужыг с зовода, руками в швиндовый прожект вижуал говностудии каждый путь добавить?

Для домашних поделок есть vcpkg (nuget с крестами не очень дружит), а в ентерпрайзе 100500 версий прописывается через props файлы
Аноним 13/11/19 Срд 21:51:02 1520473289
>>1520470
Дополню сам себя
Сам бы хотел vcpkg и в проде использовать, нотам пока как то непросто сделать несколько версий одной либы и хз как это всё не только на рабочей станции держать но и на билд сервере.
Аноним 13/11/19 Срд 21:51:49 1520475290
>>1520473
Доклад же есть с CPP Russia про вцпкг
Аноним 13/11/19 Срд 23:11:07 1520510291
Сап. Начал читать книгу про параллельное программирование (из шапки, не помню автора), назрел вопрос. В задаче, например, вектор 1000 чисел умножить на скаляр, или, хуй знает, любую другую функцию сделать, есть несколько вариантов решения.
Первый, в c++11, это простой пул тредов, типа на 4 ядра положить вычисление по 250 элементов. Второй - использовать openmp, там параллельнуть for. Третий, маст хев на мой взгляд, c++17 и for_each с execution_policy, но 17 кресты есть не на всех специфических компиляторах.
Что скажешь, анон, какой подход лучше?
Аноним 13/11/19 Срд 23:13:31 1520515292
>>1520112
Это clang форматтер или типа того парсит твое говно на лету, где-то в настройках среды настраивается
14/11/19 Чтв 00:23:11 1520540293
>>1520510
>чисел умножить на скаляр, или, хуй знает, любую другую функцию сделать, есть несколько вариантов решения.
Для обучения реализуй всё руками, в проде если есть возможность используй стандартные средства а не костыли.
Кстати интересная хуйня, что даже на 16 ядрях ускорение будет где-то в 4 раза, а не в 16, связано это с кэшами ядер, сеньор-помидор вообще говорил что вообще ускорения не должно быть
Аноним 14/11/19 Чтв 00:29:38 1520545294
14/11/19 Чтв 00:30:55 1520546295
>>1520545
>й помидор
Я это сам тестил с разными флагами компиля и он охуевал с того что вообще какая-то оптимизация идёт
14/11/19 Чтв 00:57:55 1520561296
>>1520546
Вот https://pastebin.com/F6X8e6zH даже отрыл пример и еще раз затестил,
на 8 ядрах
>однопоток 390мс
>многопоток 83мс
на 3 ядрах ситуация аналогичная. Если кому интересно, вот как это обьяснил тот самый сеньор
Для умных
>Короче говоря весь вопрос в том, какое отношение сложности задачи в тактах ЦПУ и необходимого потока обмена с оперативной памятью
>Собственно в этом примере это между 3 и 4 на вашем железе на 64-битных машинных словах
>Если компилятор таки достанет SIMD-инструкции, будет точно не больше 2
Для дебилов
>Ну давай как метафору о том, что такое bottleneck - представь, что у тебя 8 работяг лопатами раскидывают асфальт на дороге, который им подвозят общим самосвалом
>Если 4 работяги достаточно проворны, остальным просто не остается асфальта
>Более того, есть достаточно неприятное правило о том, что этот bottleneck при адекватной реализации почти всегда в памяти, и ускоряться будет если либо большая сложность вычисления на одном элементе памяти (в том числе потому, что ЦПУ не справляется с заказом асфальта заранее)
(это касается только типовых 86-64)
Аноним 14/11/19 Чтв 02:01:35 1520574297
>>1520510
На 1000 чисел у тебя оверхед от запуска тредов будет больше, чем полезная работа. Лучше SIMD использовать, благо сейчас и в GCC и в clang платформонезависимые векторы есть, а уж SSE на простых циклах из коробки должно идти.
Аноним 14/11/19 Чтв 02:36:13 1520580298
>>1520397
По-твоему Qt только в QtCreator компилируется? Добавил инклюды, прилинковал библиотеки и готово
Аноним 14/11/19 Чтв 02:47:05 1520582299
>>1520580
Еще moc и uic надо запустить. Вообще мне обычного мейка для небольших проектов с qt хватает.
Аноним 14/11/19 Чтв 03:20:49 1520589300
Я правильно понимаю, что если я делаю шаблонный класс, то ни о каких наследниках/интерфейсах и прочей динамической лабуды быть не может? Строго, либо статический, либо динамический полиморфизм?
Аноним 14/11/19 Чтв 04:21:26 1520598301
Возник у меня вопрос системного характера, поэтому иду с ним сюда, в обитель самого высокоуровневого из низкоуровневых

Кто-нибудь из местных может рассказать, как работает scheduler/cron в windows/linux соответственно. Интересует минимальный принцип работы

Единственное мое предположение (при моем уровне знаний) состоит в том, что программа просто в цикле проверяет, не соответствует ли системное время запланированному и если оно соответствует, то выполняет задачу.

Но этого не может быть, потому что не может быть никогда, потому что тогда программа сжирала бы всё процессорное время холостым кручением в бесконечном цикле и мы нихуя не смогли бы сделать.

Тогда вопрос, как же это все-таки работает?
Схожий вопрос: как работает что-то вроде setTimeout() в JavaScript

Очень интересует именно как это реализовано, буду счастлив если кто-то подскажет.
Аноним 14/11/19 Чтв 06:29:20 1520620302
Требуется написать программу, которая считывает из входного файла числа и записывает их в массив, с последующей обработкой. Беда в том, что во входном файле могут быть не только числа, но и текст.

Подскажите хороший способ проверки типа данных при считывании, желательно с наглядным примером.
Аноним 14/11/19 Чтв 08:04:20 1520634303
>>1520589
std::ios_base смеётся над тобой в голос. И не только он.
Аноним 14/11/19 Чтв 08:29:45 1520649304
>>1520620
>хороший способ проверки
регуляркой
Аноним 14/11/19 Чтв 08:58:03 1520652305
>>1520649
Ты гвозди тоже микроскопом забиваешь?

>>1520620
Почитай подробнее про std::cin. Если ты попытаешься считать строку в инт, то это можно увидеть и обработать.
Аноним 14/11/19 Чтв 09:18:17 1520655306
Почему std::thread создаётся запущенным? Как создать поток, который сразу после конструктора будет спящим, пока я его явно не запущу - так чтобы компьютер вовсе на него не переключался для проверки мьютекса в начале потока? beginthread же позволяет создать спящий поток вроде бы.
Аноним 14/11/19 Чтв 11:11:22 1520713307
>>1520598
Используется планировщик в ядре
Аноним 14/11/19 Чтв 11:22:41 1520732308
>>1520655
я бы обернул в отдельный класс, который принимает лямбду в конструкторе, а отдельным методом содает std::thread, но возможно достаточно и указателей (толковых) на std::thread для твоей цели
Аноним 14/11/19 Чтв 11:29:21 1520745309
>>1520598
Они же запускаются раз в минуту. Делаешь, если упрощенно, sleep(60000) и все.
Аноним 14/11/19 Чтв 11:43:34 1520772310
>>1520652
Я пытаюсь считать вроде
ifstream fin;
float array[z][z]
fin.open("in.txt");
fin>>array[x][y];

Я знаю, что можно отследить мусор по значениям на манер -0 или -.002301, но думал, что можно как-то поизящнее это сделать просто определив тип содержимого.
Аноним 14/11/19 Чтв 13:00:53 1520871311
Аноним 14/11/19 Чтв 13:11:30 1520876312
Аноним 14/11/19 Чтв 13:20:49 1520888313
>>1520655
>Почему std::thread создаётся запущенным?
Дефолтный - нет.
Аноним 14/11/19 Чтв 13:25:26 1520894314
>>1520871
Осторожнее с этой хуйней. Она от локали зависит, и будет брать разделитель дробной части из локали. То есть если в тексте "3.14", а в локали разделитель запятая, то будет ошибка конвертирования.
Аноним 14/11/19 Чтв 13:35:24 1520902315
>>1520772
Да ёпт.
Смотри состояние fin после считывания. Если ок, то ты в во float считал корректное значение до разделителя, если нет - то мог что-то записать, но до разделителя осталось ещё что-то и в целом считывание не прошло.
Аноним 14/11/19 Чтв 14:23:00 1520951316
S91114-124207.jpg (146Кб, 720x1440)
720x1440
Сап pr.
В общем, есть код. При вводе '|' программа закрывается. Как сделать так, чтобы при вводе '|' (или другого символа) программа предлагала ввести значения c и у? И второй вопрос, как сравнить введённое значение с последним элементом вектора (после сортировки по возрастанию)?
Типы данных и всё такое уже менял - не работает. Перед return ставить else - тоже.
Пробовал:
if (x != '/')
while(cin >> x)
else
cin >> y;
cin >> z;
Но это тоже не работоспособно.
Где я обосрался?
Аноним 14/11/19 Чтв 14:27:48 1520957317
https://www.youtube.com/watch?v=G5zCGY0tkq8

Бьерн говорит, что Си не нужен даже в эмбеддеде. Всех шизанов ака сектантов ака линуксоблядей и прочих пидоров попрошу выйти из треда.
Аноним 14/11/19 Чтв 14:33:16 1520971318
>>1520951
Тебе к тому же анону, который выше не может отличить строку от числа при считывании.

Так считываешь char в double, поток ввода помечается ошибкой и этот double пустой, ты пытаешься его писать в вектор.

Либо считывай в char и, если это число, перегоняй в double, либо на каждом шаге спрашивай, продолжать ли ввод, либо прерывай поток через ctrl-Z(или ctrl-C, от ОС зависит).
Аноним 14/11/19 Чтв 14:44:54 1520998319
S91114-144326.jpg (116Кб, 720x1440)
720x1440
>>1520971
Да это хуйня, мне надо при вводе / остановить поток, а компилятор расценивает это как остановку работы программы
Аноним 14/11/19 Чтв 14:52:16 1521011320
>>1520957
Конечно не нужно, для кофеварок Oak сделали еще в 1991 году.
Аноним 14/11/19 Чтв 16:01:18 1521062321
>>1520998
А, так ты ж написал, что у тебя однократно будет выводиться только что введённый массив.
Хочешь много раз заполнять/выводить массив - пихай цикл ещё сверху.
Аноним 14/11/19 Чтв 16:20:40 1521069322
>>1521062
Попробую.
Я пишу вот что: пользователь вводит массив чисел. Потом этот массив выводится в консоль. Затем юзер вводит два целых числа и программа проверяет больше они или меньше всех чисел, которые в массиве. Типа если больше, то выводится "число х больше всех ранее введённых чисел" и наоборот, если меньше.
Собственно второй вопрос вытекает из предыдущего абзаца: как сравнить вводимое число с v.end(), если я не знаю, каким по счёту будет конечное? С самым маленьким всё просто v[0]
Аноним 14/11/19 Чтв 16:36:59 1521083323
>>1520957
я смотрел это видео целиком
он об этом не говорил

Аноним 14/11/19 Чтв 16:45:51 1521087324
>>1520957
>>1521083
а вообще страуструп продолжает бормотать мантры которые он еще в "дизайне и эволюции с++" писал: а именно все завязано на статической системе типов, на возможности определять пользовательские системы типов, определять у них операторы..
на возможности задавать отношения между типами, те наследование
о том что связка конструктор-деструктор оказалось очень мощной, позволившей реализовать абстакции, заменяющие реалиацию gc или посчета ссылок в самом языке, вынести эти абстракции на уровень библиотек и исходного кода..
и, касетельно к тому видео, он говорит про то что абстрагирование в с++ "бесплатно", класс с реализованными невиртуальными членами-функциями ничем не отличается по производительности от того если ты бы реализовал структуру со свободными функциями, обрабатывающими эту структуру..
и, как всегда, он начал бормотать про то что реализация виртуальных функций сделала максимально производительной, что что если вы руками будете это делать (как это делают в си до сих пор), то будет так же по скорости.. опять же говорил что никто вас в языке не заставляет все члены-функции делать виртуальными, а только необходимые..
опять же бормотал про то что реализация обобщенного программирования в языке (в отличие от тех же явы или шарпа) тоже абсолютно бесплатна с точки зрения производительности..

Аноним 14/11/19 Чтв 17:08:06 1521095325
>>1520957
>Zero-Overhead
>платишь только за то, что пользуешь
Замануха.
Формально-то принцип соблюдается, но зачастую весьма затруднительно сказать, что ты на самом деле используешь. А уж когда дело дойдет до расплаты, то торговаться никто не с тобой не станет - заплатишь ссполна, сколько конпелятор пожелает.
Аноним 14/11/19 Чтв 17:13:33 1521100326
>>1520713
динамический полиморфизм - это использование виртуальных функций, а не наследование
статический полиморфизм - это когда ты используешь шаблонные функции (в которых происходит вывод аргументов шаблона), а не когда ты определяешь шаблонный класс

Аноним 14/11/19 Чтв 17:14:24 1521101327
>>1520589
динамический полиморфизм - это использование виртуальных функций, а не наследование
статический полиморфизм - это когда ты используешь шаблонные функции (в которых происходит вывод аргументов шаблона), а не когда ты определяешь шаблонный класс
Аноним 14/11/19 Чтв 17:29:09 1521111328
>>1521095
>что ты на самом деле используешь
ты всегда сможешь увидеть результат кодогенерации - препроцессированный код, код после раскрытия шаблонов, ассемблерный листинг объектного модуля, соответствующими средставами

Аноним 14/11/19 Чтв 17:50:46 1521124329
>>1521111
>ты всегда можешь написать бенчмарк в джаве, померить футпринт или увидеть ir код соответствующими средствами
Аноним 14/11/19 Чтв 18:26:20 1521156330
Так всё же, чем плох for_each() с параллельностью? Хорошо же компилятору отдать выбор стратегии параллеливания
Аноним 14/11/19 Чтв 18:29:01 1521159331
А как занопать достаточный промежуток времени без цикла?
asm("nop;") работает, но for (int i=100000;i>0;i--) asm("nop;") даёт не тот же самый результат (и другую задержку), что и for (int i=50000;i>0;i--) asm("nop;nop;"), а мне это выполнение цикла вовсе не нужно.
Я конечно могу забить, оставив 64 последовательных нопа в асм-цикле, но может быть есть более красивая и выразительная конструкция?
Аноним 14/11/19 Чтв 18:37:43 1521167332
>>1521159
Если у тебя платформа линукс, то там есть есть функция nanosleep.
Аноним 14/11/19 Чтв 18:57:47 1521181333
>>1521159
зачем так сложно?
Есть std::this_thread::sleep_for же
Аноним 14/11/19 Чтв 19:11:54 1521194334
>>1521181
Оно вроде как выключает поток и передаёт нить выполнения другим, а на виндоусе это подходит только если интервал в несколько миллисекунд. Я же не просто так бесконечный цикл прикручиваю.
Аноним 14/11/19 Чтв 19:16:37 1521203335
>>1521194
ну окей, если у тебя известно количество нопов - можешь ебануть какую-нить адову кодогенерацию миллиарда нопов через BOOST_PP_REPEAT. Но бля
Аноним 14/11/19 Чтв 19:56:05 1521228336
>>1521069
Ну ты же проходишься по массиву для его вывода. Пройдись точно так же для введенных x, y.
И да, cin >> x, x != '/' это не то же самое, что cin >> x && x != '/'.
Аноним 14/11/19 Чтв 21:45:46 1521302337
>>1520561
>>Короче говоря весь вопрос в том, какое отношение сложности задачи в тактах ЦПУ и необходимого потока обмена с оперативной памятью
Другими словами, если слишком быстро обрабатывать данные, то твоя задача станет упрётся в пропускную способность памяти, а не скорость процессора. Это... логично, можешь даже сам посчитать. Взять какой-нибудь IACA, посмотреть сколько тактов уходит на одну итерацию и сколько за одну итерацию ты обрабатываешь данных, посмотреть на свою память и в конце концов посчитать теоретический максимум.

Но когда у тебя обработка относительно весомая и ты именно cpu-bound, вот тут треды-то и нужны будут. Просто твой комментарий с "связано это с кэшами ядер" вызвал у меня некоторые сомнения.

Алсо, создание/уничтожение тредов тяжёлая операция, лучше считай время внутри функции.
Аноним 14/11/19 Чтв 22:08:01 1521320338
>>1521095
> но зачастую весьма затруднительно сказать, что ты на самом деле используешь
Лол, если ты ньюфаг вкатывальщик, то да.
Аноним 14/11/19 Чтв 22:09:59 1521322339
>>1521101
Спасибо, что разъяснил и так понятные мне вещи, но вопрос был совершенно иной. Читай в следующий раз глазами, а не жопой.
14/11/19 Чтв 22:30:09 1521328340
>>1521302
>Просто твой комментарий с "связано это с кэшами ядер" вызвал у меня некоторые сомнения.
Да я нуфаг, пытался кратко передать смысл без глубокого понимания темы, виноват.
Аноним 14/11/19 Чтв 22:48:57 1521340341
>>1521322
Да нет, это ты хуй пойми чем читаешь, тебе анон все правильно ответил.
Если бы ты ещё вникал и понимал, что есть шаблонный класс, то не было бы у тебя этого вопроса.
Аноним 14/11/19 Чтв 23:43:44 1521371342
А в си++ нельзя чтобы 2 разных класса содержали поля с указателями друг на друга?
Ну, например:
class Road{Car r;};
class Car{Road
r;};
int main(){
Road road; Car car;
road.r=car; car.r=road;
}
Верно-ли что только изменением кода классов эту программу пофиксить не получится?
Аноним 14/11/19 Чтв 23:45:37 1521373343
>>1521371
Вечно забываю что сраный движок любит жрать \* (звездочки)
Ну, надеюсь по контексту понятно где они должны быть.
Аноним 14/11/19 Чтв 23:50:15 1521376344
Аноним 14/11/19 Чтв 23:50:49 1521377345
>>1521371
Указатели & ссылки - можно.

class biba;
class boba {
biba<ЗВЕЗДА> b;
}

class biba {
...
}
Аноним 14/11/19 Чтв 23:50:53 1521378346
>>1521371
Почитай про forward declaration.
Но вообще такие циклические ссылки обычно до добра не доводят, так что будь аккуратнее с ними.
Аноним 14/11/19 Чтв 23:58:54 1521384347
15722022538510.jpg (724Кб, 1000x1200)
1000x1200
Аноним 15/11/19 Птн 03:58:14 1521414348
>>1521378
Поэтому придумали weak_ptr
Аноним 15/11/19 Птн 04:19:17 1521417349
cdc.jpg (65Кб, 577x537)
577x537
>>1517543 у линя концепция совсем другая, тут нет КОМБАЙНОВ, вроде адоба и прочих раздутых утоплеников. Каждая программулина делает только одну задачу. Функционал больших прог достигается скручиванием этих мелких прог в скриптах. Да сложно, да непривычно и придётся учится пользоваться ПеКа просто заново. НО! функционал такой что нахуй эту ёбаную Шинду с дебилами живущими на ней, а уж темболее яблопидоров и андроидодегенератов.
Алсо, для всяких дизайнов и музычки софта хватает, ты просто не искал нихуя. Ну и да, в крайних случаях вайн вам поможет.
БЕГИТЕ С МЕЛКОМЯГКОЙ ПОМОЙКИ!!!
я прост сам начал недавно сетями заниматься, как бы вам сказать, плохие вещи реально есть, их много. Пиздец с безопасностью, ГЛОБАЛЕН
Аноним 15/11/19 Птн 04:29:55 1521418350
>>1521417
Очередной шизик за струей мочи в лицо подьехал
Аноним 15/11/19 Птн 08:34:38 1521450351
>>1521340
Я ночью уставший писал. Для жопочтецов еще раз повторяю вопрос:
> Строго, либо статический, либо динамический полиморфизм?
Аноним 15/11/19 Птн 08:42:15 1521454352
>>1521450
Нет, пиши как хочешь. Просто в этом обычно мало смысла, ведь каждый инстанс шаблона будет иметь свою иерархию.
Аноним 15/11/19 Птн 09:53:47 1521464353
>>1517567
да шел бы ты нахуй умник
Аноним 15/11/19 Птн 09:56:46 1521465354
>>1521417
> для всяких дизайнов и музычки софта хватает

Нету нихуя. Для данного сегмента задач линь не пригоден.
Аноним 15/11/19 Птн 10:01:46 1521466355
>>1521417
>андроидодегенератов
но ведь андроид это тот же линукс, только покоцаный...
Аноним 15/11/19 Птн 10:03:40 1521467356
>>1521320
И все-же это свойство языка, а не заговор ньюфагов-вкатывальщиков.
Аноним 15/11/19 Птн 10:59:03 1521489357
Кто-нибудь может может дать ссылки на реальные опенсурс проекты, где все сделано правильно по гайдлайнам итд, по которым ньюфаг может составить хоть какое-то представление о реальной разработке.
15/11/19 Птн 11:12:14 1521495358
вы бабу то зажимали хоть раз
Аноним 15/11/19 Птн 11:29:16 1521506359
>>1521450
Нет, ты выебываешься и не хочешь погуглить немного.
Тебе анон верно ответил, для каждого инстанса твоего шаблонного класса сгенерится свой обычный плюсовый код как для обычного класса. А кто мешает тебе в обычном классе использовать динамический полиморфизм?
Но зачем - это другой вопрос.
Аноним 15/11/19 Птн 11:29:20 1521507360
>>1521495
Это крестотред, дурачок, у нас уже внучки есть.
Аноним 15/11/19 Птн 11:44:59 1521533361
>>1521489
Ты хочешь абстрактный проект в вакууме чтобы получить картину реальной разработки? Ебанутый?
В любом проекте будут свои костыли или ебанутая архитектура. Только не смей залазить в какие-нибудь гигантские проекты или проекты от крупных компанией - там полный пиздец, не найдёшь того, что ищешь.
Аноним 15/11/19 Птн 13:14:28 1521626362
>>1521533
> Ты хочешь абстрактный проект
> ссылки на реальные опенсурс проекты
> В любом проекте будут свои костыли или ебанутая архитектура
> где все сделано правильно по гайдлайнам
Я спросил про реальные проекты с правильной архитектурой еще скажи что таких нет, а ты мне про велосипеды пишешь.
Аноним 15/11/19 Птн 14:59:18 1521696363
>>1517305 (OP)
Блять шесть лет, ебаных шесть лет потратил на эти кресты и знаете что. За это время не смогли высрать ни одной вменяемой IDE, которая бы не лагала и предоставляла приемлимый автокомплит и реафакторинг, просто нет.
Блять, за что мне такое наказание.
Аноним 15/11/19 Птн 15:02:58 1521700364
Аноним 15/11/19 Птн 15:03:53 1521702365
Аноним 15/11/19 Птн 15:15:45 1521710366
>>1521696
Проблема в тебе?

Мимо счастлив на Студии + Решарпере
Аноним 15/11/19 Птн 15:23:30 1521716367
>>1521710
>>1521700
Пробовал проект больше 200 строк открыть или шаблоны поделать, эта хуета от JB начинает как не в себя жрать все ресурсы. Проблема вот в этом, фичи есть, работает медленно пиздос. Смузиебский QtCreator работает кое-как (много левых ошибок).
Аноним 15/11/19 Птн 15:24:24 1521717368
>>1520998
Перед sort пропиши
cin.clear()
cin.ignore(1000, '\n')
И будет тебе счастье
Аноним 15/11/19 Птн 15:26:53 1521721369
>>1521716
Ну, может ты на каком-то старье работаешь, я таких проблем не испытывал с поделиями от JetBrains. И вообще, они на Жабе написаны, так что все логично.
Вот что реально хуево написано, это VScode, типа простой и нетребовательный, а в реале написан через жопу, и на Линуксе при подсоединении через ssh невозможно работать, все лагает. Ненавижу таких криворуких уебанов.
Аноним 15/11/19 Птн 15:35:54 1521728370
>>1521721
>Вот что реально хуево написано, это VScode, типа простой и нетребовательный, а в реале написан через жопу, и на Линуксе при подсоединении через ssh невозможно работать, все лагает. Ненавижу таких криворуких уебанов.

Вот тут согласен, а еще у меня под линупсом от него глаза вытекают, хуй знает почему.
Аноним 15/11/19 Птн 15:40:54 1521731371
>>1521728
Луникс не умеет в шрифты
Аноним 15/11/19 Птн 15:47:22 1521734372
>>1521731
Умел еще до твоего рождения, пихаешь хоть весь Adobe Font Folio в ~/.fonts и настраиваешь свой Consolas с Segoe UI в PyCharm, и суешь Arno Pro и Helvetica Neue в XeLaTeX, и урчишь довольно.
Аноним 15/11/19 Птн 15:51:39 1521735373
Аноним 15/11/19 Птн 15:54:06 1521738374
>>1521735
В чем состоит пердолинг, дебилушка?
Раньше тебе может и нужно было поебаться с настройкой антиалиазинга и прочего ануслизионга, сейчас ты тупо кидаешь шрифты в папку, даже устанавливать не надо, как в мастдае.
Или ты хочешь, чтобы тебе коммерческие шрифты вместе в бесплатной бубунтой поставлялись? В тот ли попен-сорс ты зашел, петушок?
Аноним 15/11/19 Птн 15:55:55 1521741375
>>1521738
я не вижу смысла тратить время на это красноглазое говно, сорян. У меня из коробки все работает, мне не надо выебываться КАКОЙ Я КРУТОЙ ЛУНИКСОИД ПРОЕБЫВАЮ ВРЕМЯ НА ХУЙНЮ.
Аноним 15/11/19 Птн 15:57:21 1521742376
>>1521741
К чему ты это написал вообще? Всем похуй на тебя и на твой быдлоэкспириенс. Речь шла о технологии.
Аноним 15/11/19 Птн 15:58:06 1521743377
Аноним 15/11/19 Птн 17:42:42 1521854378
>>1521731
>Луникс не умеет в шрифты
в линуксе ты можешь выставить dpi в системе, равным ppi твоего монитора
после этого взять растровый шрифт, это будет terminus, и использовать его в редакторах
это позволит буквам гореть пиксель в пиксель

Аноним 15/11/19 Птн 17:54:16 1521869379
>>1521854
Но луникс всё равно не умеет в шрифты
Аноним 15/11/19 Птн 18:03:30 1521887380
>>1521489
например, реализация стандартной библиотеки плюсов в проекте clang:
https://github.com/llvm/llvm-project/tree/master/libcxx
особенно то что появилось в 17м стандарте, а именно реализацию типа string_view, реализацию std::filesystem, типов any, variant и optional..

если сидишь на компиляторе майрософт, то можешь глянуть и их реализацию стандартной библиотеки, но она постарше, с другой стороны, код для новых возможностей библиотеки так же свеженаписанный..

Аноним 15/11/19 Птн 19:20:58 1521952381
[code]
class MyClass
{
public:
static constexpr int def = -1;
MyClass()
: m_val(def) {}
private:
m_val;
};
[/code]

Так можно делать? Порядок инициализации не нарушен? А если перенести m_val в самый вверх?
Аноним 15/11/19 Птн 19:51:34 1521992382
Вектор при изменении своих размеров вызывает деструкторы для элементов, что испортило мне все элементы.
Понятно для чего так сделано - но я использую деструктор немного не по назначению. Элементы - структуры, чтобы избежать вызова деструкторов я в структуру добавил соответствующий флаг.

Вектор при перемещении элементов может использовать конструктор копирования/перемещения и два соответствующих оператора присваивания. Как правильно сделать, чтобы он скопировал все поля структуры, но при этом ещё и поставил соответствующий флаг?
Я оставил operator=(&) =default (чтобы не копировать весь список полей вручную), и написал operator=(&&) с установкой нужного флага. Тем не менее вектор не компилируется, ему не хватает конструктора копирования.


Есть полная статья про перегрузки операторов?
Для пример, есть перегрузка оператора сложения. Я могу поставить во всех местах, значения, (константные) ссылки или &&-ссылки. В чём разница между этими вариантами и какой смысл ставить ссылки, если даже без них не вызывются конструкторы или операторы присваивания? Особенно интересно про операторы присваивания и конструкторы. По идее пустой конструктор и оператор присваивания почти эквивалентны move-конструктору, но вектор их не кушает, например.
Почему оно не жрёт "T static operator+(T a, T b)", хотя это наиболее интуитивный вид перегрузки сложения, например?
Аноним 15/11/19 Птн 19:57:40 1522003383
15/11/19 Птн 20:03:08 1522006384
>>1521992
>но я использую деструктор немного не по назначению
Вот и ответ на все твои вопросы. Не выёбывайся, а пиши нормально.
Аноним 15/11/19 Птн 20:14:34 1522017385
>>1522006
Не на все.

Я сейчас создал класс где есть все возможные операторы присваивания и конструкторы. И вектор при изменении своих размеров использует T(const T&) несмотря на наличие move-операторов. Для чего?
А если я его удаляю, он использует T(T&&). Не могу сказать, что такое поведение интуитивно понятно. Мне казалось он должен пробовать в очерёдности T(const T&&), T(T&&), T(const T&), T(T&) - так вроде как будет эффективнее в плане быстродействия, а он берёт сначала 3 вариант, а затем 2.
Аноним 15/11/19 Птн 20:27:08 1522037386
>>1522017
ты догадался move оператор и конструктор помаркать noexcept'ом?
Это необходимое требование
Аноним 15/11/19 Птн 20:46:47 1522052387
>>1522037
Нет конечно. Спасибо, это помогло - теперь верно и предсказуемо работает как мой идеалогически неверный код, так и тестовый пример.
Интересно, каким образом я должен был догадаться про noexcept. Избегаю исключений во всех случаях, больная концепция. Должно быть наоборот - по умолчанию вообще всё noexcept, и только в случае если что-то кидает исключения - только тогда на него надо явно прописать "yesexcept".
Аноним 15/11/19 Птн 20:59:59 1522066388
>>1522052
это современные гайдлайны, что мув ктор\оператор и деструктор должны быть ноэксепт. Решарпер на это ругается, например
Аноним 15/11/19 Птн 21:35:32 1522103389
Имеет ли смысл представлять матрицы как одномерные массивы? Так быстрее/проще?
15/11/19 Птн 21:57:58 1522121390
>>1522103
Так данные в памяти лежат ровнее.
А быстрее/медленнее это уже бенчмарк ответит.
Аноним 15/11/19 Птн 22:02:46 1522123391
>>1522103
Если ты сравниваешь с c-style двумерным массивами - то они оба хранятся в одном куске памяти.
А если с vector<vector<type>> - то у него каждая строка хранится в своем куске памяти, из-за чего доступ будет медленнее при загрузке в кэш процессора, для понимания почитай подробнее, хоть того же Таненбаума.

А так, если у тебя не невероятные объемы данных и делаешь для себя - то можешь вектор векторов использовать, будет удобнее.
Аноним 15/11/19 Птн 22:07:31 1522125392
>>1522123
Медленнее в том случае, когда будешь последовательно проходиться по всем элементам и менять строку.
Но вряд ли кто-то из нас это заметит. Вот нвидия-кун мб и должен о таком париться, думаю.
Аноним 15/11/19 Птн 22:16:25 1522131393
А я напоминаю
Аноним 15/11/19 Птн 22:16:43 1522132394
Аноним 15/11/19 Птн 22:53:02 1522152395
>>1522132
о, сортировочки
люблю сортировочки
Аноним 15/11/19 Птн 23:17:12 1522163396
>>1522052
>Должно быть наоборот
Ньюфага забыли спросить, лол.
То-то в жабе в каждой функции нужно определять ее throws.
Аноним 15/11/19 Птн 23:32:41 1522170397
>>1522163
Я просто сишист. И джаву тоже не одобряю.
Аноним 15/11/19 Птн 23:40:11 1522172398
А что конкретно пишут на крестах в основной массе? Кроме серьезного геймдева, который есть только на западе и операционок.
Аноним 15/11/19 Птн 23:46:56 1522176399
>>1522172
Машинлёрнинг, десктоп, мультимедиа ещё.
Аноним 15/11/19 Птн 23:51:57 1522180400
Аноним 15/11/19 Птн 23:56:58 1522182401
>>1522180
Как определить хуевость туториала?
1. Если видишь слово Eclipse - то он гарантированно говно.
Аноним 16/11/19 Суб 00:13:19 1522195402
>>1522132
Ебаный рот этатваказино блядь.
В былые времена вся суть поместилась бы на полторы странички салфетки.
Нет блядь, хотим жрать говно, хотим 4к видио на полтора часа.

Уёбки блядь.
Аноним 16/11/19 Суб 00:19:19 1522202403
>>1522195
Так-то да, но это тупо видео с конференции, хуле ты хотел.
Аноним 16/11/19 Суб 00:30:37 1522207404
>>1522202
А хулi ты ну тот "ты", который постил видос хотел, когда постил, а?
Впечатлил тебя видос, ну напиши, блядь, хотя бы чем, почему.
Осилил весь видос? - запили краткий конспект.

А так, тупо видосиками перекидываться - этож шитпостинг, нахуй, все равно что сисечки-писечки сюда из вконтактика репостить.

Кто, нахуй блядь, в здравом уме, полтора часа хуй пойми заведомо чего будет смотреть вообще?
Аноним 16/11/19 Суб 00:43:33 1522216405
Аноним 16/11/19 Суб 00:56:36 1522239406
>>1522207
Ну тащемта видос запостил для широких каловых масс в лице >>1522123

Суть вкратце: даже если логически после некоторых правок код "должен" начать работать быстрее, то это не всегда так, так что нужно писать бенчмарки.
Аноним 16/11/19 Суб 00:58:01 1522243407
>>1522239
Блядь, промахнулся
широкие каловые массы - это сюда >>1522103
Аноним 16/11/19 Суб 01:01:18 1522251408
>>1522207
Тут есть такой момент, что зумеры только видосы умеют воспринимать нынче.
Реально, студенты тупо смотрят видосы по любой теме, текст читать неспособны.
Аноним 16/11/19 Суб 01:19:13 1522274409
>>1522180
>MinGW
Сука какой же это ебаный ад нахуй
Аноним 16/11/19 Суб 02:05:04 1522323410
>>1522239
че?
александреску умный мужик, но тут он какой то трешовый талк запилил
нафиг надо хардкордить стандартный std::sort? внутри у него все нормально - быстрая сортировка (с оптимизацией худшего случая, между прочим), плюс щас в стандарте есть stable_sort, partitional_sort, sort_heap для частных случаев
насколько я понял, он пытается минимизировать количество сравнений и свопов, и именно такие специализированные сортировки будут работать быстрее std::sort для "тяжелых" объектов
но нахуя? гораздо проще держать в контейнере не объекты, а указатели на них (умные указатели), и все, на оптимизацию количества свопов пофиг
да и не стоит забывать про механику перемещения, щас внутри стандартных алгоритмов объекты муваются (при наличии такой возможности) а не копируются
Аноним 16/11/19 Суб 04:55:56 1522362411
>>1522251
Читаешь книгу, прикладываешь 70% усилий. Ебешься с закладками, заметками, с бездушной простыней текста.
@
Смотришь няшный видосик на 2x промотке, наслаждаешься эмоциями докладчика, вопросы аудитории проясняют непонятные моменты. Уровень усилий - 30% для тех же знаний
@
Проклятые зумеры не хотят страдать как диды страдали без пеницилина
Аноним 16/11/19 Суб 05:48:31 1522374412
>>1522362
Двачую, вообще не могу читать книги, использую их как справочники. Вон там с цппкона видосиков на целый год хватит, а потом еще зальют. Кроме того, ученые доказали, что на слух информация воспринимается лучше, чем зрительно.
Аноним 16/11/19 Суб 07:47:41 1522388413
А теперь не лаба01.
Насколько реально написать компайл тайм компилятор? Из чего-то си подобного в апи для уже существующего генератора ассемблера для виртуальной машины.
Аноним 16/11/19 Суб 08:43:16 1522407414
>>1522362
>Читаешь книгу, прикладываешь 70% усилий. Ебешься с закладками, заметками, с бездушной простыней текста.Gt
Аноним 16/11/19 Суб 08:50:53 1522409415
>>1522362
>Читаешь книгу, прикладываешь 70% усилий. Ебешься с закладками, заметками, с бездушной простыней текста.
Два слова: порог вхождения. Чтение - это навык, и умеющий читать, прикладывая 5% усилий, затратит минут пять на чтение блогпоста, в котором будет то же самое, что в полуторачасовом докладе.
Основной плюс чтения - оно позволяет моментально скипать уже тебе известное, введения, заключения, быстро переходить к сути. Чем менее ты тупой, тем больше ты получаешь профитов от чтения.
Большинство людей тупые. Тупые деды не страдали, они ходили в университет и слушали там лекции.
>>1522374
> Кроме того, ученые доказали, что на слух информация воспринимается лучше, чем зрительно.
Теперь все программисты переходят на программирование на слух.
Аноним 16/11/19 Суб 09:23:12 1522414416
>>1522409
и два чую, и нет
чисто ознакомиться видос лучше.
вникать уже легче читая.
тут недавно скидывали плейлист с лекциями.
Чувак половину времени ебланит и отвечает на вопросы студентиков.
Аноним 16/11/19 Суб 13:51:25 1522556417
C++ feature highlights:
Zero-cost abstractions
Scope-based resource lifetimes
Generics retain overloading


Rust feature highlights: all of the above but with a usable type system.

Ваши оправдания?
Аноним 16/11/19 Суб 13:53:00 1522560418
udata1495363910[...].png (3772Кб, 3840x2400)
3840x2400
Аноны, подскажите пожалуйста. Можно ли на C++ или C# бесследно прочитать память процесса? То есть, сделать это так, чтобы, условно, часть кода в самом этом самом процессе, или же сторонний код не заметил, что я это сделал. Хочу написать код для взаимодействия программы на языке внутри компьютерной игры, чтобы он отправлял данные в программу, запущенную на десктопе
Аноним 16/11/19 Суб 13:54:58 1522568419
>>1522556
В C++ все это есть по факту, а Rust по факту неюзабилен для чего-то реального.
Аноним 16/11/19 Суб 13:56:54 1522570420
>>1522409
> Основной плюс чтения - оно позволяет моментально скипать уже тебе известное, введения, заключения, быстро переходить к сути. Чем менее ты тупой, тем больше ты получаешь профитов от чтения.
Если мы говорим про значительный объем материала, то по книге учиться значительно хуже, потому что книг, которые хорошо сделаны, как учебный материал, можно по пальцам пересчитать. Именно по этой причине нужны универы - большинство авторов книг банально не умеют писать интересно.

Про шортриды тоже самое - если написано скучно, то ебал я в рот читать даже просты вещи. Так недолго и выгореть, в C++ и так приятного мало, а если меня говночтиво от александреску будет дизморалить своей унылостью, то я точно писать код перестану
Аноним 16/11/19 Суб 13:58:00 1522573421
Аноним 16/11/19 Суб 13:59:31 1522574422
14396530000290.jpg (95Кб, 500x495)
500x495
>>1522573
Ну не тролль, пожалуйста. Хотелось бы освоить плюсы, так как они охуенны, но скилла просто не хватает
Аноним 16/11/19 Суб 14:34:07 1522603423
>>1522409
> Теперь все программисты переходят на программирование на слух.
Ты жопу с пальцем перепутал. И да, на видосиках так-то и зрительный контакт имеется. Да и скипать видосики быстрее, чем переворачивать страницы, лазить туда-сюда в оглавление итд.
Аноним 16/11/19 Суб 14:38:29 1522607424
>>1522560
Какая ОС? Если винда, то гугли MSDN ReadProcessMemory. Никакая ОСь не позволит тебе делать что-либо бесследно. Дальше сам.
Аноним 16/11/19 Суб 14:41:29 1522609425
>>1522556
если тебе нравится поделие ебнутых мозилла-фанатиков (которые убивают щас второй свой браузер), то, пожалуйста, изучаи и пиши на раст, без проблем
но зачем срать в крестотред?
это раздражает
Аноним 16/11/19 Суб 14:44:26 1522610426
D8kbhmkXUAIuCww.jpg (88Кб, 675x1200)
675x1200
>>1522603
>зрительный контакт
С кем, блять?
Аноним 16/11/19 Суб 14:46:07 1522612427
Напишите функцию count, которая возвращает количество совпадений (вхождений) в целевом вложенном списке.
Вложенный список, это когда внутри списка есть еще списки.

молю вас объясните мне что такое "совпадения(вхождения" и "Целевой вложенный список" вернее что такое вложенный я знаю, а целевой это как?
Аноним 16/11/19 Суб 15:18:13 1522639428
>>1522560
из кернел драйвера
Аноним 16/11/19 Суб 17:18:07 1522723429
void f1(Pizda &&p){...}
void f2(Pizda &&p){ f1(std::move(p)); }

Вопрос: почему в f2 при вызове f1 нужно вызвать std::move, ведь p и так уже rvalue-ссылка?
Аноним 16/11/19 Суб 17:31:25 1522741430
>>1522723
Я так понял, что принимаешь ты rvalue, но внутри это уже lvalue, потому и нужно делать std::move.
Думаю, что без этого бы ты не смог использовать дважды этот аргумент - он же неявно мувнется и уже будет невалидным.
Аноним 16/11/19 Суб 17:39:22 1522750431
>>1522741
Хуйню написал, я уже понял.
Пускай тебе знающие аноны отвечают, а я нюфаня.
Аноним 16/11/19 Суб 17:58:43 1522758432
Аноним 16/11/19 Суб 18:45:07 1522782433
.png (211Кб, 602x794)
602x794
>>1522723
Внутри f2 p является lvalue

Аноним 16/11/19 Суб 20:24:51 1522848434
изображение.png (89Кб, 1366x768)
1366x768
Почему cout зацикливается?
Аноним 16/11/19 Суб 20:39:09 1522854435
>>1522848
Поменяй int на double
4 и 4.0 имеет разные типы, int и double соответсвенно
Если хочешь использовать именно с плавающей точкой, то пиши это явно
Аноним 16/11/19 Суб 20:42:39 1522857436
>>1522854
Блин. Глупая ошибка. Спасибо
Аноним 16/11/19 Суб 20:59:44 1522868437
>>1522848
Для начала, приучи себя не игнорировать ворнинги компилятора.
Аноним 16/11/19 Суб 22:39:32 1522935438
>>1520351
У тебя кириллицы или пробелов в пути к проекту нет?
Аноним 16/11/19 Суб 22:56:01 1522948439
>>1522935
Ох уж эти шиндовые бидолаги. Вам до сих пор юникода не завезли чтоли?
Аноним 16/11/19 Суб 23:13:52 1522955440
>>1522568
А как же новый кодек для av1?
Аноним 16/11/19 Суб 23:26:40 1522960441
data (14Кб, 350x264)
350x264
data1 (12Кб, 301x234)
301x234
Доброе время суток. Столкнулся с проблемой работы sleep.
На 1 скрине sleep не работает, все числа выводятся мгновенно при достижении конца цикла. На втором скрине всё работает, надпись выводит каждую 1 секунду. Среда Qt Creator

Прошу объяснить почему всё так, желательно адекватными терминами, или терминами которые я смогу загуглить. Большое спасибо.

Code 1
#include <iostream>
#include <stdio.h>
#include <unistd.h>
using namespace std;

int main()
{
int number;
cin >> number;
for (number;number<50;number++)
{
cout << number << " ";
sleep(1);
}
}
Code 2
#include <iostream>
#include <stdio.h>
#include <unistd.h>
using namespace std;

int main()
{
for (int i;i<50;i++)
{
cout << "Hello" << endl;
sleep(1);
}
}
Аноним 16/11/19 Суб 23:42:54 1522965442
Аноним 16/11/19 Суб 23:51:32 1522968443
>>1522960
А если перед sleep'ом вызывать cout.flush(), норм будет?
17/11/19 Вск 00:07:16 1522972444
>>1522960
Скорее всего дело в том, что cout использует буфер для вывода, можешь попробовать в первом варианте std::cout << data << std::flush сделать, хотя я хуй знает
17/11/19 Вск 00:07:37 1522973445
>>1522972
А, выше уже ответили
Аноним 17/11/19 Вск 01:14:09 1522996446
>>1522960
>Прошу объяснить почему всё так, желательно адекватными терминами, или терминами которые я смогу загуглить.
1. Вывод текста буферизируется иногда. Предположим, ты записываешь данные в файл - вместо того, чтобы записывать по одному байту насилуя жёсткий диск - он сохраняет некоторую очередь для записи, и потом пишет всё сразу одной пачкой. Вышеуказанный flush по идее должен принудительно эту очередь отсылать в консоль для вывода.
2. Я не уверен насчёт sleep-а с маленькой буквы, но Sleep(1), это подождать 1 миллисекунду (в действительности там 3-7, что зависит от операционной системы и других вещей, но всё-равно мало). Ты можешь на глаз отличить 50 мс (это 1/20 секунды) от мгновенного вывода? Я не могу.
Аноним 17/11/19 Вск 02:45:05 1523007447
image.png (5Кб, 447x148)
447x148
Есть код, который выводит данные из файла (x и y). Эти переменные должны использоваться в формуле, но как нормально прописать для этого счётчик? То есть программа должна брать за одну итерацию значение х и у первой строки, выводить результат (например х + у), брать вторые переменные и т.д.
Кстати точное количество переменных неизвестно, Мб их вектором посчитать и вывести пользователю, чтобы он сам вводил границу цикла рассчёта?
Отец 17/11/19 Вск 02:57:58 1523009448
Олды, нах нужен std::forward, если он возвращает тот же тип, который ему пришел, т. е. lvalue -> lvalue, rvalue->rvalue?
Отец 17/11/19 Вск 03:00:10 1523010449
>>1522723
потому что reference collapse
Аноним 17/11/19 Вск 03:05:31 1523011450
Аноним 17/11/19 Вск 07:19:23 1523050451
https://www.youtube.com/watch?v=5An1sNznblQ

Бьерн говорит, что нужно знать минимум 5 языков программирования, иначе ты не можешь называть себя даже макакой.

Интересно, сколько япов знает нвидия-кун?
Аноним 17/11/19 Вск 07:34:43 1523052452
>>1523050
Хотя сам он рекомендует 25 и обязательное знание ассемблера.

Ваши оправдания?
Аноним 17/11/19 Вск 12:32:22 1523114453
1573983115894.jpg (117Кб, 720x1280)
720x1280
Почему так?
Аноним 17/11/19 Вск 13:05:03 1523129454
data2 (14Кб, 436x248)
436x248
>>1522968
>>1522972
>>1522996
Огромное спасибо за ответы. Действительно, используя flush всё работает. Ещё буду разбираться в теме, ведь теперь знаю куда копать. Спасибо ещё раз
Аноним 17/11/19 Вск 13:06:34 1523131455
>>1522996
Sleep используется в винде и работает от миллисекунд. sleep в библиотеке unistd работает от секунд
Аноним 17/11/19 Вск 15:04:45 1523240456
>>1523230
да не пизди, небось алгоритм Чудновского в голове крутишь и по цифре выговариваешь в беспалевном темпе
Аноним 17/11/19 Вск 16:16:45 1523328457
>>1523050
Знаю - только С++.

Платили деньги за: Повершелл, Питон, ПХП (зашкварился в начале вкатывания), C#.
Аноним 17/11/19 Вск 18:53:55 1523463458
pi.png (192Кб, 1344x700)
1344x700
>>1523240
Как же у меня порвало
Аноним 17/11/19 Вск 18:57:29 1523472459
>>1523463
Ебучий конец, отдельно его понмнишь, но когда доходишь от начала, он куда то съебывается постоянно
Аноним 17/11/19 Вск 19:50:27 1523511460
>>1523463
>>1523472
твое саморазвитие зашло слишком далеко
vim ~/.bashrc
/PS1
:s/\\u@\\h/anon
Аноним 17/11/19 Вск 21:30:33 1523609461
Анон, слили уже плейлист видосов с питерской конфы? Дайте будь ласка

Как так блять получается что сппкон основной в тот же вечер выкладывает, а тут за ким то хуем полгода ждать
Аноним 17/11/19 Вск 21:52:45 1523625462
>>1523609
Его очень сильно просили не шарить. Через полтора месяца будет в паблике
Аноним 18/11/19 Пнд 00:15:56 1523758463
>>1523754
Не буди в нем синдром вахтера
Аноним 18/11/19 Пнд 01:53:18 1523789464
15739385395130.jpg (106Кб, 753x565)
753x565
>>1523758
Поздно. Время рвать бумерка.
Аноним 18/11/19 Пнд 02:05:40 1523793465
Анон, объясни понять, откуда появляется мусор после запятой при делении числа float на 10.
Задача перебрать и сложить все цифры 5-значного числа без перевода числа в строковый формат. Например, число 79813.
Делаю следующим образом: делю число на 10 (получаю 7981.3).
Далее вычитаю это число само из себя, переведенное в int:

digit=result-int(result)

Так вот, в данном конкретном примере программа выдает не 3, а 2. Потому что какого-то хуя результат приведенного выше выражения - 0.299805.
Откуда берется эта погрешность и как от нее избавляться?
Аноним 18/11/19 Пнд 02:11:17 1523794466
>>1523793
Ах да, естественно, я все выражение с вычитанием умножаю на 10.
Аноним 18/11/19 Пнд 02:18:20 1523798467
Аноним 18/11/19 Пнд 02:36:11 1523804468
>>1523798
Спасибо, буду изучать.
В своей проге (на codeabbey задачки решаю) просто добавил 0.1 к изначальному значению и задачу выполнил, но сомневаюсь, что это правильное решение, лол.
Аноним 18/11/19 Пнд 05:51:43 1523845469
image.png (0Кб, 205x58)
205x58
>>1523793
Какой-то сложный у тебя пример. Вот проще. Ошибка чисел с плавающей запятой про которую просто везде написано, в любой книжке и в любой статье с использованием дробных чисел.
>Откуда берется эта погрешность
Представь, что у тебя есть только обычные десятичные дроби, а тебе нужно записать 1/3 или 1/7. Вот и компьютер пишет 0.142857142857, но это ни разу не 1/7 и сколько бы он не старался, он 1/7 с абсолютной точность
>как от нее избавляться?
Не использовать float и double, там где тебе не нужны дробные числа и использовать символьную арифметику или другое представление чисел (например, в виде пары целочисленных числителя и знаменателя). Использовать float только когда ты понимаешь что тебе нужен именно float, во всех остальных случаях (в ситуации по умолчанию) использовать double.
>Задача перебрать и сложить все цифры 5-значного числа без перевода числа в строковый формат
>digit=result-int(result)
У тебя очень неинтуитивный способ высчитывать число. Если так хочется сделать через него, можно было бы написать digit=N-(N/10)*10 и это бы сработало во всех случаях (N и digit типа int; делить именно на 10, не на 10.0 или 10.0f) выдавая 3.
Но вообще вот такое решение больше напрашивается на ум: https://ideone.com/XEBmbd
Аноним 18/11/19 Пнд 08:08:25 1523853470
>>1523804
operator% вам о чем-нибудь говорит, молодой человек?
Аноним 18/11/19 Пнд 08:24:41 1523854471
>>1523007
Добавь новый счётчик и выкинь вектор
Аноним 18/11/19 Пнд 12:45:57 1523932472
>>1517305 (OP)
Есть OpenBlocks+miniGW, нужно загрузить текстуру в формате png.
Подключаю libpng в виде:
#include "png.h"
Но при компиляции выдает ошибки в виде:
undefined reference to `png_sig_cmp'
Как заставить его видеть библиотеку?
Аноним 18/11/19 Пнд 14:52:37 1523997473
Аноним 18/11/19 Пнд 15:22:02 1524020474
>>1523625
Откуда такая закрытость?
Аноним 18/11/19 Пнд 15:30:17 1524026475
>>1524020
>Откуда такая закрытость?
Россия же.
Аноним 18/11/19 Пнд 16:04:00 1524057476
Где можно про смаке с нуля прочитать, чтобы максимально для даунов было? Хотел попробовать либу для qt poppler, а там, видимо, миллион зависимостей, которые авторы нигде не указали, или указали где-то совсем в жопе, что я просто не нашел.
Аноним 18/11/19 Пнд 16:05:13 1524059477
Аноним 18/11/19 Пнд 18:13:28 1524181478
>>1524020
Билеты там за бабло вообще-то, поэтому просят не шарить.
Аноним 18/11/19 Пнд 19:25:41 1524224479