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

Ответить в тред Ответить в тред
C++ тред #119 /cpp/ Аноним 03/09/20 Чтв 19:59:22 17966051
cpp3.jpg 82Кб, 500x500
500x500
cpp1.png 73Кб, 1280x1439
1280x1439
cpp2.png 238Кб, 434x311
434x311
cpp4.png 519Кб, 1200x800
1200x800
Аноним 03/09/20 Чтв 20:09:13 17966192
Есть ли какой-то аналог команды where или which в c++? Чтобы вывести полный доступ к файлу
Аноним 03/09/20 Чтв 20:10:54 17966253
>>1796619
Нужно сильно больше контекста.
Аноним 03/09/20 Чтв 20:15:14 17966314
>>1796625
В переменной среды PATH добавлена папка. Из командной строки я могу их любой папки написав название файла запустить любую программу лежащую в ней. Хочу тоже самое в коде, чтобы он мог найти файл лежащий в этой папке
Аноним 03/09/20 Чтв 20:20:42 17966385
>>1796631
>папка. Из командной строки я могу
ну так забери PATH из энв варов и вперед проверять. Операционка делает именно так, С++ тут не причем.
Аноним 03/09/20 Чтв 20:32:00 17966536
>>1796638
Не слишком костыльно? Разве нет для этого специальной библиотеки или функции?
Аноним 03/09/20 Чтв 20:39:23 17966757
>>1796653
в стандартной библиотеке о таких не знаю.
Аноним 03/09/20 Чтв 20:43:59 17966848
>>1796675
в ШИНАПИ наверняка есть
Аноним 03/09/20 Чтв 21:10:31 17967289
Аноны через 2 года кончается уник. Сидел в основном на плюсах хуйнёй страдал. Пара проектиков есть. Сделал торрент клиент криововатый на qt форм нашлепав и ещё говна поменьше. Достаточно для стажировки/джуновки? Или ещё нахуярить что-нибудь? Ибо я в основном на всяких спортивных программированиях хуярюсь
Аноним 03/09/20 Чтв 21:12:05 179673110
>>1796728
Хуярь конечно, почему бы и нет.

мимокрокодилнепрограммист
Аноним 03/09/20 Чтв 21:22:35 179673811
>>1796190 →
>вместо того чтобы нормально сделать парсер даты, тупо брали два последних символа строки
Например как ты спарсить предлагаешь? 212022080115вав45203072220
На, вот строка тебе, парси хули, что последние джва символа это год
Аноним 03/09/20 Чтв 21:43:10 179675412
>>1795751 →
>Александреску
>>1795752 →
>Саттер
Еще Мейерс красаучик.

Труп страуса какой-то левый в этой компании, похоже, больше как популяризатор языка. Его базар не производит впечатление работы над реальными проектами.
И книги галимые по сравнению с Пратой.
Аноним 03/09/20 Чтв 21:45:12 179675513
>>1796754
Ну, буду перекатывать в следующий раз - запостю Мейерса, акей
Аноним 03/09/20 Чтв 23:22:19 179682814
>>1796738
юзани регулярку и не еби себе мозги, пчел
Аноним 04/09/20 Птн 01:08:24 179690015
Стикер 127Кб, 512x512
512x512
>>1796605 (OP)
Посоны, как сконпелировать это: https://github.com/satorigold/SatoriGold
чтоб оно на винде не крошилось?
А то крошится, падла, crush, crush, crush, crush...

ПАМАГИТИ, кароч. АААААААААААА!!!!
Аноним 04/09/20 Птн 01:13:34 179690216
Какую билд систему вы используете для C++?

На плюсах не писал уже 6 лет, как закончил универ. За свою карьеру перепробовал кучу экосистем с различного рода менеджерами пакетов: go get, mvn, sbt, pip, nvm — всё вот это дерьмо.

Есть ли что-то подобное для крестов, чтобы можно было просто объявить нужную зависимость, и чтобы билд система сама стянула всё, что нужно?
Аноним 04/09/20 Птн 01:28:31 179690817
>>1796902
Сейчас conan популярен, но это чисто пакетный менеджер. Из билд систем с ним хорошо cmake интегрируется.
Аноним 04/09/20 Птн 01:29:42 179690918
>>1796902
Нет, ничего нормального нет.
Индустрия как сидела на cmake, так и сидит.
Можешь покопать в сторону meson.

Из пакетных менеджеров vcpkg вроде относительно неплох.

Но сильно вкусно в любом случае не будет, билды/пакеты — не сильная сторона плюсов.
Аноним 04/09/20 Птн 01:51:33 179691419
Добрый вечер, пользуется ли кто clion'ом под никсами? Глянул на рутрекере, а там только виндовые сборки, сижу вот думаю где его взять
Аноним 04/09/20 Птн 02:29:08 179692720
Аноним 04/09/20 Птн 02:56:50 179693521
>>1796914
а как же швабодка петухи коококо? Винду крякнуть скачать смс без регистрации мокрые писечки?

Будь последовательным - ебись с вимом
Аноним 04/09/20 Птн 08:44:07 179697722
>>1796914
Поставь wine, да и запускай с-под него. А что?
Аноним 04/09/20 Птн 11:23:14 179704223
>>1796927
Ага, понял

>>1796935
Дядь, что за наезд? Зачем ты мне предъявляешь за свободу? Где в моем посте хоть что-то про винду?

У меня есть чужой плюсовый проект с достаточно большим количеством LOC. Мне нужно этот проект отрефачить а затем накидать туда нового функционала. При этом cpp - не мой основной язык. По предыдущему опыту я знаю, что при работе с подобными проектами CodeBlocks (для меня) удобнее консоли, но сейчас заметил, что IDE от Intellij значительно удобнее CB.

Если ты считаешь, что в этом случае пойти ебаться с вимом - это последовательно, у меня для тебя плохие новости.

>>1796977
Ай, блэт. И правда. Совсем забыл про вайн. Спасиб тебе.
Аноним 04/09/20 Птн 14:36:00 179721124
>>1797042
>Дядь, что за наезд?
Я таблетки забыл выпить, прости
Аноним 04/09/20 Птн 16:16:56 179733025
Блять сука как первую работу найти без опыта заебало уже, на хх даже отказ не ставят просто смотрят и все сука. Уже скоро вуз закончу, а опыта так и нет аааа
Аноним 04/09/20 Птн 16:33:38 179733526
943632493632190[...].jpg 30Кб, 604x453
604x453
Хлопцы, подскажите, в какой IDE когда нажимаешь F4 для переключения между хедером/сорсом предлагает его создать, если такого нет.

Я точно помню что такая фича была где-то, просто сейчас не смог найти сходу.
Аноним 04/09/20 Птн 20:47:36 179754927
Эта божественная вайпалка ещё и на c++ написана
Аноним 04/09/20 Птн 22:39:44 179763028
Сап плюсачи. А всплывала ли где-нибудь проблема с переполнением стека в деструкторе мапы при использовании MSVC-компилятора?

Вкратце суть такова: если пилить оч.длинную конструкцию типа map<char, map<char, map<...>>> и заполнить её, то при удалении вылезает stackoverflow/segfault/еще какая дрянь.

Чтобы не быть голословным - вот очень простой код (25 строк, без выебонов): https://rextester.com/NBCLT14094
Если скопипастить его для clang/gcc, то всё отрабатывает без запинки, а вот с vc++ беда.

Проверил на своей VS19 (16.7.2) - то же самое. Есть ли идеи как с этим бороться?
Аноним 04/09/20 Птн 22:43:51 179763329
>>1797630
Когда-то встречался с подобным, там мапа заполнялась макросом, который разворачивался в тысячу вызовов insert.

Решил заменой на try_emplace, хотя хз чем это тебе поможет
Аноним 04/09/20 Птн 22:49:03 179764730
>>1797630
Если совсем худо будет, можешь увеличить размер стека. Видел такое в эмуляторе ps3
Аноним 05/09/20 Суб 09:29:42 179784231
>>1797630
Наследоваться от std-контейнеров это уже занятие для рисковых пацанов. А уж если сверху полирнуть CRTP...
Аноним 05/09/20 Суб 09:43:05 179784432
>>1797630
У тебя там деструктор не виртуальный.
Аноним 05/09/20 Суб 10:20:43 179784833
>>1797335
По f4 переключается у кют креатора, но такой фичи не помню, мож плагин? Или версия новее моей, я все ещё в 5.12.
Аноним 05/09/20 Суб 13:05:07 179793034
Эсс.png 17Кб, 775x289
775x289
Почему с одномерным массивом прокатывает, А с двухмерным не хочет, как решить?
Аноним 05/09/20 Суб 13:09:37 179793535
>>1797930
Ты не можешь так принимать двумерные массивы в функцию.

Пиши : int ⚹⚹arr
Аноним 05/09/20 Суб 13:11:15 179793736
Аноним 05/09/20 Суб 13:24:48 179794937
>>1797930
> массивом
Пиздуй в си-тред. Тут мужики для такого либо std::array используют, либо std::vector
Аноним 05/09/20 Суб 13:38:55 179795938
Как описать тип ссылки на массив фиксированного размера?
using arr_t = int[3];
arr_t& foo() {...}
Так вот как описать этот тип без using? int[3]& foo() выдает ошибку.
Аноним 05/09/20 Суб 13:48:41 179796639
>>1797959
Определи структуру с массивом внутри.
Аноним 05/09/20 Суб 13:50:57 179796840
>>1797966
Да это понятно, мне просто интересно во что раскрывается arr_t&.
Аноним 05/09/20 Суб 14:50:04 179799641
Зачем учить C когда есть C++?
Аноним 05/09/20 Суб 14:51:12 179799742
Зачем учить C когда есть C++?
Аноним 05/09/20 Суб 15:06:08 179800443
Аноним 05/09/20 Суб 15:13:30 179800744
Аноним 05/09/20 Суб 15:26:02 179801445
>>1798004
Бля почему через auto -> можно а просто написать int(&)[3] foo() нельзя?
Аноним 05/09/20 Суб 15:44:32 179801746
>>1798014
Нажми на стрелку уже, или на Ctrl+Enter
Аноним 05/09/20 Суб 20:45:00 179822947
C++20 DIS заапрувили (в 2:38 MSK письмо прилетело)
Аноним 06/09/20 Вск 02:17:44 179845448
Можно ли везде писать auto вместо int, float, и т.д.?
Аноним 06/09/20 Вск 02:42:29 179845749
Сложно ли переделать код с swift на нормальный язык?
Аноним 06/09/20 Вск 02:47:11 179845950
C4525B1B-ADD4-4[...].png 553Кб, 720x720
720x720
Вот вы все про форматирование, а есть ли вероятность стать пидором в результате UB?
Аноним 06/09/20 Вск 02:49:53 179846051
>>1798454
Если правая часть выражения без труда позволяет определить тип, то можно, иначе лучше указать тип явно.
Аноним 06/09/20 Вск 02:53:18 179846152
>>1797330
Первую работу на плюсах находят только краснодипломники-олимпиадники.
Аноним 06/09/20 Вск 02:58:17 179846253
74476FAE-6BF2-4[...].jpeg 324Кб, 1200x1195
1200x1195
>>1798454
Да, даже нужно. Если не выводится, можно поставить сишное преобразование к желаемому типу перед выражением. Можно даже всегда его ставить для порядка, так сказать, альтернативный интересный синтаксис.
Аноним 06/09/20 Вск 04:21:33 179846654
>>1797930
Надо во вторую скобку размер дописать, например int arr[][10]
Аноним 06/09/20 Вск 11:35:48 179855255
>>1798461
Не пизди. Двум краснодипломникам месяц назад отказали, зато взяли паренька с неоконченным высшим. Он оказался гораздо сообразительнее первых двух.
Аноним 06/09/20 Вск 17:28:18 179882756
Как delete [] p; понимает, когда кончается массив?
Аноним 06/09/20 Вск 18:05:55 179887357
>>1798827
Среда выполнения знает, сколько было выделено
Аноним 06/09/20 Вск 18:20:04 179889258
>>1798827
Для каждого блока памяти с++ тайно сохраняет размер.
Аноним 06/09/20 Вск 18:56:44 179892859
>>1798892
>тайно
Хуяйно, зачем анону мозги пудришь? То, что ты написал, работает только в STL контейнерах (например, когда у тебя есть std::vector, там в классе есть метод size, который возвращает размер вектора, все метаданные о векторе хранятся в объекте класса std::vector).

Но если идет работа с сырыми указателями прямо как в Си, а он имел в виду именно это, то размер куска памяти в куче хранится в хедере метаданных удаляемого куска, а это целиком и полностью работа аллокатора памяти (ptmalloc3, jemalloc и т.п., есть дохуя реализаций), который к твоему коду не имеет никакого отношения, это отдельная подпрограмма, которая управляется отдельно операционной системой. Для простоты понимая - glibc в Линуксе, там среди всего прочего есть аллокатор памяти ptmalloc3, в нем ресурсы такого плана и находятся под управлением.
Аноним 06/09/20 Вск 19:29:26 179895960
>>1798928
>размер куска памяти в куче хранится в хедере метаданных удаляемого куска, а это целиком и полностью работа аллокатора памяти
Именно это я и имел ввиду
Аноним 06/09/20 Вск 19:38:18 179896161
Аноним 06/09/20 Вск 22:39:45 179909762
Почему Node в классе Stack подчёркивается красным, если не добавлять шаблон перед каждым классом?
Аноним 07/09/20 Пнд 00:55:05 179915463
>>1797630
Что делает код с 110 по 16 строчку?
Аноним 07/09/20 Пнд 03:04:10 179917664
изображение.png 12Кб, 318x487
318x487
>>1799097
Блять, я же кидал картинку, ну абу, какого хуя то, а?!!!!!
Аноним 07/09/20 Пнд 03:05:17 179917765
>>1799176
Потому что это шаблонный класс.
Аноним 07/09/20 Пнд 03:20:54 179917966
>>1799177
Я T ещё нигде не использовал. Какого хуя?
Аноним 07/09/20 Пнд 05:44:54 179919167
Спросил в МВП, продублирую сюда.
Какая сейчас средняя рыночная зарплата на руки в ДС для C++ миддла? От чего вообще отталкиваться чтобы не продешевить? Опыт есть.
Аноним 07/09/20 Пнд 09:31:53 179923268
>>1799179
Так убери тогда шаблон если не использовал
Аноним 07/09/20 Пнд 13:52:02 179946169
Аноним 07/09/20 Пнд 17:39:45 179969270
В java в хэшсете используется функция hashCode(), в которой я могу выбрать значимое поле объекта, в std есть что-либо похожее, либо надо лепить свою реализацию?
Аноним 07/09/20 Пнд 18:02:58 179970471
Аноним 08/09/20 Втр 01:14:53 180011872
>>1799154
Вставляет "ребра" из диапазона в дерево значений. Каждая итерация цикла внутри увеличивает "глубину" структуру на единицу.
>>1797844
Виртуальность тут ни причем, я ж не наследуюсь ни от чего. Сделал виртуальным - ничо не поменялось
>>1797633>>1797647
Увеличение стека чуть помогло, но мне на вход по идее может придти строка хоть из мильона символов, а там необходимый размер должен уходить в небеса. Мне такую самодеятельность не зааппрувят. Похуй, поставлю ограничение на входящий размер строки.

Вообще основной вопрос был в том, почему другие компиляторы спокойно прожевали этот кусок, а msvc соснул. Раньше они бывало выдавали разные результаты для хитровыебанных случаев, но эксклюзивных крашей не было. Видимо надо перекатываться на clang.
Аноним 08/09/20 Втр 01:21:21 180011973
Аноним 08/09/20 Втр 01:24:18 180012074
Аноним 08/09/20 Втр 01:51:20 180012275
>>1800119
Благодарю, примерная картина ясна.
Аноним 08/09/20 Втр 02:43:34 180014076
Народ, можете объяснить как вкатиться в Qt? Там ебать много всяких тулов, без пол литра не разберешься. Я понял есть версия для бомжей и для бояр. Можете скинуть ссылку на гайд по старту с бесплатной версией? Т.е. какой софт качать чтобы начать. С меня тонны нефти.
Аноним 08/09/20 Втр 02:44:57 180014277
1022581661.jpg 75Кб, 353x500
353x500
Аноним 08/09/20 Втр 02:50:20 180014578
>>1800140
зачем вкатываться в qt в 2020?
Аноним 08/09/20 Втр 02:58:20 180014679
>>1800145
А во что нужно вкатываться в 2020? Есть что-то столь же развитое в плане разработке оконных приложений?
Аноним 08/09/20 Втр 03:10:00 180014980
>>1800146
Оконные приложения на С++ немного мертвы. Лишь 3.5 немца ебут труп. Если ты хочешь пилить - скорее вкатывайся либо в шарпы, либо в электрон
Аноним 08/09/20 Втр 04:43:23 180015981
>>1800149
Лол, ты qml вообще видел? Современный интерфейс qt это не про кресты. Шарп/ксамль - говно, электрон похоже тоже, только мельком смотрел.
кро
Аноним 08/09/20 Втр 05:08:25 180016182
Аноним 08/09/20 Втр 09:37:02 180027983
>>1800142
Копипаст документации, нинужно
Аноним 08/09/20 Втр 09:39:34 180028284
>>1798457
Легче чем с пайтон,тяжелее чем с Шарпа
Аноним 08/09/20 Втр 09:58:52 180030085
>>1800118
Если в разных компиляторах разный результат, значит где-то стоит хитрый флаг или твой код UB или баг в конпеляторе

>я ж не наследуюсь ни от чего
А это что, блядь?
class ValueTreeTest : public std::map<T1, ValueTreeTest<T1, T2>>

И вообще, пожалуйста объясни, чего ты хотел добиться этой строчкой, я непонел.
Аноним 08/09/20 Втр 10:58:00 180034986
>>1800140
Там хороший хелп, с туториалами и прочим, я на нем одном вкотился.
Аноним 08/09/20 Втр 11:25:18 180038387
>>1800300
Ну понятно что наследование от мапы, но никаких приблуд при наследовании от stl-контейнеров сроду не вводил, всё работало.

>class ValueTreeTest : public std::map<T1, ValueTreeTest<T1, T2>>
>И вообще, пожалуйста объясни, чего ты хотел добиться этой строчкой, я непонел.
Шаблонный класс "m-ary tree" для поиска слов по дереву, ребра (T1) - char/wchar, значения (T2) - какие-нибудь инты. Поиск и прочую ерунду убрал, отставил только инициализацию (insert).

>где-то стоит хитрый флаг или твой код UB или баг в конпеляторе
Вот я и пытаюсь понять что за флаг там нужно поставить чтоб всё работало. Никакого UB нет, код рабочий на небольшом входе лет 10. Сейчас просто дошли руки до тестов на экстремальный вход и получилось вот такое.
Аноним 08/09/20 Втр 11:33:35 180040088
>>1800383
> никакого UB
> код рабочий уже много лет
Аххахахахаха.
Аноним 08/09/20 Втр 12:15:01 180043689
>>1800383
Посмотри в исходник либы и на ассемблер. Делов-то

мимо сищник
Аноним 08/09/20 Втр 12:25:13 180045190
yoba.png 5Кб, 129x129
129x129
А, у тебя insert рекурсирует. Ну ты так не делай
Аноним 08/09/20 Втр 13:54:06 180057691
Аноним 08/09/20 Втр 14:37:27 180064192
Ананасы, недавно слышал о такой штуке применительно к многопоточному программированию.
Вместо использования примитивов синхронизации можно посылать на loopback (каждый поток слушает порт свой) пакеты. Какую-то я такую мысль читал.
Может кто-то подробнее этим интересовался?
Аноним 08/09/20 Втр 15:29:39 180072493
>>1800641
Если у тебя есть шаредные данные - то тебе все равно нужна синхронизация
Аноним 08/09/20 Втр 15:56:19 180078394
>>1800641
Блокироваться на мьютексе или блокироваться на чтении из сокета (хоть и локального)? Такое чувство, что второе будет намного оверхеднее.
Аноним 08/09/20 Втр 19:19:14 180100595
Суп, подскажите, есть ли ресурс с перечнем каких-нибудь проектов, которые можно пописать в качестве тренировки, да и более углубленного изучения языка.
Аноним 08/09/20 Втр 20:24:26 180106496
>>1801005
Трассировщик лучей.
Интерпретатор языка Х.
Текстовый редактор.
Шахматы и змейки.
Клиент и сервер хуйни.
Эмулятор 6502.
Аноним 08/09/20 Втр 20:29:15 180106997
>>1801064
яростно двачую насчет эмулятора, это один из лучших байтоебских проектов, по крайней мере в пространстве пользователя, не спускаясь в священное ядро, который только можно сделать.
Аноним 08/09/20 Втр 22:19:40 180115998
>>1801064
>Трассировщик лучей
Если я полный нуб в линейной алгебре, есть ли смысл начинать с книжек вроде "3D Math Primer for Graphics and Game Development"?
Аноним 08/09/20 Втр 23:01:21 180121299
>>1801159
На хабре была серия статей про самописный трассировщик на 200 строк кода
Аноним 08/09/20 Втр 23:05:37 1801219100
Есть конпелятор gcc 4.6.3 и собранная им же библиотека без исходников. Есть библиотека, которой для сборки нужен c++14. В наличии только компилятор с поддержкой c++11 gcc 4.8.3.
Как это всё подружить между собой?
Аноним 08/09/20 Втр 23:16:40 1801232101
Анон, можно как-то для std::partition указать максимальное количество элементов слева? Типа есть рандомный вектор чисел, я хочу разделить на те, что меньше 10, но чтобы их было не больше четырех штук
Аноним 08/09/20 Втр 23:26:30 1801237102
>>1801219
> Есть библиотека, которой для сборки нужен c++14.
Переписать фрагменты 14 стандарта на 11?
Аноним 08/09/20 Втр 23:32:24 1801244103
>>1801237
Это может быть не всегда возможно, ты же понимаешь?
Аноним 08/09/20 Втр 23:56:11 1801260104
>>1801219
Я сейчас собрал библиотеку, которая наполовину C90, частично С++11, а в нижних слоях два ассемблера (yasm и jwasm). Полёт нормальный, тесты прошли, ещё и модуль ядра соберу потом.

Правда, у меня все исходники были и версии gcc/g++ соответствуют, но, я думаю, в плане совместимости ты можешь это всё попытаться подружить.

(кроме сборки c++14 компилятором, не поддерживающим с++14).

Аноним 09/09/20 Срд 00:40:09 1801270105
>>1801244
Не понимаю, объясни
Аноним 09/09/20 Срд 06:22:26 1801339106
>>1800641
Фаерфолы и антивирусы могут начать возбуждаться на твою прогу, когда увидят открытый порт.
Аноним 09/09/20 Срд 06:35:53 1801340107
>>1801260
Вряд ли у меня получится слинковаться с проектом без исходников, собранным с c++98, если я начну собирать свой проект с c++11. Может быть написать обёртку над второй либой, обернуть там всё в extern "c" и продолжить писать на c++98? Есть у кого-нибудь опыт написания такого?
Аноним 09/09/20 Срд 08:17:32 1801350108
Аноним 09/09/20 Срд 08:50:16 1801358109
>>1801159
Вполне.
Есть старая pdf-ка, ищи по имени автора Roman Kuchkuda, там пошагово пишется простой трассировщик на си.
Аноним 09/09/20 Срд 15:33:45 1801642110
Есть ли смысл в noexcept specifier при сборке с -fno-exceptions?
Аноним 09/09/20 Срд 16:54:57 1801729111
Аноны, помогите прошу, умоляю. В пятницу собес на стажёра C++. Как подготовиться? Что зубрить, что учить? Прошу помощи...
Аноним 09/09/20 Срд 17:16:05 1801748112
>>1801729
А хуё ево знает. Чем контора то занимается?
Стандарты пошерсти. Наверное будут вопросы про наследования и перегрузки функции при них.
Про структуры данных могу спросить: все эти списки, дек, очередь и тд. Может быть что-то про сложность алгоритмов.
Про универсальные ссылки и вообще move семантику.
Сложно так сразу сказать.
Аноним 09/09/20 Срд 17:16:52 1801750113
>>1801748
Информационной безопасностью занимается
Аноним 09/09/20 Срд 17:21:59 1801757114
Аноним 09/09/20 Срд 17:37:26 1801785115
Аноним 09/09/20 Срд 17:42:05 1801790116
>>1801069
>>1801064
>Эмулятор 6502.

Если есть желание копать до глубин - пиши симулятор 6502.
Аноним 09/09/20 Срд 20:11:18 1802003117
Аноним 09/09/20 Срд 20:25:25 1802012118
>>1801729
Надень полосатые чулки
Аноним 09/09/20 Срд 20:26:32 1802015119
>>1802003
Потактовая точность в чимуляторе
Аноним 09/09/20 Срд 22:26:48 1802159120
>>1801642
Напиши тест:
Класс с конструктором копирования и конструктором перемещения. Запихни его в вектор. Перемести вектор. Если вызовется конструктор перемещения, то можешь не париться
Аноним 10/09/20 Чтв 01:25:44 1802291121
>>1802159
Про это читал. На этом нюансы заканчиваются?
Сейчас работаю над библиотекой, которая всё равно собирается с -nostdlib.
Аноним 10/09/20 Чтв 02:04:41 1802313122
>>1802291
Я не знаю. Пример привел потому, что это первый пришедший в голову способ проверить, что там по умолчанию задано. Полагаю, если noexcept == true, то и в остальных случаях тоже.
Аноним 10/09/20 Чтв 14:46:14 1802597123
>>1802003
Симулятор - детально моделирует внутреннее устройство.
Эмулятор - только воспроизводит внешнюю работу АПИ, типа черный ящик.
Пример из жизни (писал эмуляторы 6502 по работе):
В старых играх программисты использовали разные трюки железа чтобы выжать производительность.
Эти особенности железа не всегда были описаны в документации, и зачастую открывались случайно экспериментальным образом.
В нескольких играх на эмуляторе не работала мигающая анимация заднего фона при атаках, взрывах.
Оказалось, что в эмуляторе, как по документации, выводилась строка пикселей целиком. В реальности же, программисты меняли содержимое строки во время ее вывода на экран, прямо пока бежал луч по кинескопу.
Для того, чтобы вывести правильный эффект, надо точно рассчитать, в какой именно момент произойдет смена пикселей в оперативной памяти. Тут бы помог симулятор, который обрабатывает команды по тактам и точно знает что происходило в чипах. Но считать все по тактам и пикселям очень долго, неприямлимо для реал-тайм эмуляции на 50-60фпс.
Подобные трюки были использовались и со звуковыми чипами. По документации один канал использовал рандом для шума. В эмуляторе это и будет просто рандом. Но в реале программисты изучили и поняли устройство чипа, на самом деле там счетчик со сдвигом, и научились "дергать" его в определенный момент времени, чтобы получить конкретный шумовой эффект для ударных. Без знания устройства эмулировать это не получится.
Для создания симулятора процессора, в частности, спилили крышечку чипа и он рассматривали его в микроскоп, чтобы воспроизвести детальную работу логических элементов. В частности, таким образом через 30 лет разгадали загадку, почему одна недокументированная команда процессора работала на некоторых партиях компьютеров, а на других зависала. (а на третьих зависила от того, насколько компьютер прогрелся, буквально). После чего, даже разобрались, по каким адресам памяти ее можно располагать, чтобы она работала стабильно. В эмуляторе, без этих симуляторных знаний, у тебя были бы только документированные команды, а для недокументированных у тебя была бы просто заглушка, которая могла, к примеру, выводить ошибку, или игнорироваться.
Аноним 10/09/20 Чтв 14:59:37 1802618124
>>1797330
На завод или в оборонной КБ или НИИ попробуй. Будешь всякое технологическое говно писать сначала, там же и диплом сделаешь.
Аноним 10/09/20 Чтв 15:51:57 1802690125
>>1801729
Базовый вопрос, который меня спрашивали НА КАЖДОМ собесе на миддла по плюсам: чем std::map отличается от std::unordered_map, начиная от реализации и заканчивая сложность поиска, удаления и вставки. Заучи так, чтобы проснувшись посреди ночи мог на него сразу ответить!
А так должны спросить по сортировки и их сложность, стандартные контейнеры вроде вектора/листа, основы ООП перечислить, скорее всего будет пара базовых вопросов по темплейтам и виртуальным функциям, статическим переменным и их особенностям, аллокация на стеке/куче и прочие заковыристые места языка (но сношать тебя по ним не должны, тут скорее просто знаю-не знаю). Может задачку с литкода дадут или SQL запрос небольшой попросят написать, у всех по разному. Но map спрашивали вообще везде, так что первым делом учи STL контейнеры.
Аноним 10/09/20 Чтв 16:29:38 1802722126
for(;;) или while()?
Аноним 10/09/20 Чтв 16:36:31 1802732127
Аноним 10/09/20 Чтв 17:28:19 1802776128
>>1802722
Первое бесконечный цикл, второе ошибка компиляции.
Аноним 10/09/20 Чтв 18:16:16 1802821129
Аноним 10/09/20 Чтв 19:13:55 1802894130
>>1796605 (OP)
посоветуйте книгу по c++ и stl. до этого я как-то без этого обходился но на собеседование оч нужно, в шапке непонятно
Аноним 11/09/20 Птн 00:01:13 1803187131
>>1802894
По C++ Страуструп, по STL Николай Джосаттис (или ещё Джосьютис).
Аноним 11/09/20 Птн 00:15:37 1803211132
>>1797996
Всё просто. Язык C есть везде, на всех платформах, под все процессоры и ОС. Он одинаков, прост, быстро работает.
С++ же не столь универсален. Не все фичи везде доступны, где-то даже компилятора не найти.
В общем, подлинно портируемые программы стараются писать на C. Тогда они заработают на любом утюге.
Аноним 11/09/20 Птн 00:20:38 1803218133
Здорова пацаны! А давайте поговорим на тему вакансий программистов под C++.
Правда ли, что язык сдувается? Что вакансий всё меньше, а зарплаты уступают разработчикам на других языках?
Не лучше ли вместо всех премудростей плюсов, просто проштудировать Java и идти грести бабло?
Аноним 11/09/20 Птн 00:22:49 1803221134
>>1803218
Как может сдуться то на чём вертятся все современные архитектуры?
Аноним 11/09/20 Птн 00:29:06 1803227135
>>1802597
>Для создания симулятора процессора, в частности, спилили крышечку чипа и он рассматривали его в микроскоп, чтобы воспроизвести детальную работу логических элементов.

Какие-то сказки венского леса. Интересно, сколько они положили сил, времени и денег на это "спиливание крышечки и изучение"?
Ради чего такие заморочки? Ради парочки глючных игр? Да ещё 30 лет спустя. Кому это понадобилось?
Аноним 11/09/20 Птн 00:33:35 1803231136
>>1802597
И да. Засунь свою доморощенную терминологию в задницу. Меня как-то не ипёт это твоё деление на "симуляторы" и "эмуляторы".
Откуда ты это притащил? Каждый гандон будет изобретать термины и тонкий их смысл, а все остальные должны послушно всё это жрать.
Аноним 11/09/20 Птн 00:39:40 1803237137
>>1802597
Если что, могу ещё сообщить шта эмулировать ньюансы работы электроники - это не хуй собачий. Имею скромный опыт разработки цифровой схемы. На симуляторе её логики (на уровне вентилей) она ведёт себя не вполне так, как вживую в железе.
В симуляторе все относительно прямо и просто. А в железе вылезают косяки. Воспроизвести это программно совсем не просто.
Аноним 11/09/20 Птн 00:47:44 1803242138
>>1803221
Относительно других языков - вполне. Говорят, сейчас на плюсах нужно работать в нишевых областях, где требуется высокая квалификация, дабы прилично зарабатывать.
Плюсы сдали поляну языкам, на которых писать код проще и быстрее (не код быстрее, а производительность программиста выше).
Посмотрите -- даже в геймдеве, традиционной поляне C++, Unity использует C#.
Что на чём вертится не так важно, эти фундаментальные вещи не занимают большой доли рынка.
Впрочем я не говорю про примитивные задачи, которыми занимаются толпы кодомакак. Клепание сайтиков на PHP каком-нибудь.
Я про языки и области применения с оптимальным соотношением профит/усилия_на_изучение.
Аноним 11/09/20 Птн 00:52:18 1803245139
>>1801064
Можно ещё софтвер-рендерер или 3D игру, вместо трассировщика.
Впрочем, если это не по зубам, можно и 2D игру. Изометрическую какую-нибудь. Стратегию, например.
Аноним 11/09/20 Птн 01:02:00 1803249140
>>1798928
>сырыми указателями
Сыро только у твоей мамки в трусах, анон. Raw pointers переводится как "голые указатели".
Аноним 11/09/20 Птн 01:13:58 1803259141
>>1803231
Это общепринятые термины, маня. Можешь погуглить.
Аноним 11/09/20 Птн 01:33:05 1803274142
>>1803227
Это сделали демосценеры, потому что охуевали с мистики почему у одного работает а у другого нет, а компов у них и так навалом. А фанатов у 6502 полно, комьюнити огромное, очень уж удачный проц был. До сих пор под него игры каждый год выходят.
Аноним 11/09/20 Птн 07:39:07 1803345143
>>1803242
>производительность программиста выше
Там где нужна производительность и в плане скорости работы программы и в плане скорости написания програм возьму реального профессионала.
Но ладно, не отрицаю что зачастую прототипы програм пишут на других языках, тру.
>даже в геймдеве
Ни один ААА проект не станет использовать юнити и шарп в качестве инструментов. Даже при современных идиотских стандартах.
>эти фундаментальные вещи не занимают большой доли рынка
Архитектуры x64 и arm самые распространённые в мире на сегодняшний день. Весь лоулевельный софт для взаимодействия остальной системы с ними написан на чистом С или порой на С++. Это львиная доля рынка и пока не будет готов полностью рабочий квантовый компьютер тут и говорить нечего.
>с оптимальным соотношением профит/усилия_на_изучение
JS макаки радуются 120к в месяц в лучшем случае, люди с реальными знаниями и страстью к технологиям уезжают в Германию/Калифорнию/Канаду.
Аноним 11/09/20 Птн 07:58:15 1803353144
>>1803218
Плюсы начали сдуваться в начале 200х, сейчас их положение стабильно, они остались там, где нужны и заменить их нечем.
Аноним 11/09/20 Птн 10:20:15 1803396145
>>1803242
Экстремальное байтоёбство сейчас на Zig модно писать. Это по сути обёртка на LLVM с кучей сахара. Крестовики обзавидуются местным чудесам синтаксиса.
Аноним 11/09/20 Птн 11:51:29 1803470146
пчелы, норм ли для в качестве работы для диплома написать текстовый редактор ? (со шрифтами, поиском редактированием). Вначале хотел сделать что-то типа экселя, но понял, что не справлюсь с таким объёмом работ.
Аноним 11/09/20 Птн 11:59:26 1803474147
>>1803470
Ну если ты на программиста учился чтобы по итогу текстовые редакторы делать - то да, вполне.
Аноним 11/09/20 Птн 12:04:11 1803478148
>>1803470
Разве это дохуя сложно? Разве это показывает все, чему ты за 5 лет научился?
Аноним 11/09/20 Птн 12:12:25 1803482149
>>1803478
Вообще то это дохуя.
Аноним 11/09/20 Птн 12:16:20 1803483150
>>1803482
Человеку с 4 годами опыта (если там опыт какой-то есть конечно) программирования это задача на 2 вечера.
Аноним 11/09/20 Птн 12:22:12 1803485151
>>1803483
Шрифты и поиск? Ахаха, удачи. Ну естественно если речь не идет о вставить готовый компонент типа RichEdit.
Аноним 11/09/20 Птн 12:23:00 1803486152
>>1803474
А для чего учатся программисты си? Ты для чего учился? Мигать светодиодом?
Аноним 11/09/20 Птн 12:25:13 1803487153
>>1803483
Если использовать готовые либы то да, за 2 вечера можно взять какой-нибудь imgui и юзать просто textbox. С нуля даже просто отрисовку текста пиздец как сложно сделать.
>>1803470
Сомневаюсь, что тебе в вузе разрешат такое брать на диплом. Я вот тоже хотел на плюсах что-то низкоуровневое на дипломе писать, так меня нахуй послали и сказали "А КАК ЭТА МОЖНА ИСПОЛЬЗАВАТЬ В БИЗНЕСЕ??7" ну и пошел делать сайт на шарпе...
Аноним 11/09/20 Птн 12:31:04 1803492154
>>1803249
У меня на работе один чувак называет их "лысыми указателями"
Аноним 11/09/20 Птн 12:34:49 1803494155
>>1803485
>>1803487
Извините, парни. Совсем забыл где посчу.
>>1803486
Сочетаю образование физика с образованием софтварного инженера и работаю в лабе по изучению виртуальных частиц. Светодиодами мигать тоже умею.
Аноним 11/09/20 Птн 12:38:55 1803497156
>>1803494
Ничего страшного, малыш. Если попробуешь отрендерить шрифт со всеми нюансами выключки, скейлинга, кернинга, трекинга, сглаживания, прокрутки без глюков, немного собьешь спесь, может за полгодика научишься рисовать что-то более менее сносное.
Аноним 11/09/20 Птн 12:39:38 1803499157
>>1803494
Ну понятно, то есть ты в общем то и не программист, а так, readByte()
Аноним 11/09/20 Птн 12:45:07 1803509158
>>1803497
Дедуль, чтобы получать свои 13к евро в месяц мне не нужно дрочить никакие шрифты, это прерогатива людей уровень развития которых остался на уровне текстовых редакторов в качестве дипломки.
>>1803499
>с образованием софтварного инженера
Даже близко не он, сижу код за другими комментирую.
Аноним 11/09/20 Птн 12:45:59 1803512159
>>1803509
>13к евро
Извините СТО гугла не признал вас.
Аноним 11/09/20 Птн 12:48:47 1803514160
>>1803509
Ну то есть написать редактор текста ты не сможешь, так и запишем.
Аноним 11/09/20 Птн 13:13:17 1803537161
>>1803514
Я тебе уже всё сказал - суметь скопировать нотпад это тир 5 навык. С таким подходом ты один хуй через полгода-год перекатишься в веб.
Аноним 11/09/20 Птн 13:18:04 1803543162
>>1803537
А что тогда тир 1? Написание "умных" штучек с нейронками на питоне в 6 строчек?
Аноним 11/09/20 Птн 13:23:26 1803547163
>>1803537
Ну ок, для такого маэстро как ты не составит труда показать легкость тир5, сейчас как выходные будут, значит сможешь сделать такую легкую вещь как копия нотпада за вечер, верно? Ты же не пустозвонный тролль.
Аноним 11/09/20 Птн 13:24:53 1803550164
>>1803483
Какая связь между временем на реализацию, и временем на то, сколько нужно учить компьютерные науки, чтобы уметь это написать?
А главное, причем тут опыт (который нарабатывается в коммерческих компаниях) и академическое обучение?
Аноним 11/09/20 Птн 13:33:28 1803553165
>>1803550
Забей, это троль(малолетний дебил) категории /math.
Аноним 11/09/20 Птн 13:39:24 1803561166
>>1803543
Точно не изобретение жигуля и претензия на то, что это ауди.
>>1803547
Обязательно. Ты ещё методичку скинь, я тебе и диплом с 0 напишу. О, и адрес, адрес тоже. Я тебе свою тян пришлю, поебёшься на халяву.
>>1803550
В условиях постсоветского ущербного образования - связи никакой. В то время как в Европе и Северной Америке 4 года обучения выдают абсолютно готовых к комерческой деятельности спецов методички Священной в лучшем случае к 4 курсу высрут человека способного выёбываться умением в рендеринг текста. Плюсом идёт всеобщее ебланство, но об этом даже говорить не приходится.
Аноним 11/09/20 Птн 13:40:10 1803562167
Имеется следующий класс
class Alpha {
Alpha(const Alpha& a){/.../}
};
Какие члены класса в данном случае будут автоматически определены при создании класса?

Ответьте пожалуйста.
Я тупой бака.
Аноним 11/09/20 Птн 13:53:46 1803568168
Хееееелп.
Аноним 11/09/20 Птн 13:57:50 1803575169
>>1803561
>4 года обучения выдают абсолютно готовых к комерческой деятельности спецов
Ну то есть это уровень ПТУ, а не Вузов, которые должны давать научные знания, понятно.
Аноним 11/09/20 Птн 13:59:18 1803576170
>>1803561
Ясно, и тян у тебя есть, угу, и $13к, совсем не тролль. А блокнот написать не можешь. Вся суть выебывальшиков-наебщиков.
Аноним 11/09/20 Птн 14:01:20 1803577171
>>1803561
>>1803470
Вот тебе пример тем дипломов из моей шараги. Мб что-то подойдет

«Разработка стохастического метода оптимизации на основе механической аналогии»
«Анализ вариабельности сердечного ритма»
«Модификация комплекса ПА9»
«Создание платформы для локального развертывания клиентской части веб-приложений»
«Разработка клиентской части информационной системы по организации гоночных такси»
«Модельно-ориентированное проектирование в основе программирования логических интегральных схем»
«Исследование многосеточных методов решения систем линейных алгебраических уравнений»
«Разработка модуля экспорта для системы проектирования калибров для профилегибочного производства»
«Разработка витрины интеллектуального анализа данных биржевых операций»
«Исследование режимов максимальной и минимальной диссипации механической энергии в простейших силовых сетях методами математического моделирования»
«Динамический и прочностной анализ робота-манипулятора»
«Разработка программной реализации удаленного запуска графоориентированных решателей систем инженерного анализа»
«Разработка хранилища данных для анализа биржевых операций»
«Разработка приложения для организации бизнес-процессов проектирования ПО»
«Оптимизация хранения медицинских данных на основе использования технологии блокчейн»
«Численное моделирование движения многосекционного бурильного инструмента внутри скважины»
«Разработка системы детектирования дороги для мобильного робота»
«Разработка информационной системы автоматизированного доступа к онлайн-сервису товаров и услуг»
«Разработка безопасного генератора случайных чисел в блокчейне»
«Разработка серверной части информационной системы для заказа скоростного такси»
«Разработка мобильной части программно-аппаратной системы голосового управления транспортным средством»
«Модельно-ориентированное проектирование в основе программирования микроконтроллеров»
«Разработка NX приложения для редактирования размерных цепей в ТУ»
«Использование концепций создания пользовательского интерфейса для кроссплатформенных приложений на основе UX-исследований»
«Разработка Web-ориентированных CASE инструментариев для автоматизации генерации объектов на основе шаблонов»
«Разработка пользовательского интерфейса инвестиционной игры с использованием Unreal Engine 4»
«Исследование масштабируемости работы серверного программного обеспечения в «облачной» инфраструктуре»
«Разработка редактора нейтрального слоя профилей для системы проектирования калибров профилегибочного производства»
«Разработка подсистемы структурного анализа сложных изделий»
«Разработка аналитической подсистемы для исследования банковских операций юридических лиц»
«Разработка web-ориентированных CASE инструментариев автоматизации построения исходных кодов графоориентированных решателей»
«Разработка нейросетевого ансамбля для прогнозирования банкротства ресурсоснабжающих предприятий»
«Разработка автоматизированной системы поддержки трейдинга»
«Разработка WEB-аналитической подсистемы исследования цифровых биологических сигналов»
«Разработка редактора профиля для системы проектирования калибров профилегибочного производства»
«Разработка подсистемы визуализации для системы проектирования калибров для профилегибочного производства»
(хвост по КП за прошлый семестр) «Разработка математической модели амортизатора самолета для комплекса ПА9»
«Разработка системы автоматизированного проектирования приложений среды ROS»
«Исследование распределения статического заряда по поверхности проводящего тела»
«Разработка программного комплекса для линеаризации избыточных механических структур»
«Разработка архитектуры и реализация программного комплекса оптимизации робототехнических приложений»
«Разработка веб-приложения для визуализации многомерных данных»
«Анализ конечно-элементной сетки в приповерхностном слое изделия, усиленного «наклепом»
«Динамический и прочностной анализ элементов механизма перекоса винта вертолета»
«Машинное обучение на основе непрерывных динамичечких систем»
«Реконструкция эффективных кривых деформирования ПКМ на основе аппроксимации кривых деформирования отдельных компонентов ПКМ»
«Разработка информационной системы балансирующего рынка электроэнергии»
«Разработка модели деформации листовой заготовки при формовке роликами в системе LS DYNA»
«Разработка web-приложения для визуализации многомерных дан-ных»
«Исследование динамики контактных сил в неконсервативных упругих системах»
«Разработка эффективного алгоритма поиска с возвратом на основе эвристик»
«Разработка распределенного комплекса дистрибуции программного обеспечения»
Аноним 11/09/20 Птн 14:01:45 1803578172
>>1803562
Вроде бы деструктор всегда, копи конструктор потому что класс простой, все остальное отключено явным конкструктором копирования. Могу ошибаться, я не эксперд в стандарте.
Аноним 11/09/20 Птн 14:04:03 1803579173
>>1803578
Так какие члены классов? Что преподу сказать?
Аноним 11/09/20 Птн 14:04:52 1803581174
>>1803579
Я ж назвал. Но это не точно.
Аноним 11/09/20 Птн 14:06:08 1803583175
>>1803581
Деструктор и конструктор?
Аноним 11/09/20 Птн 14:08:45 1803587176
>>1803583
Ой, блин, я имел в виду деструктор и оператор копирования.
Аноним 11/09/20 Птн 14:11:35 1803589177
>>1803577
Не вижу здесь ничего смежного с "Текстовым редактором".
Аноним 11/09/20 Птн 14:18:47 1803594178
>>1803589
> «Разработка редактора профиля для системы проектирования калибров профилегибочного производства»
А вообще одна хуйня типа посчитать говно по формуле. Вообще не программирование. Зато лохчейны порадовали, но вот там реально на 2 вечера работы.
Аноним 11/09/20 Птн 14:44:15 1803610179
>>1803594
>«Разработка редактора профиля для системы проектирования калибров профилегибочного производства»
Так при чём тут текстовый редактор со шрифтами, поиском редактированием?
Аноним 11/09/20 Птн 14:52:26 1803615180
а блокнот и не надо на крестах писать
на как не нужно - "движок" то все равно придется на си или крестах писать
но нужен быстродействующий высокоуровневый скриптовый язык, он должен лежать в основе любого редактора
что больше всего бесит в емаксе и виме? - это емакслисп и вимскрипт
бесит просто до зубовного скрежета
но коммьюнити вложило в эти редакторы миллионы человеко-часов, и все продолжают стонать и писать на этих хуевых скриптовых расширениях

Аноним 11/09/20 Птн 14:57:44 1803618181
>>1803615
>стонать и писать на этих хуевых скриптовых расширениях
Для авторов может и да, а у меня они просто работают, стонать не приходится.
(не отрицаю их хуёвость).
Аноним 11/09/20 Птн 15:00:05 1803620182
>>1803610
>смежного
Действительно, ты же аутист.
А это тоже не смежное?
>Использование концепций создания пользовательского интерфейса для кроссплатформенных приложений на основе UX-исследований
>Разработка web-приложения для визуализации многомерных дан-ных
Это еще в разы проще.
Аноним 11/09/20 Птн 15:08:55 1803628183
>>1803620
Это становится всё менее смешным. Если 1 ещё можно хоть как-то притянуть то каким образом здесь клеится веб приложение с визуализацией?
Аноним 11/09/20 Птн 15:19:30 1803641184
Можно ли в VS2019 увидеть где в коде ещё используется переменная как в Notepad++, там при двойном клике на слове оно выделяется везде где встречается в том числе и на прокрутке, в VS только в текущем окне.
Аноним 11/09/20 Птн 15:24:05 1803650185
>>1796605 (OP)
Что учить после шаблонов и контейнеров?
Аноним 11/09/20 Птн 15:25:05 1803653186
>>1796605 (OP)
Что учить после шаблонов и контейнеров?
Хочу на джуна пойти 19 годиков 0 опыта.
Аноним 11/09/20 Птн 15:25:21 1803654187
Аноним 11/09/20 Птн 15:30:15 1803661188
>>1803654
Задачки которые в унике дают делаю. А если делать свой проект то на матан времени не хватит. Думаю забить хуй на задачки уника и делать что-то своё, тупа списывая у одногруппов дз
Аноним 11/09/20 Птн 15:32:05 1803664189
>>1803661
В реальной работе матан нахуй никому не нужен, кроме машинлернеров и дата сатанистов. Даже обидно, что на него тратить время надо.

Но тем не менее - читай книги по всякому С++20 и старайся писать код
Аноним 11/09/20 Птн 15:33:11 1803665190
>>1803664
Матан не нужен прикладному математику?!
Спасибо за ответ, удачи анон.
Аноним 11/09/20 Птн 15:33:16 1803666191
>>1803628
То есть шрифт - это не визуализация? Ок.
Аноним 11/09/20 Птн 15:41:57 1803676192
>>1803666
Я тебя понял. Отвечаю последний раз и ухожу на работу а ты продолжаешь троллить своей тупостью других.

>визуализации
Не принта, а именно визуализации
>многомерных дан-ных
Это могут быть данные любого вида. Что подразумевает что текстового вывода здесь может вовсе не быть

В подобного рода проектах тебе нужно будет реализовать оптимизацию быстродействия и защиту от битых данных/устранение шумов etc. а не ебаться со шрифтами.
Аноним 11/09/20 Птн 15:44:00 1803677193
>>1803665
Я хуй знает на кого ты учишься. Я системный программист, опыта пошел 7ой год. Никакая математика не пригождалась ниразу.
Аноним 11/09/20 Птн 16:18:35 1803713194
>>1803497
>отрендерить шрифт со всеми нюансами выключки, скейлинга, кернинга, трекинга, сглаживания, прокрутки без глюков
ага, а потом понимаешь что это все костыли-костылики
а идеал это растровый шрифт + система с выстовленным ppi==dpi (и да, винда тут уже не подходит)
Аноним 11/09/20 Птн 16:22:17 1803716195
>>1803713
С растровым шрифтом это никуда не денется.
Аноним 11/09/20 Птн 16:25:15 1803720196
>>1803676
Ты считаешь что в шрифтах не надо ебаться с быстродействием? Лол, я понимаю если бы мы сидели в js треде, но в с++ такие перлы выдавать это конечно лол.
Аноним 11/09/20 Птн 16:37:49 1803731197
>>1803716
чому?
с растровым шрифтом нужно только воткнуть картинку этого шрифта и все
Аноним 11/09/20 Птн 17:13:49 1803770198
>>1803470
Я бы на защите спросил а зачем миру ещё один редактор ?
А команды TECO вы знаете, молодой человек?
Аноним 11/09/20 Птн 17:50:22 1803790199
>>1803654
И оглядывайся на примеры (хорошего) кода. Почитай, как другие люди пишут. Передирай у них удачные моменты. Как они оформляют код, как его организуют, как устроены и работают программы.

Вот можно поковырять исходники:
- Библиотека xerces-c. Это XML парсер. Очень чисто написана.
- Стандартная библиотека, которая прилагается к твоему компилятору. Поковыряй, как там написаны контейнеры, например.
- Исходники игр, игровых движков. Doom 2, Doom 3, Unreal
- Исходники всякого софта, вроде Linux, FreeBSD, Libre Office, Apache, Chromium Browser

Разработай свой собственный styleguide для того кода, что ты сам пишешь.
Аноним 11/09/20 Птн 17:53:44 1803796200
>>1796605 (OP)
Как же меня рожа этого Александреску на первой картинке бесит. Так и хочется в неё кирпичом запульнуть. Ну почему программисты сплошь и рядом выглядят не как фотомодели?
Аноним 11/09/20 Птн 18:08:42 1803804201
>>1803790
>примеры (хорошего) кода
>Стандартная библиотека, которая прилагается к твоему компилятору
Ебанутый?
Там же тысячи строк #ifdef __CXX_EXPERIMENTAL_CXX0X__ костылей под разные версии крестов/архитектуры/ОС с __gnu_debug_std::__М_такими_именами_переменных___ и мудацким форматированием пробелами пополам с табами.
Аноним 11/09/20 Птн 18:13:16 1803810202
>>1803770
Но ведь все существующие говно.
Аноним 11/09/20 Птн 18:33:38 1803816203
>>1803731
Потому что большая часть перечисленного касается больше расстановки буковок, какими бы они не были (растер/вектор). А если масштабировать шрифт (растр то у тебя под 1 размер будет), то и со сглаживанием тоже возиться.
Аноним 11/09/20 Птн 18:34:16 1803818204
>>1803796
Это ты еще ролевиков-настольщиков не видел.
Аноним 11/09/20 Птн 18:41:16 1803824205
>>1803796
The third picture is pretty badass, though.
Аноним 11/09/20 Птн 19:00:41 1803831206
>>1803824
хз, саттер еблом похож на шимпанзе
Аноним 11/09/20 Птн 19:17:52 1803842207
Напомните как специализироватб функции.

Вот есть типа определение
template<class...> void foo();

вот специализации для пустого и непустого списка типов
template<> void foo<>() { cout << ".\n"; }

template<class T, class... Ts>
void foo<T, Ts...>()
{
cout << typeid(T).name() << " ";
foo<Ts...>();
}

Но оно во-первых не компилится, а во-вторых определяется как перегрузки, а не специализации. Где я проебался?
Аноним 11/09/20 Птн 19:21:22 1803848208
Аноним 11/09/20 Птн 19:26:17 1803852209
>>1803848
Само собой. Я, конечно же, говорил о работающих в не-текстовых режимах.
Аноним 11/09/20 Птн 19:29:44 1803854210
>>1803842
Вроде бы template void foo<T, TS...>()
Аноним 11/09/20 Птн 19:48:45 1803860211
>>1803804
Нуу. Пусть это не хороший код, но тоже экспириенс на тему "вот так тоже бывает". Разве не интересно, как устроены и работают вот эти самые контейнеры, про которых столько говорилось?
Аноним 11/09/20 Птн 19:55:36 1803862212
>>1803831
У нас опенспейс, и мне приходится буквально целыми днями просиживать, вперясь в ебло соседа-программиста. И кодить-кодить-кодить. Не видя ничего кроме компа и офиса.

Уже не уверен, правильно ли я выбрал профессию. Вон - адвокаты. Постоянно какая-то драма, люди всякие, интересные случаи, поездки, трепаться надо. А тут што?
Аноним 11/09/20 Птн 20:16:38 1803874213
>>1803862
Потому что кодить надо для души и себя, а работы в ИТ кроме кодинга полно. Я вот хожу на работу, пью чай, скролю двачи и попутно запускаю скрипты на PowerShell, которые делают почти всю работу за меня. А платят как местным макакам, которые по 12 часов сидят за мониторами и не могут даже пернуть. Ещё и ходят на работу по СКУДу, повинуясь бездушной машине, считающей их часы и опоздания.
Аноним 11/09/20 Птн 20:41:43 1803891214
>>1803537
>суметь скопировать нотпад это тир 5 навык.
Лолват. Тир 5 пять это window gdi, функции отрисовки которого дёргает нотепад.
Аноним 11/09/20 Птн 21:44:57 1803952215
>>1803874
Ещё одна трабла - преимущественно мужской коллектив. Что в инсте одни мужики, что на работе. Где-б няшных тяночек найти? Меня от мужиков уже воротит.
Особенно на работе. В инсте все молодые, а тут какой-то мрак.
Аноним 11/09/20 Птн 22:09:51 1803971216
>>1803790
> Исходники всякого софта, вроде Linux, FreeBSD

Хочется почитать исходники разного ПО, но вот без навигации по вызовам функции, подсветка используемых переменных и прочего крайне не просто.
Какой редактор может просто "сожрать" папку с исходниками по которым хоть как-то можно будет перемещаться?
Аноним 11/09/20 Птн 22:18:56 1803976217
>>1803562
Закинь в cpp insights и посмотри
Аноним 11/09/20 Птн 22:21:54 1803981218
>>1803860
Да хуй ты там разберёшься без 0.5
Аноним 11/09/20 Птн 22:24:19 1803984219
>>1803577
Не знал, что здесь кто-то с РК6 сидит...
На плюсах пишешь что-то?
Аноним 11/09/20 Птн 22:34:17 1803994220
>>1803984
кто-то сидит -_-
кто-то пишет.
Аноним 11/09/20 Птн 23:19:55 1804029221
Куда вкатиться на плюсы в москве джуном? Около часа листал хх, обнаружил штук 10-15 вакансий на весь город. Так и должно быть?
На джаве в разы больше почему-то.
Аноним 11/09/20 Птн 23:32:01 1804038222
>>1804029
Недавно листал, довольно много вакансий.
Правда, я не джунов листал.
А хуле ты хотел?
На джаве больше вакансий по всему спектру скилла, да.
Аноним 12/09/20 Суб 01:50:47 1804108223
>>1803816
не, я так подогнал чтобы без масштабирования были, чтобы чисто точка в пиксель горела



Аноним 12/09/20 Суб 08:39:55 1804170224
Парни, завтра собеседовать челов на джунов. Первый раз такое да. Хз что спрашивать даже. Что вообще джуны знать должны? А то боюсь планку завысить
Аноним 12/09/20 Суб 10:37:53 1804230225
>>1804170
Пару задачек на логику придумай, спроси про современне фишки языка - чтобы не шарахались от твоего проекта. Указатели умные; попросить записать из двух потоков в один ресурс; виртуальный деструктор; мув-семантика; crtp, специализация шаблонов;
Спроси, читал ли он/она какие-нибудь книги и что оттуда вынесли.
Ну и правило номер ноль: если от кандидата воняет, то с собеседованием нужно не затягивать.
Аноним 12/09/20 Суб 14:21:59 1804382226
Вопрос по поводу архитектуры сервера. Сначала идет команда, потом данные. Даннве и команду отправить в одном запросе или сначала отправляю команду, а в следущем запросе данные что мне кажется более плохим вариантом. Тогда мне лучше придумать для каждой команды свой код, чтобы размер команды был одинаковый для любой команды?
Аноним 12/09/20 Суб 15:03:08 1804395227
>>1804382
Эти два сообщения в любом случае попадут в один буфер сокета. Даже если ты как-нибудь сумеешь разделить их при отправке, со стороны приема всё в один буфер улетит.

Можешь сначала посылать пару байтов, сигнализирующих, что это команда либо данные. Потом размер команды\данных. А после уже данные согласно размеру.
Аноним 12/09/20 Суб 15:11:31 1804398228
>>1804395
Спасибо. Раньше никогда не писал чего то большого. Обычно задачи какие нибудь решал или редко что то для себя. Там обычно так: есть идея, чуть обдумал, может на листике че то написал и записал на компе. Тут блин нужно сначала продумать заранее как оно все будет работать, а потом писать, иначе хуйня получится
Аноним 12/09/20 Суб 15:12:14 1804399229
>>1804382
я бы выбрал уже существующий протокол обмена (бинарный или текстовый) и использовал его
либо бы готовую реализацию, либо, если бы захотелось велосипедостроения, то сделал бы сам по существующим спекам
но даже второе не советую
а "проектировать" свой протокол это надо очень умным и опытным быть
раз ты задаешь такие вопросы, ты явно не из тех ребят
Аноним 12/09/20 Суб 15:14:48 1804402230
>>1804395
> Эти два сообщения в любом случае попадут в один буфер сокета.
Как будет время я это на компе проверю . Да и вообще уточню как boost данные обрабатывает, но вопрос тогда. Раз сообщения с любом случае попадут в один буфер, то как тогда данные скачивают большие. Программы не хранят же в буфере 10гб игры. Скачали кусок, очистили буфер. Как я понимаю. Ну я по идее тоже так смогу. Ну и так буду разделять сообщения
Аноним 12/09/20 Суб 15:16:16 1804403231
>>1804399
Ну не будет же в интернете конкретного протокола под мои цели.
Аноним 12/09/20 Суб 15:36:48 1804413232
Аноним 12/09/20 Суб 16:21:28 1804443233
>>1804382
В заголовке сообщения передаешь метаданные (ID команды, бла-бла), затем в теле сообщения сами данные. Отправляешь как единое целое.
Аноним 12/09/20 Суб 16:32:21 1804449234
посоны, поступил в вузик, будет с++, сказали будем работать по книге "всеволод иванов прикладное программирование на с/с++ с нуля"
по отзывам - книга максимальная хуета, или для сойдёт?
Аноним 12/09/20 Суб 16:34:11 1804451235
image.png 83Кб, 933x770
933x770
>>1804449
Проорал с ТУРБО СИ.
Аноним 12/09/20 Суб 16:39:31 1804454236
>>1804451
>не учат boost ряяяяя
Сейчас бы "учить" библиотеку
Аноним 12/09/20 Суб 16:40:55 1804455237
>>1804454
Ну изучатели буста это отдельная секта, солидарен. Но ТУРБО мать его СИ. Серьезно. Даже в 2010 это был лол кек чебурек. А уже в 2020 подавно.
Аноним 12/09/20 Суб 16:43:21 1804456238
>>1804449
На самом деле не важно.
Ну, то есть, понятное дело, что книга говно. Как и Turbo C.

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

А в каком там виде вам будут хеллоу-ворлды демонстрировать — на мой взгляд без разницы.

>>1804455
Да, к остальному не придираюсь, очень смешно.
Аноним 12/09/20 Суб 16:44:24 1804458239
>>1804451
>>1804455
что делать тогда? шилдт или страуструп?
Аноним 12/09/20 Суб 16:46:00 1804459240
>>1804456
ебаться самому и придётся, да, похуй, чего не сделаешь ради вылеза из говен не спиться бы в общаге, лол
Аноним 12/09/20 Суб 16:53:03 1804464241
>>1804458
Я по страуструпу в свое время выучил со статьями по отдельным непонятным темам. Вроде даже хорошо получилось.
Аноним 12/09/20 Суб 16:57:52 1804468242
>>1804458
Му Липман, Лажойе, C++ Prime

Мне зашло, 150 стр до конца осталось
Аноним 12/09/20 Суб 17:14:02 1804475243
>>1804402
Ты вызов read() видел? Ты ему задашь считать 10ГБ, а функция вернет что считал, например, 1 Мб. По хорошему ты её в цикле вызываешь, до тех пор, пока все данные не будут считаны. Параллельно, при достижении определенного размера буфера, пишешь в файл, чтобы не держать всё в оперативке.
Аноним 12/09/20 Суб 17:15:06 1804477244
[code]
std::test
[/code]
Аноним 12/09/20 Суб 17:19:25 1804480245
>>1804458
Так себе С или С++?
Для С есть другой тред, в конце концов бери Кернигана и Ричи. Тоненькая книжечка просто и лаконично описывает язык.
Для С++ Липпман и Прата, Шилд ещё (синенькая такая кажется, в чём-то устарела наверняка, но для примитивного уровня достаточно)
Аноним 12/09/20 Суб 17:30:34 1804492246
>>1804480
c++ именно
спасибо за советы
Аноним 12/09/20 Суб 18:07:08 1804532247
>>1804382
Собираешь в достаточно большом буфере команду фиксированной длины, длину данных и данные, сколько влезет. Пишешь в сокет. Продолжаешь писать остаток данных.
Аноним 12/09/20 Суб 20:44:48 1804675248
Аноны, спрошу тут. На работе есть большая прога, ~3 МБ исходников, написана 50/50 в С/С++ -стиле В ней проблемы с памятью, работает в 95% при компиляции в VS2008 в релизе, в дебаге падает с рандомными ошибками assess violation и т.д, в VS2015 работает неправильно и иногда падает.

Прошу советов как это можно дебажить.
Есть ли какая-нибудь прога чтоб туда логи сырой памяти структуры вставить и ее описание и посмотреть как со временем значения в этой структуре менялись? (околориалтайм и взаимодействие с несколькими железками, брейкпоинт в студии только 1 раз поставить можно, после всё собьётся и перезапуск и всё чуть по другому будет)
Аноним 12/09/20 Суб 21:30:22 1804731249
>>1804675
Для начала пройдись статическими анализаторами, например clang-tidy.
Потом прикрути формирование дампов, узнаешь хоть, где вылет происходит.

Напиши пару тестов на предполагаемые методы. Введи логирование входных/выходных данных.
Поиграйся с брейкпойнтами в студии: им можно задавать условия или смотреть количество срабатываний без остановки программы.


> большая прога
> ~3 МБ исходников
Лол

Аноним 12/09/20 Суб 21:41:22 1804737250
>>1804731
Скомпилируй шлангом и натрави дохуя всех санитайзеров
Аноним 12/09/20 Суб 21:50:54 1804745251
Стоит ли вкатываться в Qt если собираюсь делать приложения только под винду? Вообще считаю что Unix подобные системы должны сдохнуть, это тупиковый путь развития
Аноним 12/09/20 Суб 21:58:54 1804752252
По моей задумке пользователь в браузере должен сгененрировать карту и потом сохранить ее на сервер. При этом нужно исключить момент, когда два человека случайно создали одну карту. Карт может быть, много, хоть и весят они мало. Сравнивать все созданные карты с только что созданной выглядит долго. Заранее создать пул со всеми возможными картами тоже кажется не идеальным решением. Потому что размеры могут быть любыми. Конечно можно сначала создать пул сначала с размерами до 100x100 например , а потом его расширять, но тогда будет много не используемых карт, но место занимающих. Вероятнее всего, проблема не нова, и уже есть какое то оптимальное решение.
Аноним 12/09/20 Суб 22:06:14 1804761253
>>1804752
Хотя можно наверное и оставлять дублткаты. Возможно ничего страшного не случится, если будут созданы 2 одинковые карты. Единственный мнус в том, что когда пользователь будет потом искать карты, он может найти две одинаковых. хотя можно будет вручную такое отслеживать переодически, в моменты, когда сервер не нагружен и дубликаты сливать в один элемент.
Аноним 12/09/20 Суб 22:49:57 1804791254
>>1804731
>Для начала пройдись статическими анализаторами
PVS Studio юзаю, оно норм?
>прикрути формирование дампов
Как правильно это сделать, чтобы
>узнаешь хоть, где вылет
если они в рандомных местах
>Напиши пару тестов
Почти вся прога - симуляция физических процессов, написана давно не нами, вообще хз что там внутри происходит (принимает структуру 1000+ полей)
>Введи логирование входных/выходных данных
Вот я и хочу с минимальной болью это сделать, сохранять ту структуру на каждом такте работы, что может её потом из лога в виде дерева показать как в отладчике студии?
>Брейкпоинты, задавать условия
Уже мало помогает

>>1804737
>шланг
?? это clang?

На с++ полгода, на 800 строк максимум проги делал, для меня пиздец большая
Аноним 12/09/20 Суб 23:32:42 1804825255
>>1804791
> структуру 1000+ полей
Пока декомпозицию не проведешь, ничего не получится.
Аноним 12/09/20 Суб 23:48:43 1804841256
>>1804675
Оберни все new delete.чтобы искать memory corruption
Аноним 13/09/20 Вск 00:30:56 1804856257
>>1804841
Дедуля, уже давно есть asan
Аноним 13/09/20 Вск 03:14:18 1804901258
Аноним 13/09/20 Вск 05:06:35 1804917259
1599465569772.gif 412Кб, 220x139
220x139
>>1796605 (OP)
Помогите студню-дебилу
Из навыков программиста обладаю только умением гуглить поэтому нашёл решение своей задачи на спп
Проблема такая - возможно ли перевести это решение на python или pascalABC.net? я НЕ прошу переводить просто подскажите софт/идеи, ибо я совершенно не знаю спп, а сроки горят. Ну или нахуй пошлите тоже можно
Собственно код:

#include <iostream>
#include <vector>
#include <algorithm>
#include <set>
#include <cstdlib>
#include <cstdio>
#include <ctime>

using namespace std;

int main() {
int n, m;
scanf("%d%d", &n, &m);
int a[n], prev[n], next[n], maxlt[n], maxrt[n];
int maxNow = 0;
for (int i = 0; i < n; ++i) {
scanf("%d", &a);
if (!i) {
prev = (a == 0) - 1;
maxlt = a;
} else {
prev = prev[i - 1];
maxlt = max(maxlt[i - 1], a);
if (a == 0) {
prev = i;
}
}
if (a == 0) {
maxlt = 0;
}
}
for (int i = n - 1; i >= 0; --i) {
if (a == 0) {
next = i;
maxrt = 0;
} else {
if (i != n - 1) {
next = next[i + 1];
maxrt = max(maxrt[i + 1], a);
} else {
next = -1;
maxrt = a;
}
}
}
for (int i = 0; i < m; ++i) {
int l, r, h;
scanf("%d%d%d", &l, &r, &h);
if (next[l - 1] != -1 && next[l - 1] < r) {
printf("Yes\n");
continue;
}
if (prev[l - 1] != -1) {
if (maxlt[l - 1] < h) {
printf("Yes\n");
continue;
}
}
if (next[r - 1] != -1) {
if (maxrt[r - 1] < h) {
printf("Yes\n");
continue;
}
}
printf("No\n");
}
return 0;
}
Аноним 13/09/20 Вск 05:39:37 1804922260
>>1804917
Пашол нахуй гандон и лишние либы с собой забирай
Аноним 13/09/20 Вск 05:53:31 1804926261
>>1804917
Замени scanf на input и printf на print и у тебя получится прога на питоне
Аноним 13/09/20 Вск 08:59:00 1804971262
>>1804856
А он точно умеет все то же?
Аноним 13/09/20 Вск 09:04:19 1804975263
>>1804731
> Лол
Но это действительно дохуя. Boilerplate & Copy-paste.
Аноним 13/09/20 Вск 09:57:12 1804988264
Аноним 13/09/20 Вск 11:09:37 1805055265
Аноним 13/09/20 Вск 13:30:00 1805122266
>>1803187
ток какого страуса a tour of c++?
Аноним 13/09/20 Вск 13:38:39 1805136267
image.png 108Кб, 725x316
725x316
аноны обьясните плиз этот синтаксис, что делает двоеточие после функции Player?

class Player : public Entity
{
private:
string m_Name;
public:
Player(const string& name)
: m_Name(name) {}
string GetName() { return m_Name; }
};
Аноним 13/09/20 Вск 13:43:13 1805141268
>>1805136
Инициализация полей в конструкторе
Как бы
Player()
{
m_Name = name;
...
}
Аноним 13/09/20 Вск 13:44:43 1805145269
>>1805141
понял, большое спасибо!
Аноним 13/09/20 Вск 15:17:05 1805229270
>>1805122
Я про книгу Страуструпа "Язык программировния C++". Желательно читать 4-е издание, про C++11. Только вот он на английском. Перевода нет.
Ну можно ещё 3-е специальное издание. Но тогда ты будешь изучать старую версию плюсов. В новой многое поменялось.
Я рекомендую эти толстые книги. Именно в них расписана вся-вся-вся суть языка. А другие его книжки - фуфло, язык по ним ты не выучишь. Там дополнительная или обзорная информация.
Аноним 13/09/20 Вск 15:26:28 1805235271
>>1805141
Не совсем, у тебя сначала вызывается дефолтный конструктор для поля, а потом копирующий конструктор. После двоеточия только один вызов конструктора с аргументом.
Аноним 13/09/20 Вск 15:38:18 1805250272
>>1805235
nm_Name{name};
Исправит проблему или все равно дефолтный вызовется?
Аноним 13/09/20 Вск 15:39:53 1805252273
Аноним 13/09/20 Вск 15:49:39 1805260274
>>1805250
Только после двоеточия, ну или прямо в теле класса значением по умолчанию. Компилятор не знает, что ты будешь делать в теле конструктора, поэтому все члены класса так или иначе должны быть сконструированы до него, включая ссылки и объекты без дефолтных конструкторов.
Аноним 13/09/20 Вск 15:51:39 1805264275
>>1805252
Нет блять питон со структурами
Аноним 13/09/20 Вск 15:52:07 1805265276
>>1805264
а что в питоне нету структур?
Аноним 13/09/20 Вск 15:53:54 1805268277
>>1805265
Там по моему вообще динамическая типизация
Аноним 13/09/20 Вск 15:58:44 1805269278
>>1805229
мб с++11 тоже устарел ещё 14 17 и 20 успели появиться
Аноним 13/09/20 Вск 16:18:10 1805290279
>>1805269
Там уже в целом не такие большие потрясения.
Аноним 13/09/20 Вск 16:29:02 1805304280
>>1805269
>14 17
Ничего серьезного, по большей части синтаксический сахар и небольшие улучшения.
>20
Ещё пару лет на него только переходить будут, успеешь догнать
Аноним 13/09/20 Вск 18:11:48 1805394281
>>1805268
Звучит как пост для бугурт треда
ДИНАМИЧЕСКАЯ
@
ТИПИЗАЦИЯ


Кто вообще придумал неявные рантайм-проверки неявного же параметра назвать типизацией.
Аноним 13/09/20 Вск 20:26:58 1805559282
>>1805394
А потому, что каждый объект несёт свой тип. И это безумно мощно и удобно. Неявные проверки, кстати, в старину отключали в отлаженных программах.
мимо из лиспа
Аноним 13/09/20 Вск 20:32:09 1805573283
>>1805559
Объектов не существует, как и типов, есть только байты!
Нет б-га кроме Ричи и Страуструп пророк его. Покайтесь, ибо пиздец!
Аноним 13/09/20 Вск 20:39:46 1805587284
>>1805573
Каких еще байтов? Слов.
Аноним 13/09/20 Вск 21:00:07 1805603285
>>1805559
> И это безумно мощно и удобно.
Ну я в qt тоже могу в рантайме узнать какого класса объект каким методом меня вызывает, узнать все про его поля и методы, но требуется это обычно чуть чаще чем никогда.
Аноним 13/09/20 Вск 22:24:32 1805675286
>>1796605 (OP)
Пацаны! Кто программировал WinAPI GDI, подскажите плиз.
Вот есть такая функция GetDeviceCaps(), она для Device Context возвращает его характеристики, вроде разрешения экрана.
Меня интересует её параметр PLANES - количество цветовых плоскостей. Функция выдаёт мне тут 1.
Кто-нибудь, может объяснить, что это такое? Я понимаю, что есть BITSPIXEL - количество бит на пиксель (у меня 32). Оно может быть 8, 16, 24, 32. Это настраивается в Свойствах Экрана. Но PLANES?
Что это за плоскости такие? Нигде в официальной документации описания этого я не нашёл. Я слышал, в видеопамяти, бывает отдельно лежат массивы красных, зеленых и синих пикселей экрана. Друг за другом. Вот это и есть плоскости. Это правда? Если так, нахуя так странно делать, и какой прок мне знать их количество?

А ещё, мне хотелось бы знать про GDI - есть ли в нём способ получить прямой доступ к памяти, и рисовать прямо устанавливая цвета пикселей без вызова SetPixel(), т.к. это тормозит.
Вот в DirectX можно сделать Surface, для неё вызвать Lock() и получишь искомое. А в GDI можно? Что-то я это не нахожу.

Заранее спасибо, с меня сотни нефти.
Аноним 13/09/20 Вск 22:37:06 1805681287
>>1805675
> А в GDI можно?
Неа, директ и создали чтобы это обходить, гди слишком тормозной для игор. Я где-то слышал это даже изначально не мс разработка.
Про остальное хз, наверное что-то связанное с рендером на любом говне.
Аноним 13/09/20 Вск 22:37:50 1805682288
>>1805394
Это пиздос, когда нужно написать больше 30 строчек на питоне, ты вместо этого сидишь и дрочишь преобразования одних типов в другие, потому что явно сука нигде не указано, что функция возвращает и какого типа у неё параметры.
Аноним 14/09/20 Пнд 00:16:10 1805743289
>>1805682
очевидно что когда тебе нужно "преобразовывать" типы, то ты уже проебался
в лучшем случае делаешь костыль, а в худжем вообще используешь предложенный тебе программный код не по назначению
в этом и смысл статической типизации
Аноним 14/09/20 Пнд 00:38:50 1805754290
>>1805743
Я про свой экспириенс с питоном написал. Со статической типизацией у нас в треде проблем нет.
Аноним 14/09/20 Пнд 01:27:22 1805772291
>>1805743
Когда будешь писать что то сложнее laba.cpp, узнаешь зачем преобразовывают типы.
Аноним 14/09/20 Пнд 01:38:51 1805778292
>>1805675
> GDI
ПЧувак, одумайся. Оно тебя медленно сожрёт.
Не стоит вскрывать эту тему.
Аноним 14/09/20 Пнд 03:13:03 1805805293
>>1805252

Братан, сосредоточься лучше на девочках. Может там у тебя что-нибудь получится.
Аноним 14/09/20 Пнд 03:15:02 1805806294
>>1796900

Докерфайл видишь? Ставь докер на винду.
Аноним 14/09/20 Пнд 03:49:03 1805810295
>>1805772
> laba.cpp
20 лет назад написал уже
Аноним 14/09/20 Пнд 06:13:17 1805823296
>>1804988
Ты ж сказал
> Сравнивать все созданные карты с только что созданной выглядит долго.
А с хешированием надо сравнивать не все, а только где хеши совпали
Аноним 14/09/20 Пнд 06:24:41 1805824297
>>1805675
>есть ли в нём способ получить прямой доступ к памяти, и рисовать прямо устанавливая цвета пикселей без вызова SetPixel()
Да, посмотри GetBufferedPaintBits

Вкратце делаешь пару BeginPaint/EndPaint как обычно, внутри них делаешь пару BeginBufferedPaint/EndBufferedPaint, и внутри них уже вызываешь GetBufferedPaintBits чтобы получить буфер, куда писать пиксели
Аноним 14/09/20 Пнд 08:39:55 1805843298
>>1805675
> Planes
Плоскость может содержать для каждого пикселя один или несколько битов. Так делали для экономии памяти и упрощения адресации: 3-битный цвет удобно раскидать по трем плоскостям, например. А если тебе при этом нужно только 2 цвета, ты работаешь с одной плоскостью, а остальные две просто сидят в устройстве и забиты нулями. Современные драйверы, скорее всего, будут всегда содержать одну плоскость.
Аноним 14/09/20 Пнд 08:46:38 1805848299
>>1805823
Ну так в чем разница будет между хешем и картой? У меня при хранении карты лишних байтов нет.
Аноним 14/09/20 Пнд 09:32:32 1805865300
>>1805848
В том, что когда ты ищешь по хешу, ты не сравниваешь хеш каждой старой карты с хешем новой. Ты считаешь хеш новой, и он тебе сразу дает адрес "хранилища" всех остальных карт с таким же хешем, и дальше ты уже ищешь только среди них, сокращая количество перебора на порядки.
Что является "хранилищем" зависит от того, где это всё хранится. Если на диске, то хеш может использоваться как имя папки, например. Ну или если это добро целиком в память загружено, то можно просто в unordered_map все эти карты затолкать, и скормить ему функцию хеширования, остальное он сам сделает.
Аноним 14/09/20 Пнд 09:34:12 1805867301
Аноним 14/09/20 Пнд 09:40:11 1805879302
Аноним 14/09/20 Пнд 17:24:18 1806353303
Снимок.PNG 15Кб, 390x516
390x516
Сап аноны. Вот задача. Вот решение. Оцените:
Задача:
Вычислить число повторений в заданном разряде (не выше единиц тысяч)
случайного десятичного числа. Использовать оператор множественного выбора
switch и генератор случайных чисел rand(). Вывести результат.
Пояснение: нужно посчитать сколько раз будут повторяться цифры 0, 1 .. 9 в одной
из позиций числа для N случайных генераций числа.

Решение на пике
Аноним 14/09/20 Пнд 17:27:45 1806360304
Аноним 14/09/20 Пнд 18:21:20 1806406305
>>1806353
Нахуя тебе этот свич кейс если у тебя в любом случае независимо от результата ch%10 будет инкремент в sum[ch%10]? Можешь просто оставить sum[ch%10]++.
Аноним 14/09/20 Пнд 18:23:53 1806407306
>>1806406
я бы с радостью, но в задаче просят, чтоб свич точно был
Аноним 14/09/20 Пнд 19:19:32 1806451307
охуеть.png 15Кб, 673x261
673x261
Репетиторы с авито в конец охуели, анончик, может ты подскажешь почему компилятор схлопывается? В коде пытаюсь рандомному слову из вектора поменять символы на черточки:

#include <iostream>
#include <vector>
#include <algorithm>
#include <ctime>
#include <cctype>
#include <string>
using namespace std;
int main()
{
vector <string> words;
words.push_back("ooo");
words.push_back("oooo");
words.push_back("ooooo");
words.push_back("oooooo");
words.push_back("ooooooo");
srand(static_cast <unsigned int>(time(0)));
random_shuffle(words.begin(), words.end());
string theWord = words[0];
vector <string> changedWord(theWord.size(), "-");
for (int i = 0; i <= theWord.size(); ++i)
{
cout << changedWord;
}

return 0;
}
Аноним 14/09/20 Пнд 19:30:17 1806458308
>>1806451
Очевидно ты хотел написать string changedWord, а не vector<string> changedWord.
Аноним 14/09/20 Пнд 19:31:55 1806459309
>>1806451
Но цикл в любом случае бессмысленнен. Что ты считаешь? Количество букв в слове. И что дальше ты делаешь?
Аноним 14/09/20 Пнд 19:45:44 1806475310
>>1806451
Пидор демпингует, а ты в 2020 не можешь:

1)Скомпилировать сам и посмотреть какую ошибку компилятор выдает
2)Поискать её в гугле
3)Если на предыдущие пункты айкью не хватило, то хотя бы дать анончикам код в удобоваримом варианте, которые на доске описаны.

Поэтому этому соси хуй.
Аноним 14/09/20 Пнд 20:26:57 1806549311
>>1806451
700 рублей? Я бы с тебя минимум косаря 2-3 брал, лал.
Аноним 14/09/20 Пнд 22:40:39 1806709312
>>1806549
Да что такое 700 руб нынче? Это пшик!
Я их трачу за один поход в магаз за ёбаными продуктами. Или 1 раз пообедать в забегаловке.
Аноним 15/09/20 Втр 13:19:45 1807154313
>>1796605 (OP)
Есть где-то Argon2id/chukwa майнер, с поддержкой СUDA 8.0,
для GPU-майнинга Nvidia-видеокартами,
TurtleCoin-based монет с кастомными префиксами,
и прямо на daemon?
Насколько сложно заебенить такую хуйню?
Можно ли её заебенить, дополнив этот майнер https://github.com/turtlecoin/turtlecoin/tree/development/src/miner
какими-то cuda-файлами и задав кастомный префикс, в виде магического аргумента командной строки?

Не шарю в двух плюсах ваще.
Аноним 15/09/20 Втр 13:27:34 1807161314
image.png 235Кб, 409x405
409x405
Можете посоветовать ютуб канал где норм обьясняют плюсы, мне для ue4 надо, знаю некоторые темы поверхостно типа абстрактные классы виртуальные функции и тд но как то не уверен в своих знаниях, практики не было особо, например ща не знаю как реализовать поиск предметов в инвентаре для квеста, нужно написать предикат но я хз как, там еще и лямбду использовать надо которую я впервые вижу и это пугает, да и вообще не понимаю как эту документацию читать, https://docs.unrealengine.com/en-US/API/Runtime/Core/Containers/TArray/FilterByPredicate/index.html в синтаксисе одно а на примерах вообще другое вижу, простите за такой высер, если не канал то хотя бы дайте темы я там сам нагуглю
Аноним 15/09/20 Втр 15:53:49 1807296315
>>1807161
Что непонятного то? Вот у тебя массив предметов допустим items. Пишешь просто что-то вроде этого https://pastebin.com/g0PcxYnH и все.
Аноним 15/09/20 Втр 16:18:51 1807329316
XIoBwpLwhptStFu0.mp4 5390Кб, 720x720, 00:00:44
720x720
Приветики
Аноним 15/09/20 Втр 17:09:51 1807380317
>>1807161
>ютуб канал
Почитай условного Прату с C++ Primer или любую другую книгу из шапки. А так для твоей конкретной проблемы можешь поискать конкретные примеры на гитхабе. Вот первое, что попалось по запросу " "FilterByPredicate" TArray ":
https://github.com/MasteraVodoProvodchiki/frox-ue4/blob/5daa4e50467dcab4cd0f1104106be020e5da5fcc/Plugins/FroxPlugin/Source/FroxPlugin/Private/FroxComputeFlowAsset.cpp#L203
https://github.com/SheepShanker/UE4-4.23.1-release-toon/blob/37596dc49be3f95af5355422d942ad26ea7c4789/Engine/Source/Runtime/Online/BuildPatchServices/Private/Tests/Fake/ChunkReferenceTracker.fake.h#L39
Аноним 15/09/20 Втр 17:25:26 1807402318
>>1807329
какой же он долбоеб
Аноним 15/09/20 Втр 17:31:32 1807407319
>>1807329
Если плюсы не в правом верхнем углу политических координат, то что же там?
Аноним 15/09/20 Втр 17:32:54 1807408320
>>1807329
Такой чепушила от одной плюхи отлетит. Его вид дискредитирует крестобояр
Аноним 15/09/20 Втр 18:37:31 1807460321
>>1807329
Столкнуться с подобным на рабочем месте — мой основной страх перед трудовой эмиграцией. Как блядь насмотришься на этих хуесосов, настроение сразу падает.
Аноним 15/09/20 Втр 18:50:25 1807464322
Аноним 15/09/20 Втр 19:21:49 1807478323
>>1807161
ты роботаешь уже, челик?
или только учишся?
Аноним 15/09/20 Втр 19:23:12 1807479324
>>1807154
какой у тебя бюджет?
Аноним 15/09/20 Втр 19:51:38 1807501325
Аноним 15/09/20 Втр 19:57:03 1807505326
Аноним 15/09/20 Втр 20:30:56 1807533327
Аноны, подскажите, а бывают хипстерские digital-nomad c++ девелоперы в 2020? Или это только в потном офисе полном задротов сидеть и писать микрооптимизации? Я не троль, вопрос искренний
Аноним 15/09/20 Втр 21:27:06 1807580328
image.png 9Кб, 459x476
459x476
Почему char выводит 13? Я думал чар будет указывать на первый байт инта. Но он указвает на последний. Я не понимаю
Аноним 15/09/20 Втр 21:31:13 1807582329
>>1807580
У тебя последний байт идёт первым. Остроконечник сраный.
Аноним 15/09/20 Втр 21:35:10 1807585330
>>1807582
Блять. Я перепутал порядок.
Аноним 15/09/20 Втр 21:53:27 1807609331
image.png 14Кб, 1346x310
1346x310
>>1807582
стой. я не понял. На пике то как я понимаю числа представлены. Где ошибка?
Аноним 15/09/20 Втр 21:55:41 1807614332
Аноним 15/09/20 Втр 21:59:48 1807617333
Аноним 15/09/20 Втр 22:01:38 1807618334
>>1807617
Прикольно. Я как узнать какой порядок у меня, компилятора на левом сайте, и от чего от зависит?
Аноним 15/09/20 Втр 22:04:20 1807620335
>>1807580
Младший байт инта у x86[_64] это и есть первый его байт в памяти, Little Endian называется, гугли.
Аноним 15/09/20 Втр 22:06:22 1807625336
>>1807618
#include <bit>

if constexpr (std::endian::native == std::endian::big)
{
}
else if constexpr (std::endian::native == std::endian::little)
{
}
Аноним 15/09/20 Втр 22:09:20 1807629337
Аноним 15/09/20 Втр 22:10:15 1807630338
>>1807629
От архитектуры процессора.
Аноним 15/09/20 Втр 22:11:19 1807634339
>>1807629
Это зависит от железа, по большей части. При разработке на пк с big endian столкнешься пожалуй только в обработке изображений, да передаче данных по сети.
Аноним 15/09/20 Втр 22:11:43 1807635340
>>1807630
Фух. Мне возможно мой код надо будет с винды на линукс переносить. Думал мозгоебля обеспечена
Аноним 15/09/20 Втр 22:17:25 1807639341
>>1807618
Лучше всего прогать так, чтобы зависимости от порядка байтов не было. Не нужно из указателя на int извлекать char. Прочитай весь int, выдели char операцией типа & 0xFF.
Аноним 15/09/20 Втр 22:20:35 1807643342
>>1807639
Мне нужно данные с клиента на сервер принять, вот и ебусь. С клиента они пришли с порядке о большего к меньшему
Аноним 15/09/20 Втр 22:21:28 1807644343
>>1807643
Все эти обработки уже есть в стандартных сетевых либах.
Аноним 15/09/20 Втр 22:22:36 1807645344
>>1807329
Этот чувак кста делает вашу и мою любимую студию
Аноним 15/09/20 Втр 22:27:10 1807647345
>>1807645
Поэтому я использую VS code
Аноним 15/09/20 Втр 22:27:39 1807648346
>>1807644
Ну мне нужно отправить поле игровое. Я его так и отправлял. Привык, что порядок такой ну и отправил. А на сервере какая то ерунда началась. Когда вывожу в сыром виде, все ок, работает. Пытаться обработать, запихнуть в примитив через указатели и начинается что то странное.
Аноним 15/09/20 Втр 22:34:26 1807653347
>>1807647
Не только студию, но и поддержку студии в vs/vscode......
Аноним 15/09/20 Втр 22:34:44 1807656348
>>1807648
Чтобы что-то куда-то отправить (и где-то принять), нужно это сперва сериализовать в соответствии со строгим протоколом, иначе уязвимая система получится.
Аноним 15/09/20 Втр 22:40:15 1807665349
>>1807645
Он ее не делает, он пиздит и на конфочках выступает. Девелопер адвокат он, или чето такое
Аноним 15/09/20 Втр 22:45:54 1807669350
>>1807656
Ну как я это представил: первый байт тип команды, потом в зависимости от команды структура разная. Для команды сохранить поле структура такая: в начале 2 четырехбайтовых поля размера поля, а потом само поле в бинарном виде. Поле это по сути размеченый в клеточки прямоугольник, так что по размерам можно спокойно работать с полем. Двоичные данные приходят нормально, я проверил. Дальше что произошло я уже объяснил.
Аноним 15/09/20 Втр 23:30:35 1807712351
>>1807669
> четырехбайтовый размер
man ntohl
Аноним 16/09/20 Срд 01:03:23 1807776352
>>1807161
Ты как на работу устроился бля?
Аноним 16/09/20 Срд 01:06:30 1807779353
>>1807625
>if constexpr
У меня с++11...
Аноним 16/09/20 Срд 01:20:00 1807786354
>>1807779
Ну так перейди на c++17
Аноним 16/09/20 Срд 01:21:59 1807789355
>>1807786
Дома перешёл. На работе не перешёл.
Аноним 16/09/20 Срд 01:28:37 1807791356
>>1807789
а почему не перешел? Мы вон вообще все наши проекты мигрировали на С++17 + /permissive.

Как только выйдет новая студия - поедем на C++20, т.к. весь преворк уже сделан.
Аноним 16/09/20 Срд 01:36:48 1807795357
>>1807779
Тогда только дефайнами, а их уже подставляй из мейкфайла или что там у тебя.
Аноним 16/09/20 Срд 01:55:05 1807808358
>>1807791
Потому что проекты не мигрировали.
Аноним 16/09/20 Срд 01:55:49 1807810359
>>1807808
ну так в чем проблема взять и мигрировать? Чинишь ошибки компиляции пока не взлетит и всё.
Аноним 16/09/20 Срд 02:00:48 1807815360
Аноним 16/09/20 Срд 02:01:27 1807816361
>>1807810
Есть тысяча и одна причина, ты серьёзно сейчас? Или джун?
No offence
Аноним 16/09/20 Срд 02:34:42 1807828362
>>1807816
Нет я очень далеко не джун, я просто вьебал 3 дня и перевел все наши, и так достаточно хорошо написанные проекты. на С++17.

Единственное, конечно, что у нас все депенденси либо хедер-онли, либо не заброшенное говно.
Аноним 16/09/20 Срд 02:53:37 1807838363
У нас на одном из проектов в телекоме была либа написанная в стиле до-С89 скомпиленная в 95 году. Переписали ток в прошлом году на с++17 когда под изменения в спецификации надо было добавить небольшой функционал и то просто потому что тот сурц ни одним компилятором уже нахуй бы ни собрался
Аноним 16/09/20 Срд 03:27:25 1807846364
>>1807838
Надо было на Яву переписать
Аноним 16/09/20 Срд 03:30:05 1807847365
Мб кто то шарит, вот сделал курсач в clion сервер на линукс, стандартная библиотека + сокеты и даже в режиме отладки в clion он мгновенно отвечает, а как запускаю в рабочей среде, то все пиздец, ответ от моего сервера 10 секунд блять, да как так то?
Аноним 16/09/20 Срд 03:40:40 1807849366
>>1807847
ой бля, он в простое забивает одно ядро в 100%, да как так то
Аноним 16/09/20 Срд 04:51:12 1807859367
>>1807849
Слушает в бесконечном цикле, это нормально.
Аноним 16/09/20 Срд 05:10:03 1807868368
>>1807859
я уже нашел вроде, надо заPOLLить его, вроде должно скрыть очевидные недостатки
Аноним 16/09/20 Срд 06:39:05 1807885369
>>1807847
Вот она, непредсказуемость ++с
Аноним 16/09/20 Срд 08:15:54 1807918370
>>1807816
Ну расскажи мне про сложности тестирования своей лаба2.cpp
Аноним 16/09/20 Срд 09:44:31 1807963371
Аноним 16/09/20 Срд 23:27:52 1808581372
1464402838317.png 85Кб, 584x431
584x431
Аноним 17/09/20 Чтв 01:55:48 1808671373
>>1808581
>even in the presence on threads
Ага, и там в хотлупе потом боттлнек из-за thread-safe-static-initialization. Проходили.
Аноним 17/09/20 Чтв 01:58:16 1808675374
>>1808671
Но в целом миленько, да.
Аноним 17/09/20 Чтв 09:59:07 1808774375
>>1808581
call_once для кого придумали?
Аноним 17/09/20 Чтв 11:12:17 1808818376
>>1808774
call_once нужно откуда-то вызывать, а тут декларативно.
Аноним 17/09/20 Чтв 11:24:59 1808833377
>>1808818
Ох блядь. А iile - это не вызов?
Аноним 17/09/20 Чтв 11:58:55 1808868378
https://ideone.com/1Mt6od

Какого хуя здесь происходит. Почему эта залупа вообще скомпилировалась?
Аноним 17/09/20 Чтв 12:24:33 1808886379
>>1796605 (OP)
Внимание, нюфага вопрос.
Почему когда я гуглю какой-то вопрос, то там обязательно присутствует кусок говно кода?
По типу гуглишь какую-то функцию из стандарт библиотеки, а какой-то 12лет пробраммист переписал эту функцию на свой лад с лярдом костылей и говностилистикой.
Аноним 17/09/20 Чтв 12:29:50 1808891380
Аноним 17/09/20 Чтв 12:32:41 1808894381
>>1808833
Так в случае с call_once надо будет написать все то же самое, только оно будет еще и в call_once обернуто и заведена дополнительно переменная под флаг. Может я что то не так понял?
Аноним 17/09/20 Чтв 12:35:12 1808898382
>>1808868
warning: variable 's' is uninitialized when used within its own initialization
Аноним 17/09/20 Чтв 14:16:59 1808976383
>>1808868
Потому что передается указатель, известный до создания переменной.
Аноним 17/09/20 Чтв 15:14:49 1809024384
>>1808898
Не смог заставить g++ сказать что-то похожее
Аноним 17/09/20 Чтв 17:24:06 1809175385
Обьясните дегенерату на пальцах. Что это означает?

"Значение типа const char * нельзя присвоить сущности типа LPWSTR"
Говорят нужно включить в настройках проекта многобайтовую кодировку, но не могу найти где.
Аноним 17/09/20 Чтв 17:28:15 1809180386
Аноним 17/09/20 Чтв 17:31:34 1809184387
>>1809180
БЛАГОДАРОЧКА,
Дай бог здоровья.

Прям бля, пиздец, шоб шишка стояла.
Аноним 17/09/20 Чтв 17:59:15 1809213388
Бля, а теперь ругается что:
Значение типа "const wchar_t *" нельзя присвоить сущности типа LPSTR
Осталось это победить.
Аноним 17/09/20 Чтв 18:02:02 1809216389
>>1809213
Тупит на эти две нижнии строчки.
STARTUPINFO startInfo1 = {}, startInfo2 = {};
startInfo1.lpTitle = "Child Process 1";
startInfo2.lpTitle = "Child Process 2";
Аноним 17/09/20 Чтв 18:11:49 1809225390
>>1809216
Чем убрать ошибку?
const wchar_t нельзя присвоить сущности типа LPSTR
На многобайтовую кодировку переключил.
Аноним 17/09/20 Чтв 18:43:49 1809251391
Аноним 17/09/20 Чтв 19:21:43 1809284392
>>1809225
Нашел. Надо было отключить режим совместимости.

Тогда все заработает
Настройки X
Ответить в тред X
15000
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов