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


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

<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
602 54 151

C++ тред #108 /cpp/ Аноним 13/04/20 Пнд 16:31:33 16571021
1540985129178.png (3Кб, 558x558)
558x558
Аноним 13/04/20 Пнд 17:13:10 16571302
А я перекатываю свой вопрос из прошлого треда сюда.
Какую ide предпочитаете для разработки?
Алсо: а что думаете насчёт юзания vim?
Clion живет у параши вместе со своим high usage CPU
Аноним 13/04/20 Пнд 17:16:00 16571353
>>1657130
Visual Studio.
VIsual Studio Code.
VSCode.
Sublime иногда.
>что думаешь о виме
Да.
Аноним 13/04/20 Пнд 17:21:21 16571394
>>1657130
Вижуал студию.
ВИМ - это как палкой копалкой в 21 веке пользоваться.
Аноним 13/04/20 Пнд 17:40:33 16571535
stroustrup tall.png (251Кб, 603x324)
603x324
Аноним 13/04/20 Пнд 17:50:05 16571616
>>1657130
Qt Creator.

> vim
Юзаю, если пишу хеллоуворлд, где только stdlib.
Аноним 13/04/20 Пнд 18:04:52 16571727
Говно старое.
Аноним 13/04/20 Пнд 18:13:36 16571788
>>1657172
Что, уже завезли замену?
Аноним 13/04/20 Пнд 18:17:27 16571819
>>1657130
Vs codium
>а что думаете насчёт юзания vim?
:q!⏎
Аноним 13/04/20 Пнд 22:09:06 165736310
Пацаны, на сколько сложно будет с делфи переучиться на си++?
Аноним 14/04/20 Втр 00:02:29 165741011
Аноним 14/04/20 Втр 00:39:47 165742312
>>1657363
никто не знает. Вперед читать книгу
Аноним 14/04/20 Втр 01:17:09 165743813
Начал читать Принципы и практика использования и просто охуел на моменте с калькулятором. Что за пиздец? Откуда столько непонятных терминов? Какие-то термы, грамматика. Охуеть можно, стоит ли продолжать?
Аноним 14/04/20 Втр 01:53:58 165744714
>>1657438
А ты чего ожидал? Что будет написано секретное знание как давить одну волшебную кнопку?)
Аноним 14/04/20 Втр 02:12:43 165745615
>>1657447
Блять, я ожидал нормальное возрастание сложности, а не с лёгкого на хардкор за одну страницу
Аноним 14/04/20 Втр 02:13:06 165745716
>>1657438
Раньше чтобы программировать надо было разбираться в нескольких околоматематических областях знаний, гугли Computer Science. Сегодня уже не актуально.
Аноним 14/04/20 Втр 02:17:31 165745917
>>1657457
Сегодня актуально на яваскрипте реакт делать. Может ну его нахуй этот си
Аноним 14/04/20 Втр 02:25:07 165746418
>>1657438
Ну а нахуй ты такую книгу открыл тогда?
Аноним 14/04/20 Втр 02:39:52 165746719
>>1657464
Лежит уже несколько лет, зря деньги что-ли платил
Аноним 14/04/20 Втр 02:43:42 165746820
>>1656422 →
> Объявление класса само по себе не создает никаких сущностей, только определяет структуру объекта.

Наглая ложь.
> A class definition introduces a new type.
https://timsong-cpp.github.io/cppwp/n4861/class.name#1.sentence-1
type является entity (сущность)
> An entity is a value, object, reference, structured binding, function, enumerator, type, class member, bit-field, template, template specialization, namespace, or pack.
https://timsong-cpp.github.io/cppwp/n4861/basic.pre#def:entity

Таким образом, объявление (являющееся определением) создаёт новую сущность.
Аноним 14/04/20 Втр 02:53:53 165746921
>>1657456
Ничего, пройдет. В букваре у Страуструпа тоже в начале много хардкора. Но он по сути выполняет роль анонса. Дальше потом уже нормально.
Аноним 14/04/20 Втр 02:58:37 165747022
>>1657469
Точно? Может это я тупой?
Аноним 14/04/20 Втр 03:00:10 165747123
>>1657457
Малолетних дебилов даже гуглить не надо, они сами в тред лезут.
Аноним 14/04/20 Втр 03:17:08 165747224
Аноним 14/04/20 Втр 03:18:16 165747325
>>1657470
Нет, не тупой, просто нужно время на понятие грамматики парсера, это проходит, не парься, если не можешь понять эту грамматику, то почитай аналогичные вещи в интернете, грамматику рекурсивного спуска например.
а еще лучше никуда не гнаться и взять дня 3 перерыва и просто подумать самому, а потом перечитать главу, обычно помогает
Аноним 14/04/20 Втр 03:30:44 165747526
>>1657468
У него "сущность" в другом смысле была заюзана. Имеется в виду что при объявлении класса память в не выделяется.

>кидает пруф, что объявление класса вводит новый тип
Ты туповатый чутка, да?
Аноним 14/04/20 Втр 03:48:05 165747827
>>1657475
>У него "сущность" в другом смысле была заюзана.
В C++ у сущности только один смысл — https://timsong-cpp.github.io/cppwp/n4861/basic.pre#def:entity
> Имеется в виду что при объявлении класса память в не выделяется.
В кампиляторе выделяется

>>кидает пруф, что объявление класса вводит новый тип
>Ты туповатый чутка, да?
Что не так? Тип — сущность. Ввести новый тип = ввести новую сущность.
Аноним 14/04/20 Втр 06:44:06 165748628
Пацаны, а как в крестах объявить аналог классовой функции или классовой переменной из Паскаля? То есть такую которую я могу выполнить или обратиться не создавая объект и при этом не получить AV. И можно ли писать хелперы для базовых типов (int, string)?
Аноним 14/04/20 Втр 07:16:29 165748829
image.png (9Кб, 445x110)
445x110
Аноним 14/04/20 Втр 07:27:25 165749230
Аноним 14/04/20 Втр 09:22:36 165752031
>>1657102 (OP)
Анон, есть ли предпочтение static методам класса (если возможно) const? решарпер такой совет дает. Какие плюсы от этого, если метод например private?
Аноним 14/04/20 Втр 09:32:23 165752432
>>1657520
Хм, а мне решарпер наоборот предлагает static везде пихать
Аноним 14/04/20 Втр 09:42:48 165753433
>>1657520
Что значит предпочтение? Если метод можно объявить константным и ты готов ебаться с константностью то объявляй как константный. Если уже какой-то код есть то лучше чукнуть как в нем все сделано. Если там забивали на константность то лучше все так и оставить. Ну или рефакторить все. Хотя от константных методов неудобства минимальные - можно и всегда их объявлять.
Аноним 14/04/20 Втр 09:58:23 165755834
>>1657524
Я выразился не так. Предпочтение к статик, а не к конст, решарпер тоже предлагает статики.
>>1657534
В нормально дизайне ебли не будет. У меня уйма математики, и много хорошо изолированных классов.

Мне больше интересует выгода по какой-нибудь потокобезопасности, скорости и тп
Аноним 14/04/20 Втр 12:28:12 165768535
>>1657520
Если у тебя в методе не используется this, то решарпер предлагает сделать его статическим, все правильно.
Аноним 14/04/20 Втр 12:39:13 165769436
>>1657520
Со стороны кода — никаких.
Со стороны машинного кода — погоняй свои примеры в https://gcc.godbolt.org и посмотри.

>>1657558
>Мне больше интересует выгода по какой-нибудь потокобезопасности, скорости и тп
По скорости — нужно идти в дизасемблер и смотреть конкретные случаи.
По потокобезопасности — тут только уменьшать кол-во shared стейта, это главный камень преткновения и const/static тут не поможет ничем.
Короче, пиши всё по семантике и не еби голову.
Аноним 14/04/20 Втр 14:28:57 165773737
Запилил аналог cheat engine, при записе в память нужного участка - падает все приложение сканируемое. Привелегии отладчика получил. Чо не так?
Аноним 14/04/20 Втр 14:37:11 165774438
Аноним 14/04/20 Втр 14:49:46 165774839
>>1657558
В вызов любого не статичного метода передается скрытый параметр (ссылка на объект у которого вызван метод). Соответственно у статических методов такого параметра нет и они должны давать какой-то мизерный прирост скорости. Но особо хитрожопые компиляторы вполне могут и оптимизировать такое. Также статические методы более удобные - их можно в любой момент вызвать. Для вызова нестатического тебе нужно где-то достать объект класса. Если у метода статическая суть то лучше его статическим и объявлять.
Аноним 14/04/20 Втр 15:04:38 165775540
>>1657478
В С++ один, а в русском языке нет

> В кампиляторе выделяется
Очевидно, что речь не о компиляторе а о самой программе, тупица

ты мне уже поднадоел признаться своей одаренностью, так что иди нахуй
Аноним 14/04/20 Втр 15:10:35 165776041
>>1657744
Но как это работает в art money, что это не вызывает краш из-за непланомерного доступа?
Аноним 14/04/20 Втр 16:39:10 165780242
Наткнулся на какую то дичь. Почему при выполнении:
tempValue = 1280;
buf = (char*)&tempValue;

buf остается пустым? Если другие числа, то все нормально.
Аноним 14/04/20 Втр 16:41:02 165780743
>>1657802
Гугли что такое big endian. Первый элемент строки получаемой - нуль терминатор
Аноним 14/04/20 Втр 16:41:23 165780844
>>1657807
тьфу, Little endian конечно гугли.
Аноним 14/04/20 Втр 16:46:33 165781145
>>1657808
Блин, а как тогда длину переменной в байтах получать? Я делал так:
tempValue = var;
buf = (char*)&tempValue;
int length = strlen(buf);
Но теперь оказывается это пидорасится спецсимволом.
Аноним 14/04/20 Втр 16:48:25 165781246
>>1657811
я чето вообще не понимаю, что ты делаешь. Обьясни пожалуйста.

Длина инта всегда 4 байта, sizeof?
Аноним 14/04/20 Втр 16:52:06 165781547
>>1657812
Неправильно выразился. Не длину переменной, а сколько байт она занимает в данный момент времени. Ну то есть var = 1, то 1 байт, var = 640, то 2 байта. Причем var может быть не только int, но и string или float.
Аноним 14/04/20 Втр 16:52:53 165781648
>>1657815
Друг, оно всегда занимает одинаковое количество байт, вне зависимости от содержимого.
Аноним 14/04/20 Втр 17:00:44 165782349
>>1657816
Если это int или float, то да. Но у меня QVariant.
Тогда другой вопрос. Вот мне надо записать в файл значение без лишних нулей. Ну понял да, чтобы 1 не записывалось в файл, как 00 00 00 01. И потом к нему пришпилить еще длину в байтах. Ну например, для var = 1, записывать 01 01, для var = 1280, записывать 02 05 00, или для var = "TEST" записывать 04 54 45 53 54.
Как мне вытаскивать длину в байтах, как нибудь попроще?
Аноним 14/04/20 Втр 17:02:55 165782450
>>1657823
QVariant тоже. Там указатель и какой-нибудь тэг внутри. Sizeof его всегда одинаковый, если типы одинаковые.

То, что ты спрашиваешь в п2 - это тебе нужно просто написать сериализацию.

Что в духе ТИП, ДЛИНА, данные. И предусмотреть возможность того, что оно не нулл паддинг.
В случае конкретно интов - ты всегда можешь проверять, больше оно в 2^8, 2^16 и тд для ансайнедов.
Аноним 14/04/20 Втр 17:24:03 165783951
>>1657823
> Как мне вытаскивать длину в байтах
Считай логарифм по основанию 256.
В >>1657811 у тебя пидорасило не из-за спецсимвола и из-за того что strlen ожидает терминированую нулем строку. Если ты хочешь считать так как ты считал то тебе нужно число конверить в строку с помощью itoa по основанию 32 и полученую длину делить на 2.
Аноним 14/04/20 Втр 17:31:27 165784452
>>1657824
Как в QByteArray записать без лишних нулей?
Пишу
QByteArray data;
QDataStream in(&data, QIODevice::WriteOnly);
in << var;
А он все равно нули пишет.
Блин, раньше как то делал, сейчас не помню уже.
Аноним 14/04/20 Втр 18:07:07 165786853
>>1657844
Как ты узнал, что нули? Если var int и bigendian включен в qdatastream, но при записи 1 ты очевидно получишь в первых трёх байтах нули
Аноним 14/04/20 Втр 18:08:25 165786954
>>1657868
Можно ли как то записывать без нулей? Или вручную чистить надо?
Аноним 14/04/20 Втр 18:10:49 165787255
>>1657869
Ну сделай var свой qchar
Аноним 14/04/20 Втр 18:12:48 165787656
Хочу сказать спасибо тому анону, который мне посоветовал решарпер. Производительность возрасла в разы. Алсо, ещё я научился с маркетплейса вс качать полезные штучки, например, построитель графиков по данным, что для меня просто мастхев
Аноним 14/04/20 Втр 18:37:17 165788757
>>1657844
У стандартных стримов на этот случай есть метод put(). А оператор << преобразует чары в инты
Аноним 14/04/20 Втр 18:47:03 165789258
>>1657760
Бери гидру и делай реверс
Аноним 14/04/20 Втр 18:49:26 165789359
>>1657876
Да не за что, надеюсь ты его не спиздил?
Аноним 14/04/20 Втр 19:19:20 165791460
>>1657893
Спиздил после триала. Ещё не вырос пока до покупки софта, извините. Ещё и vs community edition.
Если вдруг будет закупка, то решарпер включу туда
Аноним 14/04/20 Втр 19:34:38 165792661
>>1657876
Еще настоятельно рекомендую Git Diff margin и Trailing Space Visualizer
Аноним 14/04/20 Втр 19:40:41 165793362
>>1657755
>В С++ один, а в русском языке нет
Когда будешь на русском языке программировать, тогда и пользуйся смыслами терминов из русского языка. А это тред про программирование на C++.
Аноним 14/04/20 Втр 21:07:54 165798463
>>1657914
Она же там около десяти баксов в месяц стоит. Дешевле чем пиво на Арбате
Аноним 14/04/20 Втр 21:09:50 165798864
>>1657926
> Trailing Space Visualizer
Зачем, если есть Ctrl+rw?
Аноним 14/04/20 Втр 21:30:38 165801065
213.jpg (88Кб, 600x850)
600x850
Устроился сегодня на 1 работу жуном, предложили 1 месяц 300$, это нормальная практика или меня пытаются наебать? Какие были ваши первые зп?
Аноним 14/04/20 Втр 21:32:47 165801466
>>1657988
Первый раз слышу про ctrl+RW, даже не знаю что он делает.

Но этот аддон на любое сохранение файла просто нахер все выпиливает лишнее, не в этом ли счастье
Аноним 14/04/20 Втр 21:33:10 165801567
>>1658010
Если ты устроился на первую работу - ты уже выиграл в лотерею. Через год уходи на килобакс, а пока сиди смирно.
Аноним 14/04/20 Втр 21:43:10 165802368
аноны хочу вкатиться в программирование с нуля,возраст 25 лет,подскажите с какого языка лучше начать и для начала админом на удалёнке,есть ли смысл для опыта посидеть годик,вообщем у кого опыт есть,дайте пожалуйста почту свою или телегу,пообщаться на эту тему
Аноним 14/04/20 Втр 21:50:20 165803069
>>1658023
что ты вообще умеешь? Волшебное ничего?
Аноним 14/04/20 Втр 21:54:31 165803270
>>1658030
оно самое,я не учился программированию просто,работаю обычным манагером
Аноним 14/04/20 Втр 21:57:47 165803671
>>1658023
Завтра ищешь в интернете книжку Dive into python. Похуй если ничего не поймешь. Затем идешь на python.org и изучаешь стандартную библиотеку от корки до корки. Потом зубришь, именно, сука, вызубриваешь конвенцию по написанию питоньего кода - PEP8, чтобы от зубов отскакивало. Когда напишешь свою первую имиджборду, по пути изучив верстку на html+css, скачиваешь и изучаешь любой питоний асинхронный вебсервер, рекомендую Tornado или Gevent. Как переделаешь имиджборду, чтобы выдавала по крайней мере 5 тысяч запросов в секунду, можешь идти дальше - тебя ждет увлекательный мир хайлоада. Apache Hadoop, сверхбыстрые асинхронные key-value хранилища, MapReduce. Отсос хиккующих выблядков / просто неудачников типа рейфага или сисярп/джава-хуесосов, которые сосут хуй по жизни не заставит себя ждать и уже через пол года ты будешь получать такие суммы, что любая баба будет течь при одном упоминании твоей зарплаты.
Аноним 14/04/20 Втр 22:04:14 165804272
>>1658036
кинь телегу или почту,буду советы спрашивать хотя бы,как вкачусь полноценно и буду нормально получать,отблагодарю а то я щас прочитаю,азы освою и хуй с маслом сосать буду
Аноним 14/04/20 Втр 22:15:55 165805173
Аноним 14/04/20 Втр 22:20:53 165805274
>>1658051
а ясно,я тоже подумал что слишком сказочно)
Аноним 14/04/20 Втр 22:22:59 165805475
>>1658010
Тоже $300, только за полставки.
>>1658015
А через сколько уходить на два?
Аноним 14/04/20 Втр 22:33:38 165805976
>>1658054
зависит от города. в ДС через 2 года, в миллионниках через 3, в мухосрансках таких зарплат нет
Аноним 15/04/20 Срд 01:41:18 165813577
>>1657933

Программирую только на православном. На нем сам перевод стандарта написан

И да это С++ тред, таким хуесосам дибиловатым как ты здесь явно не место, пиздуй в джс-загон тебе хуев в жопу накидают, всё как ты и они любят)))))
Аноним 15/04/20 Срд 02:48:10 165814278
>>1658135
>Программирую только на православном. На нем сам перевод стандарта написан
Так в переводе у "сущности" остался тот же смысл, что у entity в оригинале.
Аноним 15/04/20 Срд 13:37:53 165836379
>>1657933
Когда книги будут писать на C++, тогда и кукарекай. Ну и тупица, лол.
Аноним 15/04/20 Срд 14:10:10 165839880
Верно ли я понимаю, что число срабатываний любой рекурсивной функции ограничено стеком?
Аноним 15/04/20 Срд 14:19:26 165840781
>>1658398
Да, кроме случаев когда произойдет чудо и компилятор соптимизирует хвостовую рекурсию. Если твой компилятор вообще такое умеет.
Аноним 15/04/20 Срд 14:23:34 165841282
>>1658407
VS2019 господин в треде. Умеет?
Аноним 15/04/20 Срд 14:25:05 165841583
>>1657748
>статическая суть
Что ты под этим подразумеваешь? Типа внутрь метода не нужно передавать объект?
Аноним 15/04/20 Срд 14:29:07 165841984
>>1658023
Веб на php наверное если только.
Аноним 15/04/20 Срд 14:33:36 165842185
>>1658142
Это шутейка, долбаеб
Когда тебя твой парень тебя в жопу ебет, ты ему тоже ноешь "Вазген, трахай под 69 градусов, а не 45, у меня геморой вываливается"?

Думаю тебе в ПТУ несладко приходится. Каждый день водолаза в тубзике заставляют играть? Или перерыв на карантнин все таки дали, потому что там сейчас не во что мокать?

Проверь в словаре значения всех использованных в твоем следующем ответе слов, лалка, а то вдруг кто доебется. И точку в конце не забудь
Аноним 15/04/20 Срд 14:37:02 165842586
>>1658412
Все распространенные (MS, gcc, clang) вроде как умеют но стандарт не требует обязательно оптимизировать, поэтому там могут быть нюансы - компилятор может передумать ее оптимизировать если ему что-то не понравится. Ну и нужны более жесткие режимы оптимизации (типа О2/О3).
>>1658415
> Что ты под этим подразумеваешь?
То что метод использует только статические члены класса (или не использует вообще).
Аноним 15/04/20 Срд 14:43:44 165843387
>>1657130
>Алсо: а что думаете насчёт юзания vim?
если умеешь печатать в слепую десятью пальцами и умеешь пользоваться шеллом, то норм
по сути все дела делаешь в консоли, а в вим тупо редактируешь код
Аноним 15/04/20 Срд 21:25:55 165866788
>>1658421
Хуя тебя разорвало.
Аноним 15/04/20 Срд 22:30:09 165871289
>>1658667
Пфф мне доставляет удовольствие обсирать тебя, так что разорвало тут разве что твое маленькое нежное колечко от огромной чурчхеллы Вазгена
Точку поставил, красавчик
Аноним 16/04/20 Чтв 02:00:45 165883090
По какой причине это говно ещё живо?
Аноним 16/04/20 Чтв 03:06:57 165883991
>>1658830
Хз, джаваскрипту пока нет альтернатив.
Но пилят, поговаривают
Аноним 16/04/20 Чтв 03:07:41 165884092
Аноним 16/04/20 Чтв 13:05:40 165897593
Сука, как же у меня полыхает. Как же я люблю cppшники на 7к строк и больше, где дохерища ifdef, часть из которых проваливается на компиляции, а часть вообще неизвестно что включает и зачем нужна.
Где половина значений из функций возвращается через ссылки и ты хуй поймёшь, модифицируется ли оно где-то внутри или нет и приходится лезть в 100500 функций и осознавать это, и в итоге где-то в куске кода, который выключен макросом, это херня таки модифицируется и ты идёшь осознавать, когда этот макрос включается и что он делает
А какая ляпота когда всё вынесено в глобальные переменные.. Мммм..... Как же это ахуенно, когда можно получить доступ по всему и отовсюду. Даже из методов isCheckSomething можно менять эти самые переменные! Разве это не ахуенно!?
И как же здорово копипастить код! Зачем же выносить его в отдельные методы, если можно просто скопипастить! Ведь его же никогда не придётся менять!! И файл с 10к строками не придётся открывать, наверное
А лямбды в лямбдах которые в других лямбдах какая красота! Зачем задумывать о том, что и как и куда вынести, если можно просто нахерачить 100500 лямбд? Вот и не зачем!
Аноним 16/04/20 Чтв 13:13:27 165897994
>>1658975
И потом все вот эти писаки твоего горя гордятся званием разработчика Срр кстати.
Аноним 16/04/20 Чтв 13:14:50 165898095
>>1658975
Ну так сделай рефакторинг, это же самая мякотка. Мужики потом руку жать будут, хрюши перед тобой будут жопами крутить, а начальник лично премию выпишет.
Аноним 16/04/20 Чтв 21:05:02 165946896
Господа, кем работаете? Пердолите легаси под винду или делаете йоба-проекты под Linux со всеми новыми фишками плюсов?

И вообще, каков на сегодняшний день рынок плюсов в ДС? Какие есть интересные места, где не занимаются программированием под древние технологии?
Аноним 16/04/20 Чтв 21:34:30 165949397
>>1659468
> Пердолите легаси под винду или делаете йоба-проекты под Linux со всеми новыми фишками плюсов?
Делаем йоба-проект под три платформы со всеми новыми фишками плюсов, параллельно пердолим легаси, внедряя эти самые фишки (легаси старше половины анонов итт)
Аноним 16/04/20 Чтв 21:49:26 165950798
>>1659493
>Делаем йоба-проект под три платформы со всеми новыми фишками плюсов
А что хоть за сфера деятельности? Приложения под десктоп какие чи шо?
Аноним 16/04/20 Чтв 22:04:55 165951799
>>1659468
>Пердолите легаси под винду или делаете йоба-проекты под Linux со всеми новыми фишками плюсов?
Кек всё. Легаси и не под винду, полуэмбеддед линукс (бортовое оборудование), десктоп с "фронтом" под винду "беком" на ртос на параллельных ядрах. Использую фишки когда это возможно.
Сфера авиация, больше не расскажу, NDA.
Аноним 16/04/20 Чтв 22:05:43 1659519100
>>1658036
Шесть месяцев назад я нашёл в Интернете книжку "Dive into Python". Странная книжка, толстая, да ещё на не русском языке. Усердно прочитал её, методично и вдумываясь, но таки ничего и не понял. Но что-то не отпускало меня - я пошёл на python.org и стал изучать стандартную библиотеку, старательно, скурпулёзно, от корки до корки. Гугля примеры кода, я наткнулся на пост в блоге одного гуру, где было написано про PEP8. То, что рассказывал этот умудрённый опытом кодер, настолько впечатлило меня, что я словно в припадке безумия бросился зубрить эту конвенцию по написанию питоньего кода. У меня тряслись руки, по телу прокатывали волны возбуждения, я, можно сказать, бился в экстазе всё это время - и теперь могу процитировать наизусть любой пункт, даже если меня разбудить посреди глубокой ночи.

Новые знания окрыляли меня, я бросился писать (что бы вы подумали?) очередную имиджборду. Я не писал раньше имиджборд, эта была моей первой. По пути пришлось освоить азы вёрстки на html и css, но там всё оказалось совсем не сложно.

Я плавно двигался вперёд, наращивая функционал. И знаете что? Я упёрся в недостаток производительности. Ну, так мне показалось. Я делал замеры, устранял места с тяжёлым кодом. Тысячи раз запускал ab, но так и не сумел перейти порог в 300 запросов в секунду. Я как-то ожидал большего и был немного разочарован.

Гугл, снова гугл. Десятки статей и тем на форуме... Довольно быстро я заметил, что люди часто пишут про какие-то "асинхронные веб-сервера". Часто встречались названия Tornado и Gevent. Я прочитал про них подробнее - и был просто ошеломлён. Как мне это раньше не приходило в голову?! Это же, это просто гениально, чёрт меня побери!

Исходники в ведро, всё переписать! Меня переполняло новое знание, поток мыслей ровно ложился в строчки кода. Я просто не мог остановиться. Чашка кофе... Ещё чашка... Мой небольшой кусочек софта приобретал кристалльную чистоту, я смертельно устал, но продолжал в умилении полировать его зудящими руками, нанося последние штрихи.

Пять тысяч. Я получил производительность в пять тысяч запросов в секунду. В ту ночь я так и не смог заснуть.

Наиувлекательнейший мир хай-лоада открылся передо мной. Позже я изучил ещё много классных вещей типа сверхбыстрых асинхронных key-value-хранилищ, или, например, такого необычного подхода к обработке данных, как map-reduce.

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

За пол-года я сменил несколько мест работы, и моя зарплата взлетела до умопомрачительных сумм. Сотни замечательных мест открыли передо мной свои двери. Любые, самые изысканные девушки проявляли просто чудеса изобретательности, чтобы находиться рядом со мной.

А ещё, я никогда не забуду тот момент, когда на одной из конференций я впервые в жизни поймал на себе завистливый взгляд. Это был взгляд какого-то сливающегося с толпой неудачника, взгляд преисполненный ненависти, презрения и желчного вожделения, направленного на мой Олимп. Наверное, он всю свою никчёмную жизнь писал на каком-нибудь си-шарпе или там на джаве, проводя долгие дни в одиночестве. И теперь начинал подсознательно догадываться, что долгие годы безуспешно пытался построить замок из навоза.
Аноним 16/04/20 Чтв 22:20:55 1659534101
sussman snake.jpg (3Кб, 213x237)
213x237
>>1659519
Это ты ещё сикпи не читал
Аноним 16/04/20 Чтв 22:29:24 1659541102
изображение.png (16Кб, 550x448)
550x448
>>1657130
разъясните блок /store position and velocity of this particle/
species задан как struct
Аноним 16/04/20 Чтв 22:38:03 1659549103
>>1659541
Судя по коду, species хранит указатель на массив part размером np_alloc элементов. В нём "активных" элементов species->np. Если места под ещё один активный элемент нет, то бросается ошибка. Иначе код добавляет ещё один активный элемент.

int n = species->np;
species->part[n].x = x;
species->part[n].v = v;

species->np++;

Так понятнее?
Аноним 16/04/20 Чтв 23:21:03 1659573104
>>1659549
да, просто не понимаю к чему такие указатели городить
Аноним 16/04/20 Чтв 23:23:24 1659575105
2020 04 16 c#.png (66Кб, 827x844)
827x844
Аноны, смотрите что я могу сделать на C#.
Суть токова: есть 2 класса (Class1 и Class2), каждый в своём файле (Class1.cs и Class2.cs). Класс Class1 содержит ссылку на Class2, а класс Class2 содержит ссылку на Class1. Всё что мне надо было сделать, это просто написать объявления этих классов в разных файлах.
Вопрос: как сделать такое в C++?
Аноним 16/04/20 Чтв 23:27:05 1659579106
>>1659575
Я не гуру, но мне кажется никак. Это же замкнутый круг получится
Аноним 16/04/20 Чтв 23:57:33 1659595107
>>1659575
Пишешь объявление (не определение) класса в ашнике одного из них, ссылки на неопределенные классы разрешены, ибо одного размера, шарп это спиздил из сишки ещё.
Но правильнее делать однонаправленные ссылки на интерфейсы, и в реальном коде по другому не получится.
Аноним 17/04/20 Птн 00:12:29 1659607108
>>1659575
Я тебе может секрет открою, но в c# твоя хуйня типа Class1 a; не равносильна Class1 a; из c++. Грубо говоря это больше похоже на std::shared_ptr<Class1> a; с неявным вызовом make_shared в консрукторе в конструкторе. А для такой хуйни достаточно forward declaration
Аноним 17/04/20 Птн 00:20:03 1659611109
>>1659607
Да, в шарпе это ссылка по факту. Значит в C++ объявление с виду будет другое, что-то вроде Class1* class1; Но тут главное чтобы суть была той же - первый класс содержал ссылку на второй, второй на первый, и чтобы они были в разных файлах. (то что это можно сделать в одном файле я знаю, это у меня получалось). Собственно проблема у меня сделать так чтобы они были в разных файлах.
Аноним 17/04/20 Птн 06:38:25 1659688110
>>1659611
forward declarations

Class A;

Class B
{
A a;
}

============
Class B;

Class A
{
B
b;
}

Аноним 17/04/20 Птн 06:39:12 1659689111
>>1659688
двач сожрал указатели. Можешь (даже лучше) использовать unique/shared ptr.
Аноним 17/04/20 Птн 10:09:14 1659760112
>>1659688
Спасибо, получилось!
Аноним 17/04/20 Птн 10:20:58 1659768113
Зову винапишную функцию.
>Error C2664: cannot convert argument 4 from 'int *' to 'PDWORD'

В винде фирменные проприетарные указатели? Если тупо кастить в PDWORD оно вообще запустится?
Аноним 17/04/20 Птн 10:37:03 1659779114
2020 04 17 cpp.png (9Кб, 612x366)
612x366
>>1659760
Опять проблемы. Классы объявил, но не работает интеллисенс и не получается их использовать.
Аноним 17/04/20 Птн 10:43:16 1659787115
>>1659779
Конкретно эту проблему удалось убрать написав:
#include "Class1.cpp"
Но в самом файле Class1.cpp есть такая же проблема, и таким способом её убрать не получилось, потому что взаимные инклуды, насколько я понимаю, невозможны.
Аноним 17/04/20 Птн 10:44:36 1659790116
>>1659768
PDWORD - это указатель на беззнаковое целое.
>>1659779
У тебя говно сорокалетней давности вместо языка циклическая зависимость. Ее можно разрулить только выносом реализации методов в отдельный файл куда инклюдить хедеры с нужными классами. В В.срр инклюдишь А.h, в А.срр инклюдишь В.h
Аноним 17/04/20 Птн 11:21:39 1659834117
Эй, сишники, расскажите как вы выживаете в мире с куцей документацией по библам. ежу понятно что язык это в первую очередь его инфраструктура, а не синтаксис
Решил вкатиться в libevent (простенький CRUD запилить с веб мордой) стоковая документация ищет только по LIKE% и причем только на функции (структуры приходится искать на этом же сайте через гугл, лол), гайды уровня как нарисовать сову.
Смотрю, http модуль libevent по ходу сам выставляет куки, опять же в документации на эту тему по запросу cookie ничег не выдает, а гугл выдает все страницы где есть просто libevent, угадайте почему?потому что на каждой странице снизу есть плашка предупреждающая что "мы используем cookie" лол
Кароч здоровья вам и терпения (ну и мне). К слову сказать у sqlite все достаточно понятно, и документация годная.
Аноним 17/04/20 Птн 12:00:53 1659880118
>>1659790
Вроде получилось сделать как хотел. Классы в разных файлах (правда каждый класс в двух файлах - в .h и в .cpp, но это не проблема, меня это тоже устраивает), ссылаются друг на друга, могут использовать функции друг друга, интеллисенс есть. Спасибо.
Аноним 17/04/20 Птн 12:18:53 1659897119
>>1659787
> #include "Class1.cpp"
Пиздец, батенька.
>>1659880
> каждый класс в двух файлах - в .h и в .cpp
Это стандартная практика для c++, в h объявление, в cpp реализация. Когда придут модули, сможешь писать как на сисярпе.
Аноним 17/04/20 Птн 12:21:22 1659900120
>>1659834
На гитхабе поищи проекты, где эта либа используется. Обычно там можно подпиздить куски годного кода. Я так в одной либе буста разбирался, хотя там на весь интернет две строки документации
Аноним 17/04/20 Птн 12:27:53 1659908121
>>1659897
>Когда придут модули
А их обещают?
Аноним 17/04/20 Птн 12:34:46 1659912122
1587116085346.jpg (173Кб, 629x814)
629x814
Пиздос, оказалось, что я совершенно не знал, как работает friend.
Был класс A, я захотел сделать функцию, принимающую A, вычисляющую всякую хуйню, используя protected const методы класса A, думал, ебану friend и все будет норм, но хуй там блядь! Автор A почему-то не сделал этот важный функционал public, не предусмотрел, и мне теперь либо копипастить тот код (что плохо, так как дублирование), либо наследоваться.
Да, почему-то сделал class B : public A, там float f(const A&a) const {
return a.protectedfunc()++; }, но такое тоже не хочет работать.

Есть ли нормальный вариант? Как быть, если автор либы в чем-то ошибся?
Аноним 17/04/20 Птн 12:37:51 1659914123
Точнее, не конст, а статик:
class B : public A, {
static float f(const A&a) {
return a.protectedfunc()++;
}

private:
B(){}
}

>>1659912
Аноним 17/04/20 Птн 12:54:45 1659925124
>>1659790
>cannot convert argument 4 from 'unsigned int *' to 'PDWORD'
Аноним 17/04/20 Птн 12:55:45 1659926125
>>1659925
А, стоп, с лонгами нормально.
Аноним 17/04/20 Птн 13:53:29 1659970126
>>1659900
да так и делаю, то тут, то там, но блиииииин........
Аноним 17/04/20 Птн 14:00:26 1659974127
Ку крестач
Что сейчас на крестах пишут как правило? А что нет?
Аноним 17/04/20 Птн 14:03:20 1659976128
Есть std::list<int> lst;
std::next(lst.end()) гарантированно возвращает lst.end(), или зависит от реализации?
Аноним 17/04/20 Птн 14:27:00 1659991129
По дефолту вектор создается на стэке (если юзать new, то в куче, естественно), как работает механизм динамического массива (вектора) без кучи? В стэке могут быть только статические массивы, длина которых известна во время компиляции, как тогда вектор может динамически изменять свою длину, не будучи в куче?
Аноним 17/04/20 Птн 14:28:41 1659993130
>>1659991
Вектор это 2 инта (текущий и максимальный размеры) и указатель, который будет переаллоцироваться
Аноним 17/04/20 Птн 14:29:53 1659995131
>>1659976
> std::next(lst.end())
Я думаю это UB.
Аноним 17/04/20 Птн 14:36:16 1660004132
>>1659993
А как освобождаются ресурсы, аллоцированные вектором? У него есть scope как у локальной переменной и при возврате вектора из функции нужно возвращать его копию, дабы не возвращать адрес на мертвые данные?
Аноним 17/04/20 Птн 14:39:12 1660008133
>>1660004
деструктор вектора дергает delete[] на указатель?
Аноним 17/04/20 Птн 14:48:11 1660018134
>>1660008
то есть
std::vector<int> vec;
vec это указатель на кучу, где была выеделена память? Другого объяснения у меня нет, так как массив не может быть динамическим в стэке.
Аноним 17/04/20 Птн 14:51:32 1660022135
>>1660018
Фейспалм.жпг
Он тебе это и написал выше.
Аноним 17/04/20 Птн 14:53:28 1660023136
>>1660018
> vec это указатель на кучу
vec это сруктура, один из элементов которой - указатель на динамически выделеную память для хранения элементов вектора.
Аноним 17/04/20 Птн 15:00:28 1660031137
>>1660018
В стэке есть адрес на кучу, где был аллоцирован вектор. Ты прав, данные вектора хранятся в куче, ибо стэк не может хэндлить динамические массивы.
Если ты хочешь создать вектор в функции - возвращай его копию. Но это плохая привычка, лучше в вызывающую функцию запердолить пустой вектор и передать его в вызываему функцию как ссылку и там заполнять всем чем надо.
Скоуп у вектора как у обычной локальной переменной, ибо деструктор там работает как в умных указателях. Вызод за скоуп - вызов деструктора.
Аноним 17/04/20 Птн 15:05:16 1660039138
>>1660031
>Но это плохая привычка
Была до 17 стандарта.
Аноним 17/04/20 Птн 15:08:48 1660041139
Аноним 17/04/20 Птн 15:21:58 1660061140
>>1660039
>>1660041
До 11 стандарта был NRVO. После 11 мув-семантика. Возвращение тяжёлых контейнеров из функций не проблема кода так с 2003.
Аноним 17/04/20 Птн 15:26:54 1660067141
>>1660061
По производительности это равно дрочке с ссылками? Чет я сомневаюсь, кажись по старинке передавать ссылки все же лучше, не?
Аноним 17/04/20 Птн 15:36:07 1660079142
>>1660067
Нет, компилятор сразу биндит вектор куда нужно, без расходов.
Аноним 17/04/20 Птн 15:37:49 1660081143
>>1660061
>NRVO
Без N только. Сейчас он обязателен, а c N только возможен.
Аноним 17/04/20 Птн 16:17:50 1660114144
>>1659908
> А их обещают?
Ну как бы c++20
Аноним 17/04/20 Птн 19:26:51 1660248145
>>1659912
Палю лайфхак: видел в продакшн коде одной популярной либы
#define private public
#include <parasha,h>
#undef private
Енжой ё ооп
Аноним 17/04/20 Птн 19:40:00 1660270146
Аноним 17/04/20 Птн 20:12:23 1660312147
Я создаю тред, который занимается ловлей исключений винды ( https://en.wikipedia.org/wiki/Microsoft-specific_exception_handling_mechanisms )
в коде: __try { for(;;); } __except(exception) {...}
Важен ли его приоритет, если исключение надо обрабатывать максимально быстро, или разницы нет?
Аноним 17/04/20 Птн 20:29:00 1660325148
>>1660312
Я лично подозреваю что винда зовёт все обработчики исключений поочерёдно и показывает им задницу эксепшона, пока одному из хэндлеров она не нравится. Прикольный механизм. То есть по итогу я задаю приоритет хэндлингу исключения.

Вопрос остаётся в том, компилируется ли for(;;); во что-то жрущее ресурсы. Здесь я подозреваю, что на ассемблере это просто nop с безусловным прыжком. Но я не знаю, отжирает ли это ресурсы. Менять указатель на инструкцию IP - это тратит время процессура.
Аноним 17/04/20 Птн 20:34:03 1660327149
>>1660312
Исключение обрабатывается в том же потоке, что его выбросило. Эта хуйня с вечным циклом ничего ловить не будет.
Аноним 17/04/20 Птн 20:35:10 1660328150
>>1660248
Только тебе нужно перед этим заинклюдить все хидеры из stl
Аноним 17/04/20 Птн 20:39:48 1660331151
>>1660327
Я же обрабатываю исключение винды, не родное сишное. Скажем там, EXCEPTION_GUARD_PAGE.
Аноним 17/04/20 Птн 20:49:42 1660337152
>>1660331
Ну так чтобы его обработать средством __try __except ты должен вызвать его в блоке __try, а не где-то там в другом потоке. Для того чтобы ловить все исключения есть VEH
Аноним 17/04/20 Птн 20:50:27 1660339153
>>1660312
Тебе никогда вот эту парашу использовать не надо абсолютно нигде, кроме кернел драйверов. Забей, что оно вообще существует
Аноним 17/04/20 Птн 20:54:16 1660343154
>>1660339
★(int★)0 = 228; только так поймать можно. Либо в настройках компилятора шаманить чтобы через try(...) ловить, но тогда типо исключения уже не определить
Аноним 17/04/20 Птн 20:54:49 1660345155
>>1660331
Сам синтаксис ловли в виде таких штук как EXCEPTION_CONTINUE_EXECUTION и EXCEPTION_CONTINUE_SEARCH намекает мне что механизмами исключений в винде ловится что угодно, как бы намекая про VEH

>Vectored exception handlers are an extension to structured exception handling. An application can register a function to watch or handle all exceptions for the application. Vectored handlers are not frame-based, therefore, you can add a handler that will be called regardless of where you are in a call frame. Vectored handlers are called in the order that they were added, after the debugger gets a first chance notification, but before the system begins unwinding the stack.

Звучит очень вкусно.

https://docs.microsoft.com/en-us/windows/win32/debug/using-a-vectored-exception-handler
Кажись вообще могу без треда обойтись, но хуй знает. Всё равно интересно создаёт ли for(;;); доп нагрузку, ещё пригодится потом

>>1660339
Детектить изменения в памяти?
Аноним 17/04/20 Птн 21:01:12 1660347156
>>1660345
скорее всего присутствие EXCEPTION_CONTINUE_SEARCH обосновывается так:
__try {поебень}
__except (GetExceptionCode() == 1 ? EXCEPTION_CONTINUE_EXECUTION : EXCEPTION_CONTINUE_SEARCH) {}
__except (GetExceptionCode() == 2 ? EXCEPTION_CONTINUE_EXECUTION : EXCEPTION_CONTINUE_SEARCH) {}
__except (GetExceptionCode() == 3 ? EXCEPTION_CONTINUE_EXECUTION : EXCEPTION_пойти_нахуй) {}
Аноним 17/04/20 Птн 21:04:57 1660350157
Аноним 17/04/20 Птн 21:05:03 1660351158
>>1660343
это UB а не эксепшен
Аноним 17/04/20 Птн 21:08:59 1660353159
>>1660351
Схуяли это неопределенное поведение? Если память присутствует и доступна для чтения, она считается. Иначе процессор создаст исключение которое можно обработать. Вполне себе определенное поведение.
Аноним 17/04/20 Птн 21:10:03 1660354160
Аноним 17/04/20 Птн 21:17:41 1660366161
Аноним 17/04/20 Птн 21:24:54 1660376162
image.png (35Кб, 585x738)
585x738
>>1660366
В __try нельзя юзать объекты требующие уничтожения.
>>1660354
На пикриле visual studio позволяет это корректно обработать используя параметр /EHa, даже деструкторы все вызывает.
Аноним 17/04/20 Птн 21:38:44 1660395163
>>1660376
> В __try нельзя юзать объекты требующие уничтожения.
Память не освободится? Можно же в __finally это сделать (правда, оно быдлокодится через вложенные __try, это вам не питон)
Аноним 17/04/20 Птн 21:40:38 1660397164
image.png (2Кб, 526x28)
526x28
Аноним 18/04/20 Суб 03:48:00 1660635165
Аноним 18/04/20 Суб 06:28:15 1660656166
>>1660635
http://habrahabr.ru/post/229963/
>стандарт C++ объявляет «неопределённым действием» бесконечный цикл без изменения внешнего состояния — поэтому компиляторы C++ вправе считать любой такой цикл конечным.
Ну охуеть. Почему возврат переменного значения нельзя условно считать изменением внешнего состояния?
Интересно, что если всунуть укорачиваемую часть после бесконечных циклов в отдельную функцию, скорее всего она не укоротится.
Аноним 18/04/20 Суб 06:40:15 1660657167
image.png (24Кб, 490x413)
490x413
Аноним 18/04/20 Суб 06:48:12 1660658168
image.png (21Кб, 464x361)
464x361
Аноним 18/04/20 Суб 07:36:45 1660668169
Есть какие то подводные в использовании wstring вместо string?
Аноним 18/04/20 Суб 09:39:21 1660694170
image.png (104Кб, 1817x895)
1817x895
Аноним 18/04/20 Суб 10:20:10 1660707171
image.png (68Кб, 1366x768)
1366x768
к чему происходит обращение?
Аноним 18/04/20 Суб 10:26:51 1660709172
>>1660707
Смотрите, кто-то не знает про оператор ,.
https://ideone.com/A499Ih

Чего ты вообще хотел добиться этим: a[i,i+1] ?
Аноним 18/04/20 Суб 10:41:55 1660715173
>>1660709
Я случайно когда раьгтал с массивами вместо a[j] написал a[i,j] и думал че за хуйня происходит
Аноним 18/04/20 Суб 10:53:11 1660722174
>>1660312
Так, сделал исключение через VEH, не проверял ещё как работает, дофига всего надо поделать. Тред хочется чтобы всё равно висел, даже если пока не надо.
Можно использовать прибамбасы крестов: https://stackoverflow.com/questions/36711131/how-to-sleep-forever-only-using-c11
Но всё ещё хочу узнать, не за тормозит ли подобный >>1660694 ассемблер систему, т.к. это простая реализация сна без стандартных библиотек, а я свистелки не люблю
Аноним 18/04/20 Суб 10:57:29 1660727175
>>1660722
>это простая реализация сна без стандартных библиотек
А выводить из этого сна как собрался?
Аноним 18/04/20 Суб 11:05:48 1660739176
>>1660727
эммм...
Ну, например, в том же VEH хэндлере я смотрю на тред и прыгаю его из инструкции бесконечного цикла во что-то другое.
Аноним 18/04/20 Суб 11:08:07 1660741177
>>1660739
Так этот тред с бесконечным циклом не вызывает исключений и не триггерит вех. Для вечного ожидания есть WaitForSingleObject или SuspendThread
Аноним 18/04/20 Суб 11:09:44 1660743178
>>1660741
Так я это уже осознал. После того как система вызывает мой обработчик на событие, обработчик заставляет основной тред подпрыгнуть кабанчиком и благополучно завершается.
Аноним 18/04/20 Суб 11:10:58 1660745179
Крестовики, че когда на раст будете переходить?)
Аноним 18/04/20 Суб 11:11:43 1660747180
>>1660745
Когда можно будет нулевой указателель дереференсить, отхватывая не от языка, а от ОСи
Аноним 18/04/20 Суб 11:12:15 1660750181
>>1660722
>не за тормозит ли подобный >>1660694 ассемблер систему
Попробуй PAUSE использовать, если для x86 делаешь. Вроде как тогда система не будет с полной силой делать НИЧЕГО.

>>1660745
Я Jai жду
Аноним 18/04/20 Суб 11:24:35 1660761182
>>1660747
А смысл? Плодить зиродеи в софте, какой в этом кайф?
Аноним 18/04/20 Суб 12:03:18 1660783183
image.png (82Кб, 1097x658)
1097x658
>>1660761
>зиродеи
Во первых, как что-то плохое.
Джава уродлива, поэтому создаёт много рабочих мест. На сях легко говнокодить, поэтому они создают много рабочих мест. Кресты невозможно знать полностью, поэтому они создают много рабочих мест. Индусы рентабельны, поэтому для белых багтестеров тоже есть рабочие места. Боинг 737 падает, разбивается и убивает людей, так что теперь кто-то решает эту проблему за деньги.
Раст не создаёт рабочих мест.

Во вторых, нужно всё-таки определиться, низкоуровневый ли это язык, или администрирующий криворукого индуса, потому что выбирать меж 5 типами указателей никто нахуй не хочет, а терять производительность ради безопасности - для этого уже есть жаба, там это оправдывается либо банковским сектором, либо тем что каждому оленю надо дать право писать приложухи к андрюше.
Аноним 18/04/20 Суб 12:08:02 1660784184
image.png (36Кб, 614x461)
614x461
>>1660783
стоп, не тот график, он показывает мою неправоту.
Аноним 18/04/20 Суб 12:16:32 1660788185
image.png (190Кб, 977x1198)
977x1198
Аноним 18/04/20 Суб 12:43:15 1660807186
>>1660783
>Раст не создаёт рабочих мест.
Возможность писать полностью безопасный софт на уровне ОС, дровти прошивок, не теряя при этом производительность (Раст по скоростью равен С++, а в некоторых моментах и быстрее) - не создает рабочих мест? Интересно
Аноним 18/04/20 Суб 12:43:43 1660808187
Аноним 18/04/20 Суб 13:46:39 1660867188
>>1660707
> к чему происходит обращение?
К Вашей родительнице.
Аноним 18/04/20 Суб 13:48:21 1660869189
>>1660807
Безопасность раста обеспечивается:
1. встроенным статическим анализатором, которые есть и для сей
2. прищемлением яиц программисту, которого в дизайне языка быть не должно
fn _merge(left_slice: &mut [u32], right_slice: &mut [u32]) -> u64
vs
fn _merge(vec: &mut [u32], left: usize, mid: usize, right: usize) -> u64
3. тысячей реализаций одной фичи, чтобы каждая была безопасной и уникальной
Аноним 18/04/20 Суб 13:54:55 1660887190
>>1660869
Возможно что чтобы общаться с оборудованием, вообще по итогам нужен заветный unsafe, ибо там отсылки к кастомным адресам (вроде).
Спрашивается, почему не писать сразу на сях?
Аноним 18/04/20 Суб 14:12:02 1660928191
>>1660869
Ну и в чем проблема? Как это отвечает на мой вопрос? Особенно третий пункт
Аноним 18/04/20 Суб 14:14:56 1660933192
Аноним 18/04/20 Суб 14:18:58 1660938193
>>1660928
Да никак не отвечает. Отсутствие рабочих мест под раст - самоочевидный факт, под него не нужно подводить доказательства.
Аноним 18/04/20 Суб 14:51:31 1660969194
Сап, анон. Нормально ли использовать enum как параметр шаблона, чтобы класс специализировать, но не плодить бесящие меня наследования?
Например, есть класс с координатой в полярных, и
enum CoordType ={deg, rad};

А класс уже
template<CoordType ct>
class Coord
{
}

Отличия градусов от радиан в поведении класса только в том, что для тригонометрических функций будет перевод в радианы.
Да, я знаю, что лучше хранить все в радианах и перевод выполнять только при выводе
Аноним 18/04/20 Суб 16:01:15 1661031195
Давно на C++ не программировал. В цикле "(auto i = vector.begin(); i != vector.end(); i++)" удаляю элемент массива "i = vector.erase(i)", но если это последний элемент, то будет краш т.к. can't increment vector iterator past end. Что делать надо? Неужели "if (i == vector.end()) break"? Или что поприличнее есть?
Аноним 18/04/20 Суб 16:17:53 1661044196
Аноним 18/04/20 Суб 16:44:40 1661062197
>>1660969
Да норм, я использовал. Только class enum использовал вместо enum.
Аноним 18/04/20 Суб 16:46:33 1661064198
Факт есть факт. Коричнпя булочка не оставляет равнодушным. :3
Аноним 18/04/20 Суб 16:49:10 1661067199
>>1661031
for (auto i = vector.begin(); i != vector.end();)
if (надо удалить)
i = vector.erase(i);
else
++i
Аноним 18/04/20 Суб 16:59:17 1661070200
>>1661062
В шаблоне? Почему? Вроде и так работает
Аноним 18/04/20 Суб 17:01:49 1661071201
>>1661070
Я просто предпочитаю enum class вместо enum, если возможно.
Аноним 18/04/20 Суб 17:22:51 1661081202
Какой есть роадмап для изучения плюсов в 2020 году?
И вообще, я так понимаю, что компьютерное зрение - это одна из самых популярных сфер, где С++ используется?
Аноним 18/04/20 Суб 17:40:23 1661092203
Вообще посоветуйте с чего закатываться в компьютерное зрение?
Можно ли вкатиться человеку с техническим (не математическим) образованием? Базовые матан, линал знаю. Теоревер стоит подтянуть.
И вообще, насколько перспективный рынок компьютерного зрения? Вижу много вакансий связанных с разработкой систем видеонаблюдения, в России это наверное будет популярно в ближайшие годы.
Аноним 18/04/20 Суб 17:49:54 1661098204
image.png (755Кб, 1400x3048)
1400x3048
>>1661092
Хотя нет, эта тема какая-то слишком сложная и непопулярная. В Москве по вакансиям особо ничего и нет

Вот почему никто не сделал роадмап для джунов?
Даже джависты осилили
Аноним 18/04/20 Суб 18:07:30 1661117205
>>1661092
Она тебя сожрет смотри примеры OpenCV
Аноним 18/04/20 Суб 18:15:15 1661125206
Статичные функции - это типа эквивалент приватных функций?
Аноним 18/04/20 Суб 18:25:07 1661136207
>>1661125
Это зависит от контекста. Если вне класса, то это значит, что её можно вызвать только из того же файла, она может быть скомпилирована только в соответствующем объектном файле. Если в классе, то это значит, что она как бы глобальная для всего класса и в то же время этому классу не принадлежит, от неё нельзя наследоваться и в ней доступны только такие же статические методы и переменные класса. Но из нестатических методов её можно вызвать.
Аноним 18/04/20 Суб 18:40:05 1661159208
>>1661098
>>роадмап для джавы 2020
>>spring в стороне на побочной ветке вместо орма/микрносервисов/веба/тестов/баз данных вместе взятых. Про аналоги спринга вообще ни слова.
Вам точно нужен такой же устаревший на 10-15 лет роадмап?
Аноним 18/04/20 Суб 19:03:41 1661180209
>>1661159
>spring в стороне на побочной ветке
Там указано же must know, лол

А куда его впихнуть предлагаешь?
Аноним 18/04/20 Суб 19:09:18 1661189210
u310387.jpg (290Кб, 1200x900)
1200x900
Вопрос от полнейшего ньюфага.
Есть исходники кода,из них нужно собрать программу(проект, хуй его знает как это в вашей терминологии).
В общем мне нужен экзешник, чтобы я его тыкнул и всё заработало.
Реально ли это сделать человеку ранее не знакомому ни с C ни с программированием?
И где можно найти того кто может это сделать?
Аноним 18/04/20 Суб 19:09:22 1661191211
>>1661092
Да там много всего, и c++ далеко не один аспект. Сначала советую в целом начать изучать тему, чем доступнее будет инфа и инструмент (питон, матлаб, возможно R), тем лучше. В компьютерном зрении а далее в моей трековой обработке много относительно типовой математики, хотя тема очень обширная. На c++ предполагается конечная реализация продукта (хотя это тоже далеко не так, питон имеет либы, написанные на крестах и сопоставимые по скорости с с++), хотя также есть связка xilinx + matlab, что иногда ставят в камеры.
Короче, математика - основа, язык - инструмент, дерзай.

Алсо, изучая сабж, ты столкнешься с уймой схожих и крайне сейчас полезных задач, типа обработки изображений, линал в прикладных задачах (декомпозиции, eigen, вот это всё), нейросети, которые стоит вписать в резюме.
Аноним 18/04/20 Суб 19:18:04 1661206212
>>1661189
Все зависит от состояния проекта. Может быть от простого make install до ебли на несколько часов.
Аноним 18/04/20 Суб 19:24:37 1661215213
>>1657130
Пользуюсь Eclipse CDT и немного CodeLite (там cppcheck работает из коробки, в отличие от эклипса).
Из вима помню только :q!
Аноним 18/04/20 Суб 19:25:34 1661217214
>>1661180
Там он как web фреймворк, а спринг это целая пачка фреймворков и в первую очередь dependency injection. Потом идет бут (всего понемногу чтоб сразу изкаропки все работало). Есть спринги для микросервисов, для тестирования, для работы с данными (включает в себя тот же самый хибернейт, но знать хибернейт для использования не обязательно). Его надо или в главную линию включать или в каждую ветку вписывать по спрингу.
Разве что захочется написать десктопное приложение, там спринг не нужен. Андроид тоже отдельная тема.
Аноним 18/04/20 Суб 19:59:07 1661251215
>>1661215
ты все самое хуевое собрал, что есть. Молодец
Аноним 18/04/20 Суб 22:38:56 1661403216
А что делать на плюсах, если я не хочу идти в геймдев и не хочу заниматься нейронными сетями/машобом/etc?
Микроконтроллеры хоть и не совсем С++, но тоже не интересны.
Аноним 18/04/20 Суб 22:54:58 1661413217
>>1661403
Дык есть еще куча middleware в виде всяких браузеров/системных либ/рантаймов (языков, виртуальных машин итд).
Аноним 18/04/20 Суб 22:59:20 1661417218
>>1661403
>А что делать на плюсах, если я не хочу идти в геймдев и не хочу заниматься нейронными сетями/машобом/etc?
>
https://hh.ru/vacancy/36447247
Аноним 18/04/20 Суб 23:02:25 1661421219
>>1661417
Спасибо, но в нвидию как правило нужны только сениоры. Где можно начать карьеру и какие для этого есть возможности?
>>1661413
Ну это вроде выглядит интересно, правда непонятно, как получить хоть какой-то опыт в этой отрасли.
Аноним 18/04/20 Суб 23:03:38 1661423220
>>1661403
В последнее время видел много плюсов в сторону мк на с++. Действительно, c++ строже си, имеет прекрасный стл, стд::аррай, вектор и шаблоны, почему бы этим не пользоваться? А вся работа с регистрами прекрасно оборачивается в сишечный код, хотя касты тоже никто не отменял.
Аноним 18/04/20 Суб 23:09:09 1661429221
image.png (91Кб, 829x536)
829x536
>>1661417
Ну вот тут написано, что должен делать человек на такой вакансии, но лично я не вижу ничего конкретного. Написано, что ты должен делать какой-то йоба-софт.
Аноним 18/04/20 Суб 23:09:25 1661430222
>>1661421
>Где можно начать карьеру и какие для этого есть возможности?
В яндекс и мейлру стабильно требуется дохуя крестовиков.
Аноним 18/04/20 Суб 23:09:45 1661432223
>>1661429
там же написано - пилить Nvidia NSIGHT.
Аноним 18/04/20 Суб 23:12:48 1661433224
>>1661432
Нихуясе, выглядит впечатляюще.

Вот только как к ним попасть? Наверняка нужно годами обмазыаться всем, что связано с компьютерной графикой и низкоуровневыми вещами
Аноним 18/04/20 Суб 23:14:27 1661436225
>>1661433
тут был анончик, который собесился в эту команду. Я ему еще по почте запиливал, что да как к ним проходить. Мб отпишется, если увидит.
Аноним 18/04/20 Суб 23:14:28 1661437226
>>1661430
Я туда подавался на стажировку, но не смог решить онлайн контест на алгоритмы.
Аноним 18/04/20 Суб 23:18:05 1661440227
>>1661437
> решить онлайн контест на алгоритмы.
Ну так вперед задрачивать. Просто так в мире ничего не бывает.
Аноним 18/04/20 Суб 23:24:06 1661444228
Проблема в том, что я хоть и нахожусь в ДС, не могу найти начать карьеру на плюсах. Пока мои одногруппники весело вкатываются на джава стажировки в сбер и тинькоф, я дрочу какую-то хуиту - писал пет проджекты на Qt, пару раз делал что-то довольно простое с комп. зрением, один раз ковырялся в ядре линукса и пытался написать свой кернел модуль для своего сетевого стека.

В яндексе я обосрался, в хуавее меня послали нахуй, в мейл не подавался, но там вроде бы и нет открытых стажек или вакансий джуна для таких дебилов как я.


>>1661440
>Ну так вперед задрачивать. Просто так в мире ничего не бывает.

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

Правда вот джуны и миддлы им сейчас не особо нужны.
Аноним 18/04/20 Суб 23:33:23 1661447229
>>1661444
Если б я брал на работу программиста и ко мне пришел чувак, который с порога сказал про рейтинг кодефорсес, яб его нахуй послал
Аноним 18/04/20 Суб 23:37:45 1661448230
>>1661447
Так-то понятно, но там был онлайн контест именно на алгоритмы и задачки с сюжетом. Причем на время. Без онлайн контеста на стажировку бекенд разраба не брали.
Аноним 18/04/20 Суб 23:42:08 1661451231
>>1660938
языку 5 лет, алло
Через 5-10 лет весь рынок будет забит вакансиями на раст
Аноним 18/04/20 Суб 23:46:58 1661453232
>>1661451
>Через 5-10 лет весь рынок будет забит вакансиями на раст
А что на нем будут писать?
Так кстати говорили про многие языки, вот только далеко не на всех есть огромные количества вакансий.
Аноним 18/04/20 Суб 23:49:55 1661455233
>>1661453
Критический софт в плане безопасности. Блокчейн там разный, браузера потизоньку на него начнут переписывать, новые ОС писать, новые либы - работы непочтаый край, надо же как-то дырявый Си заменить.
Аноним 19/04/20 Вск 04:49:43 1661508234
Аноним 19/04/20 Вск 08:08:09 1661539235
>>1661451
А что будет с с++ через 5-10 лет?
Аноним 19/04/20 Вск 09:23:06 1661568236
Аноним 19/04/20 Вск 12:23:00 1661726237
>>1661539
Потихоньку будет уступать более современным и безопасным системным языкам (в данном случае Расту)
Аноним 19/04/20 Вск 12:39:29 1661741238
>>1660938
Так вакансий С++ в РФ тоже нет, кроме нескольких городов, которые можно пересчитать по пальцам одной руки.
Аноним 19/04/20 Вск 12:54:50 1661751239
>>1661726
Мне кажется, что c++ тоже безопасный. Компилятору ничего не мешает по-умолчанию считать за ошибки сырые указатели например, или си-подобные массивы
Аноним 19/04/20 Вск 13:01:28 1661756240
>>1661751
C++ не безопасный, так как в нем есть возможность выходить за границы массивов, как и в Си.
Если бы С++ был бы безопасным языком, то в таких продуктах как, допустим, Хром не было бы уязвимостей, связанных с порчей памяти (memory corruption), а на деле там каждый год что-то находят. Ну и в гугле далеко не дебилы работают, засим подобные ошибки в языках типа С и С++, да еще и в огромный кодовых базах, неизбежны, даже если код пишет профессионал высокой квалификации.
Аноним 19/04/20 Вск 13:14:47 1661765241
>>1661756
>Ну и в гугле далеко не дебилы работают
Rob Pike, по опыту, считает иначе:

“The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt.”
Аноним 19/04/20 Вск 13:22:41 1661769242
>>1661765
Цитата ни разу не говорит о том, что они некомпетентные, так что к чему ты цитировал Роба Пайка яхз.
Учти, что Хром 24/7 находится под фаззингом, а фаззит его кластер с 15000 процессорами. И все равно независимые исследователи, не связанные с гуглом, находят там дыры в памяти, можно даже открыть CVE, начиная даже с прошлого года, и посмотреть. С++ небезопасный язык и никогда таковым не будет, ибо безопасность влечет за собой потерю перформанса, причем ощутимую, как ни крути. И рыбку съесть, и на хуй сесть - такого не бывает в этой теме. Всегда за что-то платят чем-то.
Аноним 19/04/20 Вск 13:35:12 1661779243
>>1661756
Так напиши контейнер который при доступе по индексу будет чекать границы массива. В чем проблема?
Аноним 19/04/20 Вск 13:37:10 1661782244
>>1661779
> Так напиши контейнер
Уже написано до нас. Вектор чекает, если получать через at() а не operator[]
Аноним 19/04/20 Вск 13:41:15 1661788245
>>1661782
Ну все значит раст ненужон
Аноним 19/04/20 Вск 14:37:40 1661862246
>>1661788
Ну что ты делаешь.
Сейчас этот сектант вернётся и опять будет засирать тред мантрами с конференций полутора землекопов.
Аноним 19/04/20 Вск 14:49:53 1661885247
>>1661782
Лол, не знал. А какая там разница в перформансе? Когда выдрачивают из софта на крестах все соки в плане скорости - избегают? Или для таких целей уже лучше не ебать мозги и писать на чистом Си?
мимо другой анон-крестовик
Аноним 19/04/20 Вск 15:03:52 1661901248
Привет >>1659834 - кун снова выходит на свзяь.

Допустим я хочу использовать библу https://bitbucket.org/tunnuz/json/src/default/ ее нужно качать и скомпилировать? Есть какие-то пакетные менеджеры? У нас в питоне requirements.txt в нем прописывается пакет и версия, или ссылка на гит, если пакет тащится с гита, и pip по большей части сам все резольвит, как дела с этим обостоят в плюсах?
Спасибо за ответыДобра и здоровья в это нелегкое время
Аноним 19/04/20 Вск 15:23:16 1661913249
Аноним 19/04/20 Вск 15:54:02 1661936250
Двач, дайте образец шаблонной функции с шаблонными возвращаемыми значениями, пожалуйста.
Я что-то пытаюсь смотреть и не могу понять, это вообще возможно?
Аноним 19/04/20 Вск 16:04:53 1661950251
Аноним 19/04/20 Вск 16:08:18 1661958252
>>1661950
И что это за параша? Если бы я мог это прочитать, сюда за примерами бы я не приходил.
Аноним 19/04/20 Вск 16:37:22 1662011253
>>1661936
В общем понял в чём была проблема, шаблоны нельзя разделять на .h и .cpp, но уже C++20, разве ещё не ввели какую-нибудь фичу что-бы это было возможно?
Аноним 19/04/20 Вск 16:45:17 1662021254
>>1662011
>шаблоны нельзя разделять на .h и .cpp,
Тебе Страуструп лично запретил?
Аноним 19/04/20 Вск 16:46:07 1662025255
>>1662021
Мамку твою обоссал и она запретила шаблоны разделять.
Аноним 19/04/20 Вск 16:49:09 1662031256
Аноним 19/04/20 Вск 16:50:28 1662034257
>>1659900
А зачем делают либы без документации?
Аноним 19/04/20 Вск 16:58:00 1662047258
>>1662031
Съебал твою твою мать в жопу, пидар тупой.
Аноним 19/04/20 Вск 18:21:33 1662168259
Есть большой набор строк и есть словарик из неповторяющихся количества строк. Нужно используя словарик сделать новый файл, состоящий из номера строки в словарике или -1, если такой строки в словаре нет. Как оптимально решить такую задачу? Не хочется пилить велосипед.
Аноним 19/04/20 Вск 18:33:56 1662176260
И еще вопросец. Нужен контейнер, который как вектор и как сет одновременно. Что хуже - std::unique и поиск по вектору или выбор элемента по id в сете?
Аноним 19/04/20 Вск 18:54:50 1662205261
>>1662034
Ну не совсем уж без документации. Обычно есть документация уровня "int sum(int, int); // сложение двух чисел", из которой примерно понятно как это использовать, но иногда появляется по десять перегрузок и хуй пойми какую выбрать, приходится копаться в логах коммитов.
Аноним 19/04/20 Вск 18:58:12 1662208262
>>1662176
boost::flat_set
его вроде бы хотели в c++20 добавить в std
Аноним 19/04/20 Вск 19:04:11 1662223263
Что происходит, если не аллоцировать память а просто:
std::unique_ptr<Test> test;
test->func();

Я бы думал test создатся на стеке? А почему работает доступ через ->? И какой памятью тогда владеет unique_ptr? Я думал он только кучей владеть может.
Аноним 19/04/20 Вск 19:14:30 1662238264
>>1662223
test создается на стеке и просто указывает на местоположение объекта в куче. Если его не инициализировать то никакой памятью он не владеет и ты просто дерефнеш нулптр вызвав краш.
Аноним 19/04/20 Вск 20:06:48 1662284265
Аноним 19/04/20 Вск 20:16:01 1662293266
>>1662284
Ты реально еблан? Зачем тебе тут компаратор?
Аноним 19/04/20 Вск 20:17:52 1662296267
chel.PNG (52Кб, 505x186)
505x186
Аноним 19/04/20 Вск 20:41:28 1662329268
Аноним 19/04/20 Вск 20:56:53 1662345269
>>1662296
ты лучший.

>>1662293
по data он плохо сравнивает, не?
Аноним 19/04/20 Вск 21:14:11 1662353270
>>1662238
Ну так то я понимаю, в простом случае
Test* test ;
test->func()
дерефернс разумеется тут же приведет к крашу, но в данном случае unique_ptr работает! Т.е. там не мусор и не NULL. При чем конструктор/деструктор которые я определил не вызываются, что логично. Только почему все равно работает - непонятно.
А вот как только я в func пытаюсь получить значение внутренней переменной класса - тогда segmentation fault. То есть создается какой-то кривой объект, память аллоцируется, но конструктор не вызывается. Не хочется время тратить на этот бред, но все равно интересно, что там по умолчанию в unique_ptr происходит.
Аноним 19/04/20 Вск 21:23:47 1662360271
>>1662353
Когды ты вызываешь функцию класса (невиртуальную) по сути ты вызываешь обычную функцию в которой есть неявный аргумент this.

Соответственно пока ты не обращаешься к полям класса, ничего удивительного что она вызывается нет.
Аноним 19/04/20 Вск 21:23:52 1662361272
>>1662353
Если у тебя func не юзает переменные внутри класса и она не виртуальная тогда все логично. Она просто преобразуется в func(Test* this) и вместо this нулевой указатель, соответственно дереференса не происходит и все нормально. Так же будет и с сырым указателем.
Аноним 19/04/20 Вск 21:28:22 1662366273
1.png (3Кб, 402x114)
402x114
Читаю память, получаю строку в char массиве, присваиваю этот массив строке std::string, добавляется какой-то символ (в данном примере -`(`), в чём проблема? Не понимаю...
Аноним 19/04/20 Вск 21:37:55 1662375274
>>1662366
Как именно ты его присваиваешь?
Аноним 19/04/20 Вск 21:51:15 1662383275
Как скомпилировать программу через Chromium без левых сайтов типо ideon??
Аноним 19/04/20 Вск 21:53:03 1662385276
>>1662366
Нуль-терминатор не забыл?
Аноним 19/04/20 Вск 21:57:08 1662388277
>>1662353
Пару тредов назад был спор по такому поводу и выяснили, что это все же UB.
Не делай так, анон. Нужна функция без определения объекта класса - сделай ее статической, например.
Аноним 19/04/20 Вск 22:02:00 1662392278
>>1662383
Господи, боже мой. Выключи компьютер, и никогда больше не включай. Пожалуйста.
Аноним 19/04/20 Вск 22:02:56 1662393279
>>1662392
Тебе что-то непонятно в вопросе?
Не можешь помочь - промолчи.
Аноним 19/04/20 Вск 22:05:29 1662396280
>>1662393
Не затыкай меня, манюня. Совет выключить компьютер и никогда больше его не включать - это правильный ответ на твой вопрос.
Аноним 19/04/20 Вск 22:09:46 1662398281
Аноним 19/04/20 Вск 22:13:26 1662399282
>>1662398
Как сделать чтобы было сайтом??
По типу этого ideone.com только чтобы можно было работать без интернета.
Аноним 19/04/20 Вск 23:44:36 1662440283
15842651120670.jpg (10Кб, 360x270)
360x270
Аноним 19/04/20 Вск 23:48:22 1662444284
Аноним 20/04/20 Пнд 03:38:51 1662538285
Что такое статическая глобальная переменная и чем она отличается от простой глобальной переменной?

ну то есть

main.cpp
int Foo = 0;
static int Foo2 = 2;

В чем разница?
Аноним 20/04/20 Пнд 04:39:58 1662541286
>>1662538
Влияет на линковку. Это примерно эквивалетно

namespace
{
int Foo2 = 2;
}

Статическая переменная не видна за пределами еденицы трансляции. С нестатической ты можешь сделать вот такую штуку в другом cpp файле:

extern int Foo;

и получить доступ к первой Foo.
Аноним 20/04/20 Пнд 05:29:26 1662556287
Пчелы, а как вы приобрели опыт в сборке проектов? (Make, Cmake, Grandle)
Ввиду того, что пишу на vim'е встал острый вопрос с быстрым получением знаний в этой сфере, раньше молодой был, зеленый и ide все делало за меня, а тепень столкнулся с суровыми реалиями и статьями: "делаем йоба-аллах сборку", где нахуярено миллиард всего и непонятно че как зачем.
Есть какие-нибудь факи проверенные, книжки? Просто советы?
Че лучше юзать? У кого был опыт с Grandle?
Аноним 20/04/20 Пнд 10:18:54 1662624288
>>1662556
По статьям на Хабре
Аноним 20/04/20 Пнд 11:42:31 1662687289
>>1661726
Чтобы нормально писать на раст системное, нужно сделать его небезопасным, однако менее противным он быть не перестаёт в unsafe.
Аноним 20/04/20 Пнд 11:43:33 1662690290
>>1662687
И вообще, ну нафиг этих зумерков со своими жрубями
Аноним 20/04/20 Пнд 11:55:00 1662703291
>>1662687
но ведь небезопасен не весь код, а только ансейф блоки. Что увеличивает вероятность не пропустить баш в прод вообще, ибо проверки на безопасность концентрируются в определенных местах в коде
Аноним 20/04/20 Пнд 11:55:24 1662704292
Аноним 20/04/20 Пнд 12:17:34 1662718293
image.png (487Кб, 512x503)
512x503
Аноним 20/04/20 Пнд 13:29:13 1662792294
>>1662353
> Только почему все равно работает - непонятно.
Один из вариантов это то что так как вызов operator-> у неинициализированого каким-то объектом unique_ptr это UB то компилятор в таком случае может делать что хочет, в том числе просто игнорировать этот вызов в рамках оптимизации.
Аноним 20/04/20 Пнд 14:33:41 1662860295
Аноним 20/04/20 Пнд 14:53:26 1662896296
>>1662353
>дерефернс разумеется тут же приведет к крашу,
и с обычным птром ptr->hui() сработает, если нет обращения к внутренностям, те дереференса this
Аноним 20/04/20 Пнд 15:11:25 1662922297
Аноним 20/04/20 Пнд 15:16:30 1662929298
>>1662922
Там пидоры видимо при компайл тайме чекают в код хуйню какую-то вставляют которая сразу крашит. https://wandbox.org/permlink/XXKOLu9CNT8g9LK8 но я таки смог наебать компилятор и все работает как надо.
Аноним 20/04/20 Пнд 18:16:36 1663130299
Либа, которую я использую, кидает эксепшены в функциях, которые я использую в адаптере между функционалом либы и своим собственным.

Можно ли как-то поймать эксепшен, находясь на уровень выше? То есть не там, где я вызываю функцию, бросающую эксепшен, на на один call выше? Делать re-throw в каждой функции адаптера не хочется
Аноним 20/04/20 Пнд 18:28:53 1663143300
>>1663130
> эксепшен, находясь на уровень выше
Должно быть возможно. Обработка ошибки на любом уровне без ручного пробрасывания - единственный профит эксепшенов. Уточни что у тебя за ситуация и почему не получается. Может там какие нюансы у тебя.
Help Aty 20/04/20 Пнд 19:00:11 1663170301
. Класс Автомобиль (марка, год выпуска, цвет, пробег, мощность, КПП, тип кузова). Метод класса: вывести информацию, большой пробег у машины или нет. Функция: Вывести машины годом выпуска не старше 2000 года с механической коробкой передач.
Аноним 20/04/20 Пнд 19:11:24 1663181302
Ананасы, вопрос по иде
Собираю примитивную многопоточную программу в консоли и всё ок, выполняется как нужно
Но в qt creator'e почему-то программа падает
От чего может быть такое?
Аноним 20/04/20 Пнд 19:28:06 1663189303
Ананасы, как найти первую работу на ебучих крестах?
Нужно было искать летнюю практику, отправил резюме в пару контор, выслали тестовое.
Кое-как сделал, получил отказ, написали, что слабовато (хз, какие требования для ебучей ЛЕТНЕЙ ПРАКТИКИ в ебучих конторах, писал аккуратно, STL, потоки, классы везде).
Недавно было онлайн-интервью, это был пиздец.
Вопросы задавал чел, у которого был пиздец какой микрофон, постоянно приходилось переспрашивать, потому что слышал только ебучий шорох.
Ответил почти на все вопросы (не ответил на вопрос "как сбалансировать бинарное дерево", хотя и говорил, что можно выбрать в качестве корня другой элемент, но т.к. не прозвучало "поворот дерева", ответ не засчитан), написали, что "не хватает теоретических знаний для них.
Как попасть хоть куда-то?
Я уже и не понимаю, что учить
Аноним 20/04/20 Пнд 19:29:37 1663190304
>>1663181
Что падает? Какая ошибка? Хотя бы дебаггером пройдись посмотри, где у тебя SIGSEGV или что там кидается.
Аноним 20/04/20 Пнд 19:31:35 1663191305
.png (3Кб, 363x84)
363x84
>>1663190
> Что падает? Какая ошибка?
Абсолютно ничего не пишет.
Я даже дебаггер не могу запустить
Аноним 20/04/20 Пнд 19:36:42 1663201306
>>1663189
Заливай код на рейт
Аноним 20/04/20 Пнд 19:37:35 1663202307
>>1663191
Ты в QT собираешь или отдельно сам через cl/mingw? Судя по гуглу первое, и QT требует своих бинарей в зависимостях. Попробуй одно из:
1) Подложить исполняемый файл в папку, где лежат все dll от кутей и запустить оттуда
2) Проверить через depends.exe, какие либы исполняемый файл требует
Аноним 20/04/20 Пнд 19:41:39 1663206308
>>1663201
Пока что есть только одно задание.
FTP-сервер.
Вводишь будь директория для хоста, клиенты подключаются, видят список файлов, вводят id и скачивают.
Здесь код для одного клиента, на другом ПК прикручена функция Select.
https://pastebin.com/013akARv
Аноним 20/04/20 Пнд 19:42:10 1663207309
Аноним 20/04/20 Пнд 19:42:13 1663208310
.png (9Кб, 496x181)
496x181
>>1663202
Какая-то беда со стандартной либой?
Аноним 20/04/20 Пнд 19:45:35 1663212311
>>1663208
А всё ок, кажется

Не знаю в чём была беда, но скопировал dll'ки из папки компилятора к бинарнику и всё ок запустилось
Хотя раньше такого не было, да и из консоли всё запустилось сразу же
Аноним 20/04/20 Пнд 19:47:10 1663216312
>>1663189
> Ананасы, как найти первую работу на ебучих крестах?
Я вот тоже пытался, в ДС. Так и не смог найти. Конечно, можно было податься писать десктоп приложения под винду в какое-нибудь НИИ, но я решил для себя, что уж лучше вкачусь в другой стек, все равно пока студент и родители содержат меня.
Аноним 20/04/20 Пнд 19:48:30 1663218313
>>1663216
На каком курсе это было?
Я сейчас на предпоследнем, после лета учусь полгода, потом практика, диплом и все.
Летом думаю выучить Django и HTML/CSS))0
Аноним 20/04/20 Пнд 19:55:31 1663233314
>>1663218
Я сейчас на втором, вот недавно совсем пытался попасть на плюсы и понял, что
а) Бек разработки на плюсах мало, даже в столицах. Я пытался попасть в яндекс на стажировку, но требования по алгоритмам для стажеров выше, чем для джунов. Но джуны им сейчас не нужны.
б) Я нихуя не умею. Для успешного вката в плюсы нужно знать предметную область. Нужно быть прошаренным в низкоуровневой разработке под железки, хорошо знать как работают оси, знать устройство ядра линукса, уметь прогать под ARM. Либо нужно уметь в компьютерную графику, если хочешь в геймдев. Еще есть датасаенс, но там помимо самих плюсов, нужно хорошо знать питон и все библиотеки для него. Ну и математика само собой.

В железки я не умею, учиться долго и сложно, геймдев абсолютно неинтересен, датасаенс как-то не зашел. Решил вот переквалифицироваться в бекенд макаку, сейчас досдам текущие долги по учебе и примусь за js наверное.
Аноним 20/04/20 Пнд 19:58:08 1663241315
>>1663233
Мда, история невеселая, но у тебя хотя бы чуть-чуть времени есть.
Аноним 20/04/20 Пнд 21:10:00 1663298316
>>1663170
Скорей бы тебя отчислили.
Аноним 20/04/20 Пнд 21:42:43 1663335317
Аноны, вопрос по блядской студии. Что делать, чтоб потом без проблем переезжать на новые версии? Очень часто вижу, что собирать проект из 2017 надо с лютым пердолингом в 2019 буквально недавно где-то в репах нвидии нашел что-то под 2017 и не смог собрать, миллион ошибок, в ужасе стер с диска эти файлы, такое же говно помню было с 2012->2015. Cmake не хочу по религиозным соображениям использовать спермосектант.
Аноним 20/04/20 Пнд 21:56:46 1663346318
>>1663335
>Cmake не хочу по религиозным соображениям использовать
А придётся.
Аноним 20/04/20 Пнд 21:59:50 1663348319
>>1663346
Сложна. Вот как мне 20 стандарт включить? Они ахуели требовать руками конфиги править?
Аноним 20/04/20 Пнд 22:01:57 1663351320
>>1663189
Попробуй на завод практикантом, срсли.
>>1663216
В НИИ ты наименее вероятно будешь писать десктоп на крестах, вероятнее какой-нибудь клёвый матан или управление на си
Аноним 20/04/20 Пнд 22:02:57 1663353321
>>1663348
>Вот как мне 20 стандарт включить?
set(CMAKE_CXX_STANDARD 20)
>Они ахуели требовать руками конфиги править?
Лолчто?
Аноним 20/04/20 Пнд 22:09:13 1663360322
>>1663351
А после завода куда?
Или на заводе тоже самое, что и в конторах и меня сразу же возьмут после завода в SPERMASoft?
Аноним 20/04/20 Пнд 22:55:45 1663396323
ЗДАРОВА АНЧОУСЫ
МНЕ 30 ВКАТЫВАЮСЬ В ПЛЮСЫ
ЗЕМЛЯ МНЕ ПУХОМ
ДЕРЖСУ В КУРСЕ
ДАБДАБДАБ
ИЗВИНИТЕ
Аноним 20/04/20 Пнд 23:24:45 1663410324
>>1663335
Линк на проект, попробую для интереса на 19 студии
Аноним 20/04/20 Пнд 23:43:15 1663416325
Аноним 21/04/20 Втр 00:29:06 1663432326
>>1663360
Сужу по своему заводу: студентов берут отлично, особенно если есть связь с институтом. Работа для меня турбоинтересная и уйма возможностей, правда, в основном саморазвитие, нет гуру рядом со мной. В итоге, за 5 лет, я сейчас неплохо (субъективно) знаю кресты, qt, программирование для мк, си, схемоту, немного цос, линал/тервер с питоном и матлабом, даже как-то линуксы собирал.
Почему такой разброс тем? Детская организация работы программистов, никто меня не ебет за сроки и методы, на интересные для меня проекты я вызываюсь сам, в итоге имея неплохой (надеюсь, востребованный) багаж знаний
Aty 21/04/20 Втр 00:38:22 1663435327
>163298
Спасибо, сам разобрался уже:)
Аноним 21/04/20 Втр 00:53:06 1663438328
>>1663335
Открыл солюшн, сделал ретаргет и собрал, попутно решая возникшие ошибки, которые в основном будут связаны с two-phase name lookup, который там наконец-то починили.
Аноним 21/04/20 Втр 01:45:57 1663450329
>>1663335
>Cmake не хочу по религиозным соображениям использовать
>>1663346
ЗОчем? есть premake5, он лучше
Аноним 21/04/20 Втр 01:49:04 1663452330
>>1663432
нихуя как ты дохуя всего знаешь, разве на заводах нужны прогеры? там же производство всякое, нахуй там матлаб с линалом и теорвером?
Аноним 21/04/20 Втр 02:19:31 1663457331
Господа крестовики, подскажите нахуя в плюсах в свое время присобачили возможность инициализировать переменную с фигурными скобками? В чем соль?
Пример:

int yobaint {};

Это типа чтобы точно быть уверенным, что в инициализированной переменной нет мусора или как?
Аноним 21/04/20 Втр 02:21:58 1663462332
>>1663457
быстрофикс - инициалицированная:
int yobaint {69};

Но можно еще так:
int yobaint {};

В первом случае какая-то ебанутая инициализация, во втором случае - непонятная ебанина, но предположение уже выдвинул сообщением выше
Аноним 21/04/20 Втр 02:44:43 1663466333
>>1663432
А зп на заводе ≈ зп в компании?
Аноним 21/04/20 Втр 02:52:56 1663468334
Аноним 21/04/20 Втр 06:40:03 1663491335
>>1663410
Примеры из NVIDIA NGX SDK.
Аноним 21/04/20 Втр 06:47:22 1663493336
>>1663457
Потому что наследие си: то, что может быть декларацией функции - декларация функции, была проблема с дефолтными конструкторами из пустых скобок.
Аноним 21/04/20 Втр 07:11:50 1663497337
>>1660745
Когда ексепшены завезут.
Аноним 21/04/20 Втр 07:58:14 1663508338
>>1663452
Я в конструкторском отделе сижу, поэтому занимаюсь разработкой всяких новых вещей. Матан активно используется в инженерии, представь себе, сколько математики присутствует в какой-нибудь стиральной машине (теория автоматического управления), или в радаре машины (там различная нейросетевая обработка + приемы вычмата + линейная алгебра). И это все нужно разрабатывать, тестировать, моделировать и внедрять. Если делать как-то по-простому, или хз взять либку для ардуины, то вероятно будет работать ненадежно, не говоря про то, что опенсорс проекты далеко не самый топовый матан используют.
>>1663466
У меня в среднем за месяц около 70-80, не ДС.
Аноним 21/04/20 Втр 12:35:37 1663609339
>>1663508
70-80 после 5 лет это, конечно, не фонтан.
Аноним 21/04/20 Втр 12:59:14 1663640340
>>1663508
Вот тебе и востребованный багаж знаний.
Мог бы в ДС 500кк/сек зарабатывать веб-программированием.
Аноним 21/04/20 Втр 13:03:20 1663649341
Насколько сильный оверхэд у исключений? И являются ли они предпочитаемым способом эррор хэндлинга в С++? Или когда важен рантайм - хэндлят ошибки через условия, как в Си?
Аноним 21/04/20 Втр 14:04:37 1663677342
image.png (18Кб, 767x149)
767x149
Ёбаное говно, хуже обоссаных мейкфайлов
Аноним 21/04/20 Втр 14:11:12 1663682343
>>1663677
какой блять импорт, слезь с дерева, петонмакака
Аноним 21/04/20 Втр 14:19:28 1663688344
Аноним 21/04/20 Втр 14:45:06 1663704345
>>1663649
> Насколько сильный оверхэд у исключений?
Большой. Зависит от количества исключений которое будет генерироваться. Если пару десятков в секунду то похер. Если сотни/тысячи то скорее всего будет заметное падение производительности - там уже нужно профилировать и смотреть подходит такое или нет. Плюс еще важна глубина на которой ловится исключение. Если на каждом исключении стек раскручивается на несколько десятков вызовов - понятно что быстро это не будет. Просто чтобы приблизительно понимать вот две равноценных программы https://ideone.com/6PmOav https://ideone.com/EzHI0F (одна с исключениями, одна нет). ideone нивкоей мере не подходит для оценки производительности - отличия в скорости между несколькими выполнениями одной и той же программы могут отличатся в разы. Но он позволяет приблизительно оценить порядок отличий - блок с исключениями медленней на два порядка (приблизительно в 100 раз).
Обрати внимание что важен не факт использования исключений, а именно количество выброшеных исключений. https://ideone.com/Cl0BMk - тут ideone уже не позволит оценить производительность. Я примерно чувствую что должно быть падение процентов на 30% в скорости.
Аноним 21/04/20 Втр 14:55:24 1663709346
>>1663649
Бросать эксепшены дорого.
Активное бросание эксепшенов сильно влияет на производительность.
Наличие эксепшенов в коде, который условно никогда не бросает эксепшены - тоже влияет на производительность, так как препятствует code-reordering, а значит и другим оптимизациями
Аноним 21/04/20 Втр 16:13:22 1663768347
Поясните, нужно ли по умолчанию делать все поля закрытыми и потом некоторые открывать, если необходимо? Зачем нужны такие практики?
Аноним 21/04/20 Втр 16:17:38 1663769348
>>1663508
>не говоря про то, что опенсорс проекты далеко не самый топовый матан используют.
неужто для линейной алгебры, вычмата и нейросетей вы пилите велосипеды, т.к. ваш код качественнее, чем в TensorFlow и lapack?
Аноним 21/04/20 Втр 18:58:46 1663863349
Аноним 21/04/20 Втр 19:00:06 1663866350
>>1663863
PS: я конечно понимаю, что написал хуйню, но блядь... почему оно собралось вообще?
Аноним 21/04/20 Втр 19:01:34 1663868351
>>1663768
О каких полях речь?
Аноним 21/04/20 Втр 19:22:26 1663882352
Screenshot20200[...].jpg (157Кб, 720x1280)
720x1280
Screenshot20200[...].jpg (288Кб, 720x1280)
720x1280
Аноним 21/04/20 Втр 19:22:51 1663883353
>>1663882
Почема не выводит 0?
Аноним 21/04/20 Втр 19:28:45 1663889354
Аноним 21/04/20 Втр 19:46:14 1663902355
>>1663882
>xor
Так, ты не питономакака...
Аноним 21/04/20 Втр 19:50:15 1663904356
>>1663889
Каво? Это же не символы. Да и прикол в том что оно не компилируется
Аноним 21/04/20 Втр 19:51:28 1663907357
>>1663902
а крестики так умеют?
> out = 0x100000000000000000000001000000000000000000000000000000 ^ 0xffffffffffffffffffffffffffffffffffffffffffffffffffff
> "%x" % out
'10fffffffffffffffffffffeffffffffffffffffffffffffffffff'
Аноним 21/04/20 Втр 19:57:28 1663909358
>>1663907
Ну, сделаю, добавив пару постфиксов и auto... Ты гордишься синтаксическим сахаром которым никогда не воспользуешься?
Аноним 21/04/20 Втр 19:58:43 1663910359
>>1663907
На сам деле я часто использую питон для кодогенерации, про питономакаку была цитата)
Аноним 21/04/20 Втр 20:16:38 1663928360
>>1663882
Читай про приоритет операций. Да, это неудачная перегрузка оператора << вместо обычного метода.
Аноним 21/04/20 Втр 20:21:52 1663934361
>>1663769
сколковские нанотехнологии
Аноним 21/04/20 Втр 20:37:45 1663956362
Анон, нормально ли то, что если я вижу Си-подобный код, то мне всё более-менее понятно, но если я, например, не вижу в некоем программном коде фигурных скобок в значении областей видимости, типов данных при объявлении переменных, то я моментально выходу за пределы зоны комфорта? Как это называется?
Аноним 21/04/20 Втр 21:06:45 1663990363
>>1663956
>Как это называется?
Псевдокод? Живучесть си в том что он лёгок для интерпретации, а препроцессор может как сильно сокращать размер кода, так и менять его просто риздец как - никаких скобок может не быть.
Аноним 21/04/20 Втр 21:23:57 1664002364
>>1663769
Например, фильтр Калмана. Годные современные его вариации, которые описаны в статьях, не лежат на гитхабе, и даже в матлабе нет. И мне не нравится твой предвзятый тон, иди нахуй
>>1663934
))))

Аноним 21/04/20 Втр 21:28:26 1664013365
>>1664002
тебе раз его предвзятый тон не нравится,иди нахкй на Пикабу
Аноним 21/04/20 Втр 21:30:50 1664015366
>>1663868
о членах класса, public и private
Аноним 21/04/20 Втр 22:26:55 1664055367
>>1657102 (OP)
Посоны, помогите нюфагу-пизданизду-веб-макаке. Хочется пощупать программирование так как оно есть, а не так, как я делаю сейчас на бэкэнде.
Решил вкатиться в плюсы, хотя бы чисто для себя. И обнаружил что у меня дикие пробелы в CS (если можно так назвать). Работа с потоками, памятью, вот это вот всё - не понимаю.
Что почитать для совсем нюфагов? Может даже не про язык, а про то как всё работает
Аноним 21/04/20 Втр 23:11:27 1664098368
Аноним 21/04/20 Втр 23:54:46 1664141369
>>1664098
Что бамп-то? std::bind возвращает неизвестно что, в твоем случае он вернул что-то из чего смогла создаться std::function<void(C)>.
Аноним 22/04/20 Срд 00:18:13 1664150370
>>1664098
А если удолитб дефолтный конструктор у С ?
Аноним 22/04/20 Срд 00:29:11 1664155371
>>1664098
Научись делать минимальные примеры. У тебя куча лишних вещей, которые отвлекают.
https://godbolt.org/z/dvs3Ra
Аноним 22/04/20 Срд 01:36:29 1664177372
>>1664141
Ну собственно вопрос так и звучит:
> почему оно собралось вообще?
>>1664150
Ничего не поменяется
>>1664155
Смысл резать эти 30 строчек в тестовом примере?
Аноним 22/04/20 Срд 11:02:25 1664301373
>>1664177
Колбек вызвался успешно потому что там нет разницы с каким количесвтом агрументов ты его вызываешь, до тех пор пока их хватает - потому чт оагрументы не передаются напрямую в колбек, а вызывается std::invoke (который получается все переданые аргументы) - и из них выбираются нужные в соответсвии с std::placeholders которые ты передал при вызове std::bind. А так как ты ничего не передавал то все агрументы просто игнорируются.
Почему пройден статический контроль неясно. Скорее всего результат std::bind неявно приводится к любому callable. Наверное это из-за того что у результата std::bind нет как таковой сигнатуры - его можно вызывать с любыми аргументами, ошибка будет только если std::invoke не найдет всех нужных агрументов.
Аноним 22/04/20 Срд 11:59:07 1664331374
>>1663769
В библиотеках код общий, а в реальной жизни его нужно затачивать под задачу.
Аноним 22/04/20 Срд 14:12:35 1664440375
>>1663351
>В НИИ ты наименее вероятно будешь писать десктоп на крестах, вероятнее какой-нибудь клёвый матан или управление на си
А как такое искать в ДС? Типа есть какие-то НИИ, которые выставляют вакансии на хх, но то видимо нормальные заведения, куда нужны нормальные кадры
Аноним 22/04/20 Срд 14:29:54 1664445376
>>1664301
Спасибо. Доходчиво объяснил.
Аноним 22/04/20 Срд 14:57:39 1664462377
>>1664331
Дело говоришь. Даже длинную арифметику приходится переписывать под задачу.
Аноним 22/04/20 Срд 15:01:37 1664465378
>>1663769
>TensorFlow
То ещё говно на самом деле.
Аноним 22/04/20 Срд 16:42:32 1664611379
Проходим в вузике многопоточность, и я в ахуе с этого говна под названием winapi. Почему все так криво и косо?
Аноним 22/04/20 Срд 17:07:22 1664660380
>>1664611
ЕМНИП там треды, семафоры и критические секции вполне нормально сделаны. Что не так?
Аноним 22/04/20 Срд 17:50:07 1664745381
>>1664611
Оно дизайнилось чуть ли не в 90ых на сишечке. Абсолютно вся "красота" современных языков - тупо обертка над этим.
Аноним 22/04/20 Срд 18:04:56 1664761382
>>1664465
альтернативы обычно из разряда: что-то специфическое лучше, но в остальном сосет
помогите ретарду Аноним 22/04/20 Срд 18:15:45 1664776383
Screenshot20200[...].png (57Кб, 1919x1021)
1919x1021
я хочу построить библиотеку в С++ для самодельной имплементации множества. Пользуюсь CLion. С чего начать?
Аноним 22/04/20 Срд 18:28:09 1664809384
>>1664776
Напиши код, вынеси его в отдельный неймспейс, протести
Аноним 22/04/20 Срд 18:30:48 1664820385
>>1664611
Скажи им там в этом майкрософте тогда, как надо было сделать! А то хули, сколько десятков лет уже всё криво и косо.
Аноним 22/04/20 Срд 20:14:03 1664908386
Хочу научиться рисовать на плюсах. Решил выбрать vulkan api. Стоит ли учить его полностью или лучше учить v-ez и прочие обертки?
Аноним 22/04/20 Срд 20:17:35 1664910387
>>1664908
Начни хотя б с opengl, если с графикой не работал.
Аноним 22/04/20 Срд 20:19:14 1664912388
hellotriangle.png (1977Кб, 3300x20723)
3300x20723
Аноним 22/04/20 Срд 20:19:57 1664915389
Есть ли вариант вкатиться в инди геймдев на чистых плюсах? Хорошо ли анрил, если речь идет не только о 3д играх?
Аноним 22/04/20 Срд 21:10:29 1664952390
Очередной проигрыш сосачерных псевдобайтойобов
Анимедебилы спокойно пишут транспиляторы шиндусятской директхуйни на вулкан, пока вы тут ряясложнаете
Аноним 22/04/20 Срд 21:17:32 1664955391
>>1664908
Если ты хочешь научиться - бери либо OpenGL, либо DirectX 11, ни в коем случае не трогай ни вулкан, ни DX12
Аноним 22/04/20 Срд 21:18:10 1664956392
Аноним 22/04/20 Срд 22:09:03 1664990393
>>1664908
Vulkan это не апи для рисования, это апи для программировани видеокарты. Подумой.
Аноним 22/04/20 Срд 22:58:20 1665020394
>>1664990
>>1664955
Но я где то читал, что вулкан это новая версия opengl
Аноним 22/04/20 Срд 23:45:22 1665052395
>>1665020
Вобщем я понял что vulkan не для новичков. Буду opengl учить
Аноним 23/04/20 Чтв 00:04:18 1665058396
>>1665052
Лучше читать книги с офф сайта, или туториалы из интернета тоже подойдут?
Аноним 23/04/20 Чтв 00:08:15 1665059397
>>1665058
И че там по мате. Надо что нибудь знать для изучения opengl, или математика пригодится только в моих собственных проектах?
Аноним 23/04/20 Чтв 00:26:27 1665063398
>>1664990
Ну а ему что надо? Оформил пайплан, засабмитил, во фреймбуфере рисунок, просто!
Аноним 23/04/20 Чтв 02:49:10 1665084399
>>1664611
Тогда ещё не знали, как надо правильно программировать. Сейчас тоже не знают, но знают, как не надо.
Аноним 23/04/20 Чтв 03:50:23 1665093400
>>1665084
>Сейчас не знают как программировать, но знают, как не надо.
Всё верно, программисты остались в 90-х, сейчас макаки которым программирование не надо.
Аноним 23/04/20 Чтв 07:26:54 1665142401
>>1664912
Тащемта вулкан лютая хуйня. После него DX12 выглядит как годнота для людей. Писать под вулкан на Винде - себя не уважать. Тем более технологически вулкан всегда в позиции догоняющего. Майки переработанную версию DXR выкатывают, а в вулкане только первую версию трассировки выкатили, на которой только хэллоуворлды есть.
Аноним 23/04/20 Чтв 09:54:46 1665183402
>>1665142
DX12 чето пиздец как переусложнен. Тредсейф убрали, контекст убрали, и самый пиздец это то, что теперь ты САМ должен контролировать все дескрипторы ЦПУ и ГПУ т.е. писать свой диспетчер этих дескрипторов.
Аноним 23/04/20 Чтв 11:22:18 1665226403
>>1665183
Ну в вулкане ещё хуже. DX12 под многопоточных рендеринг заточен, если разобраться, то ничего сложного. Просто куча шаблонного кода для синхронизации и управления памятью.
Аноним 23/04/20 Чтв 12:10:03 1665257404
.png (2Кб, 391x42)
391x42
Есть ли разница?
Аноним 23/04/20 Чтв 12:11:35 1665258405
>>1665142
>После него DX12 выглядит как годнота для людей.
для макак, которые выучили dx какой-то версии и пишут шинда-only преложухи
Аноним 23/04/20 Чтв 12:44:00 1665268406
>>1665063
Там же надо такие литании духу машины сочинять, что охуеешь.

>>1665257
Конечно, не видишь что ли - аргументы в разном порядке!
Аноним 23/04/20 Чтв 12:46:24 1665270407
>>1665059
Без математики никак. Почитай какие нибудь учебники по линалу и матану. В особенности по линалу, без него никак.
Аноним 23/04/20 Чтв 13:46:10 1665352408
Привет, аноны. Я вкатывающийся ньюфаг, прошел примерно половину курса на stepik, все зашибись. Но прямо сейчас в заданиях стали появляться многочлены, квадратные уравнения, системы уравнений и вот это все. Я вроде не полный гуманитарий и понимаю, что это все на самом деле средняя школа, но у меня подгорает это действительно нужно для изучения языка?
Аноним 23/04/20 Чтв 14:13:41 1665394409
>>1665352
>>1665352
это общая проблема всех этих говнокурсов. Нет, нахуй все это не нужно для обычной разработки
Аноним 23/04/20 Чтв 14:18:22 1665399410
>>1665268
Ты про еблю из-за ассинхронности самого api - ну фенсы там шменсы-барьеры?
Аноним 23/04/20 Чтв 14:31:59 1665424411
>>1665352
Если ты изучаешь язык, то конечно нет. Если ты учишься программировать, то конечно нужно.
Аноним 23/04/20 Чтв 18:07:23 1665691412
>>1665270
А что там с матаном?
Аноним 23/04/20 Чтв 19:44:53 1665780413
изображение.png (11Кб, 783x225)
783x225
Почему не закрывается калькулятор?
Аноним 23/04/20 Чтв 19:49:20 1665785414
Аноним 23/04/20 Чтв 19:49:58 1665788415
>>1665785
Ну я же вызываю terminate process
Аноним 23/04/20 Чтв 20:11:21 1665820416
>>1665780
>The handle must have the PROCESS_TERMINATE access right. For more information, see Process Security and Access Rights.
Наверняка кто-то доки плохо читает.
Аноним 23/04/20 Чтв 20:13:43 1665822417
>>1665820
и уж наверняка среди каких-то из твоих нулей (подсказка нубу: 0=nullptr=false) есть какой-то с access rights флажками.
Аноним 23/04/20 Чтв 20:41:21 1665843418
кресто-бояре может кто пояснит
чому в вакансиях 11/14 стандарт хотя вот вот выкатят 20?
Аноним 23/04/20 Чтв 21:21:10 1665872419
>>1665843
Потому что ленивые хуесосы не могут пересесть на 17 стандарт кококо зависимости кудах нам заебись и так
Аноним 23/04/20 Чтв 21:32:47 1665875420
>>1665843
Легаси, у меня от 17 до недо 11 например приходится использовать. Причем 17 мои личные.
Аноним 23/04/20 Чтв 21:47:22 1665890421
>>1665843
Легасихуйня или бездари девелоперы. Мы перевели у себя все проекты на 19 студию\17стандарт, но потратили время
Аноним 23/04/20 Чтв 22:16:29 1665918422
>>1665890
Сколько времени?
спрашиваю для сравнения
Аноним 23/04/20 Чтв 22:18:05 1665920423
>>1665918
Где-то месяц суммарно на все проекты одного разраба, но разраб сильный, и проектов немного.
Аноним 23/04/20 Чтв 22:26:06 1665927424
>>1665920
В чем переход заключался? Я переводил около двухсот проектов, тоже где-то месяц заняло. Пересобирал штук 15 библиотек, исправлял сборку, выпиливал некрокод (в т.ч. части буста, которые вошли в стандарт), фиксил шаблонные конструкции и всякие ошибки, которые раньше не проявлялись
Аноним 23/04/20 Чтв 22:38:03 1665937425
>>1665927
std::experimental::filesystem, хуева гора деприкейтов, новых варнингов и прочего. Ну и бонусом мы там еще меняли CI\CD и еще мелочи.
Аноним 24/04/20 Птн 07:10:37 1666069426
>>1664955
А если нужна графика с 2д примитивами, нарисовать там линии, квадратики, битмап вывести, без сильной динамики. Кроссплатформенное и без qt?
другой анон
Аноним 24/04/20 Птн 07:59:14 1666082427
>>1666069
Можешь вообще руками всё рисовать, ёпта.
Аноним 24/04/20 Птн 08:09:25 1666085428
select(0,0,0,0, (const struct timeval){.tv_sec = 5, .tv_usec = 0});
>expected an expression

Что не так?
Аноним 24/04/20 Птн 08:22:30 1666092429
>>1666085
Ты тредом ошибся, тебе в си.
Аноним 24/04/20 Птн 08:22:32 1666093430
image.png (20Кб, 536x203)
536x203
>>1666085
конструктор отваливается ещё хуже
const struct timeval(.tv_sec = FM_MODWORKER_TICK, .tv_usec = 0);
Аноним 24/04/20 Птн 08:31:10 1666097431
>>1666093
>Designated initializers are indeed very useful as you point out, if only they could be used in code-bases that are supposed to be portable. If your code needs to be compiled with the Microsoft C compiler – tough luck! Microsoft still stubbornly refuses to support C99, and as a result, designated initializers as are not supported.
Лямбды есть, а вот этого нет.
Аноним 24/04/20 Птн 08:35:31 1666098432
Анон, есть ли реальный шанс, что с++ вытеснит си и займет его нишу, в частности микроконтроллеры? Я для них пишу, естественно использую hal производителя, и я не вижу каких-то сильных проблем переноса кода на кресты.
Плюсы: c++ безопаснее, 80% дефайнов меняются на енумы, шаблоны-шаблончики, стл, вектора и карты, и миллиард написанных библиотек.
Аноним 24/04/20 Птн 08:40:33 1666099433
>>1666098
>шаблоны-шаблончики
https://en.wikipedia.org/wiki/FLTK
>It also avoids complex macros, separate code preprocessors, and use of some advanced C++ features: templates, exceptions, and run-time type information (RTTI) or, for FLTK 1.x, namespaces.
Аноним 24/04/20 Птн 08:46:49 1666103434
>>1666099
Для 98 это был плюс. В 2к20 с нормальной иде и цлангом нет проблем работать с шаблонами
Аноним 24/04/20 Птн 08:52:08 1666104435
>>1666103
Нет проблем вообще написать эмбеддед-софт на жабе. Ну почему нет? Посмотри на смартфоны, взлетело же.
Аноним 24/04/20 Птн 09:18:26 1666114436
>>1666098
Для этого ему нужно приблизиться по скорости к Си. Что в свою очередь ведет к отказу от фишечек Си++ так как они ведут к дополнительным тратам ресурсов, т. е. ты на плюсах будешь писать как на сях.
Аноним 24/04/20 Птн 09:23:44 1666119437
>>1666114
Ты просто не умеешь писать на c++
Аноним 24/04/20 Птн 09:27:04 1666122438
>>1666119
Я не умею даже понимать чужой c++ код с тимплейтами.
мимо
Аноним 24/04/20 Птн 09:27:20 1666124439
>>1666119
Сам создатель, который с гим работает всю жизнь, не умеет на нем писать. В этом нет ничего зазорного. А то что ооп это компромисс между производительностью и структурированнностью кода - давно известный факт.
Аноним 24/04/20 Птн 09:32:24 1666129440
image.png (113Кб, 862x435)
862x435
>>1666122
Хотел попробовать переводить в sleep_for обычное сишное значение, а не std::chrono::seconds. Дожно конструироваться же.
Посмотрел в заголовок и нихуя не понял.
Аноним 24/04/20 Птн 09:47:12 1666133441
>>1666104
Как я понимаю, ява разрабатывалась с идеей создания унивирсального байт-кода для любой платформы с использованием какой-то ебаной ява-машины, но мир на самом деле родил не так уж и много разных аппаратных платформ, арм везде пустил свои щупальца, а гцц/цланг позволяет генерить код под все популярные (и не очень) архитектуры. ИМХО, ява обречена, ее популярность сугубо из-за легаси.
Да и c++ родной с си, без проблем один в другой можно включить, что хорошо для плавного перехода HAL.
>>1666114
Многие мои коллеги не компилируют под мк с -O3, типа что-нибудь отвалится, изменятся тайминги и не будет работать. Да, люди игнорируют варнинги.
Аноним 24/04/20 Птн 10:01:27 1666145442
>>1666129
>MSVC
Вот твоя первая проблема
Аноним 24/04/20 Птн 10:03:49 1666148443
>>1666124
> Сам создатель не умеет на нем писать.
Зелень, съеби плиз в свой js-загон.
Аноним 24/04/20 Птн 10:05:39 1666149444
>>1666133
>Да, люди игнорируют варнинги.
Я тоже игнорирую их т.к. приходится просто. Вот взял ты либу какую-нибудь с гитхаба, подключил и сразу получил 100+ варнингов. И что мне блять с этим делать, самому их фиксить? Мне проще вырубить их нахуй и все.
Аноним 24/04/20 Птн 10:32:17 1666171445
>>1666149
Палю годноту
/experimental:external /external:W0 /external:anglebrackets
Аноним 24/04/20 Птн 10:44:35 1666182446
>>1664055
Брукшир информатика и ВТ
Аноним 24/04/20 Птн 10:53:03 1666188447
image.png (26Кб, 720x78)
720x78
Аноним 24/04/20 Птн 11:14:44 1666205448
>>1666148
О, что тут у нас, долбоеб пишущий говнокод, который думает, что этот код крут потому что написан на плюсах? Может перестанешь на бьерна дрочить и собой займешься?
Аноним 24/04/20 Птн 11:55:17 1666236449
Аноним 24/04/20 Птн 12:33:07 1666275450
Аноним 24/04/20 Птн 13:15:52 1666312451
>>1666205
Скажи, ты тот же ебалдяй, который с пеной у рта доказывал про опасность goto или другой? У вас очень похожий мыслительный процесс, если это словосочетание вообще применимо к вам.
Аноним 24/04/20 Птн 13:43:54 1666343452
>>1666312
Это обычный человек, без мозгов, привыкший подчиняться чужой воле, настолько, что даже когда никто не приказывает, думают что приказ существует. В реальности проявляется так: вот есть в С++ классы, шаблоны, етс. етс., значит НУЖНО это всё юзать, иначе ты лох-пидр бла-бла. Тямы нет осознать, что это не принудиловка спущенная "начальником", а свободный выбор, где только ТЕБЕ ЛИЧНО решать использовать или нет. Потому что сами думать и за себя решать не способны в принципе, на генетичсеском уровне не способны.
Аноним 24/04/20 Птн 13:59:06 1666360453
stringlib.PNG (31Кб, 645x807)
645x807
stringlib2.PNG (8Кб, 490x255)
490x255
реализовал свой собственный класс String. Описание на 1 скрине.
Всё работает, но есть проблема при считывании файла. При создании объекта класса String в функции Get_file_Content содержимое файла успешно считывается туда, но при возвращении ничего не сохраняется. Приходиться передавать объект класса по ссылке - 2 скрин и делать её void. Что я упустил? Написать отдельный метод, чтобы возвращать содержимое в случае return ?
Аноним 24/04/20 Птн 14:07:16 1666368454
>>1666360
Ну какой нахуй собственный класс строки в 2020 году? Без мув конструктора тем более. Вангую, в консрукторе копирования у тебя там string_ = other._string
Аноним 24/04/20 Птн 14:17:32 1666381455
>>1666368
В целях понимания ООП. Мне сразу, что-то сложное что ли брать?
Аноним 24/04/20 Птн 14:30:57 1666391456
>>1666381
Если хочешь ООП ради ООП возьми Qt и педалируй там интерфейсы. Тут тебе и наследование, и инкапсуляция, и полиморфизм, и композиция и ещё куча умных слов
Аноним 24/04/20 Птн 15:09:00 1666420457
>>1666360
Где мув-конструктор блъ?

>>1666391
Он не осилил не проебывать единственный указатель при копировании, какой нахуй полиморфизм.
Аноним 24/04/20 Птн 15:30:21 1666447458
internet-meme-r[...].jpg (74Кб, 800x800)
800x800
Сап двощ. Когда ебучие макаки разработчики компиляторов (или хотя бы одного) уже запилят полноценно модули? Feature freeze уже год назад произошёл, всё утверждено. И какого хуя вся эта котовасия всё ещё тенется? У кого нибудь есть прогнозы/инсайды/слухи?
Аноним 24/04/20 Птн 15:51:41 1666462459
>>1666447
Они во всех трех компиляторах есть уже. Тот же микрософт в проде уже минимум год использует, например.
Аноним 24/04/20 Птн 16:03:58 1666478460
>>1666462
А можно пример кода с модулями?
другой
Аноним 24/04/20 Птн 16:10:12 1666484461
Аноним 24/04/20 Птн 17:42:25 1666562462
>>1666312
Зачем доказывать то, о чём тебе Бог-создатель сам рассказал? goto нельзя использовать из-за того что он дает слишком много возможностей.
Аноним 24/04/20 Птн 17:55:58 1666578463
>>1666360
Насколько можно понять из твоего хуевого описания, проблемы в конструкторе копирования, ищи там

Плюс мув-конструктора нет, что скажется на эффективности работы.
Как и еще кучи вещей по типу виртуального деструктора, мув-присваивания, инициализации итераторами, определения типов размера, отдельного чара и тд.

Если целью не стоит заимплементить именно юзабельный тип, то лучше тренить ооп на чём-нибудь попроще: animal, cat, dog и тд
Аноним 24/04/20 Птн 18:14:48 1666588464
>>1666562
Ясно, значит ты всё-таки тот самый опарыш
Аноним 24/04/20 Птн 18:30:48 1666603465
>>1666478
двачую реквест, ток давайте реальный код
Аноним 24/04/20 Птн 18:36:01 1666611466
>>1666603
что-то мне подсказывает, что люди так и останутся сидеть на хидерах, причём это коснётся как всяких системных бздей, так и прикладных к ним утилит
Аноним 24/04/20 Птн 18:44:19 1666626467
>>1666478
Я не могу тебе взять и достать код из какого-нить внутреннего гита Микрософта. Я подписан на твиттеры челиков из MSVC, они писали, что у них внутрях уже модули во всю используются.

>>1666611
Ну, вот тут я не согласен. Как только в IDE появится полноценная поддержка модулей (Вижуал Студия 2021?) - мы на работе переедем в ту же секунду.
Аноним 24/04/20 Птн 18:53:27 1666635468
хидеры не нужны, весь проэкт пишешь в одном .cpp файле
современные компы и компиляторы спокойно компилят файлики под сотню тысяч строк

Аноним 24/04/20 Птн 18:55:00 1666636469
Где лучше почитать про параллельное программирование, мьютексы, семафоры и доступ к разделяемым ресурсам? Есть маст хэв книга на эту тему?
Аноним 24/04/20 Птн 18:55:55 1666637470
прмер 1.PNG (6Кб, 463x225)
463x225
пример3.PNG (8Кб, 475x270)
475x270
>>1666578
Ну хз. Вроде здесь конструктор копирования простой (пик 1). И он нормально работает при создании объекта (пик 2).
Аноним 24/04/20 Птн 18:58:10 1666639471
пример2.PNG (10Кб, 455x301)
455x301
>>1666637
Проблема возникает тут.
Аноним 24/04/20 Птн 19:04:18 1666641472
>>1666636
Книгу Вильямса гугли про параллельное программирование
Аноним 24/04/20 Птн 19:26:25 1666649473
>>1666635
У тебя комплюктер пополам треснет при попытке открыть и отредактировать файл на 1кк строк.

>>1666639
>Проблема возникает тут.
Нет, не тут. На 75% уверен что проблема ETO TI в операторе=
Алсо надеюсь тебе не очень нужен завершающий \0, потому что read() его не пишет.
Аноним 24/04/20 Птн 19:29:24 1666651474
>>1666649
>У тебя комплюктер пополам треснет при попытке открыть и отредактировать файл на 1кк строк.
гугли Amalgamation builds
Аноним 24/04/20 Птн 19:41:43 1666662475
>>1666651
Я не про то что не скомпилится, а про то что большинство текстовых редакторов (с подсветкой синтаксиса особенно) едут крышей когда открывают файл >1 Гб. даже швитой ВИМ - по крайней мере в 2014 не вывозил
Аноним 24/04/20 Птн 19:44:07 1666666476
>>1666462
>Они во всех трех компиляторах есть уже.
3(2), причём судя по описаниям везде не full featured. Я готов хоть на ебучий текстовый редактор, дайте модули, сука.
Аноним 24/04/20 Птн 19:44:46 1666667477
Господа крестовики, приветствую Вас.
Вопрос таков: каков самый быстрый способ (в рамках ОС, без ебанутых хаков с кастомными гипервизорами) наплодить N процессов и в бесконечном цикле кормить их разными вкусняшками? Я линуксоид, поэтому на ум пришло расфоркаться N раз (имеем в итоге одного отца с N дитяток), батя кормилец, а все N детей потребляди.
Попрошу заметить, что каждый из детей вызывает одну и ту же программу через execve, поэтому треды здесь не покатят.
Это часть функционала одной программы, которую я пишу на плюсах вперемешку с Си (кресты нужны из-за ООП в очень многих местах + банально удобнее работать с данными в некоторых моментах).
Что скажете, есть быстрее способ или я вообще хуйню несу?
Аноним 24/04/20 Птн 19:45:24 1666668478
Господа крестовики, приветствую Вас.
Вопрос таков: каков самый быстрый способ (в рамках ОС, без ебанутых хаков с кастомными гипервизорами) наплодить N процессов и в бесконечном цикле кормить их разными вкусняшками? Я линуксоид, поэтому на ум пришло расфоркаться N раз (имеем в итоге одного отца с N дитяток), батя кормилец, а все N детей потребляди.
Попрошу заметить, что каждый из детей вызывает одну и ту же программу через execve, поэтому треды здесь не покатят.
Это часть функционала одной программы, которую я пишу на плюсах вперемешку с Си (кресты нужны из-за ООП в очень многих местах + банально удобнее работать с данными в некоторых моментах).
Что скажете, есть быстрее способ или я вообще хуйню несу?
Аноним 24/04/20 Птн 19:50:54 1666671479
>>1666662
Вим, имхо, нихуя не показатель быстрого редактора. Да и миллиард разных обвесов не позволяют судить где сам вим а где что-то ещё лагает.
Самый быстрый всё же саблайм.
Алсо, даже в вскод кто-то пытался впихнуть инкрементальный парсер для подсветки кода (https://github.com/microsoft/vscode-go/pull/2555), что как бы намекает что сварганить из готовых инструментов открывалку для гиговых файлов в 2к20. Правда кому это нахуй надо кроме полутора долбоёбов поехавших на перформансе.
Аноним 24/04/20 Птн 19:53:30 1666672480
>>1666667
>в рамках ОС
Тащемта без задней мысли берёш и делоеш. Гуглируешь API создания процессов и IPC для своей любимой ОС и всё.
Аноним 24/04/20 Птн 19:56:17 1666674481
>>1666649
> У тебя комплюктер пополам треснет при попытке открыть и отредактировать файл на 1кк строк.
Кошерные редакторы могут грузить файл по частям. Это не такая уж и сложная фича. Самое сложное в этом - составить карту памяти новых строк, чтобы какое-то подобие классической навигации было.
Ну а вообще я надеюсь что тот анон шутит так.
Аноним 24/04/20 Птн 20:01:39 1666685482
>>1666672
Я объяснил как я это делаю, ты читал вообще сообщение или остановился на "в рамках ОС"?
Я спрашивал есть ли способ БЫСТРЕЕ это делать?
Аноним 24/04/20 Птн 20:01:52 1666686483
>>1666667
Если тебе нужно решить какую-то задачу — не страдай хуйнёй и возьми готовый ивентлуп (libuv/libev/итд) на вкус, если хочешь более хайлевел решение — возьми какую нибудь либу с корутинами и шедулером.
Если в целях образования — то возьми либу по вкусу из совета выше и ковыряй её исходники. Если будешь вслепую писать на найденных апишках — скорее всего просто проебёшь кучу времени и придёшь к тому же результату в конце концов.
Аноним 24/04/20 Птн 20:06:44 1666692484
>>1666674
А не проще хуйнуть всё в memmap и пусть ОС с виртуальной памятью с этим ебётся?
Аноним 24/04/20 Птн 20:15:22 1666700485
>>1666692
Ну можно и хуйнуть. И получишь соответственный результат в половине случаев.
Аноним 24/04/20 Птн 20:28:12 1666708486
>>1187897
Аноним 24/04/20 Птн 20:47:25 1666715487
>>1666639
С копи конструктором все норм. Но там еще вызывается Resize, и непонятно как именно используется Get_File_Content: инициализируешь новую переменную - вызывается копи конструктор, присваивание к уже существующей - operator=

И раз ты подебажил и понял, что файл действительно успешно читается, то в чем проблема посмотреть что там происходит в месте вызова Get_File_Content?
Аноним 24/04/20 Птн 23:52:10 1666875488
image.png (82Кб, 1366x768)
1366x768
Почему ошибка обращения к памяти, хотя память Read Write ? Exception thrown: read access violation.
val was 0xDC6E168000. Хотя до этого 2 раза нормально прочел два других региона с state commit, правда protect read
Аноним 25/04/20 Суб 00:09:12 1666893489
image.png (117Кб, 1366x768)
1366x768
>>1666875
Наверное это связано с описанием про read write здесь, но я не собираюсь исполнять этот код. Почему тогда ошибка?
Аноним 25/04/20 Суб 00:10:07 1666895490
>>1666893
Хотя такое же описание у ридонли, но ридонли спокойно читается
Аноним 25/04/20 Суб 00:24:32 1666900491
>>1657102 (OP)
Ананасы, изучаю многопоточку
Дошёл до атомиков и мем_ордер
Как в этих мем_ордерах разобраться-то? Ну кроме дефолтного
Аноним 25/04/20 Суб 00:42:34 1666905492
image.png (21Кб, 528x341)
528x341
Охуеть, че можно-то...
Анончики, почто я так бездарно просрал свои студентские годы? Писал свои велосипеды на Си вместо того, чтоб окунуться в кресты. Довыебывался, работаю теперь черти на чем вообще, а ведь мог без задней мысли, рекурсивного захлебывания инфой из толстых книжек и прочего педантизма юзать мощь крестов в свое удовольствие и постигать дзен в бою - давно бы уже крестовиком трудоустроенным стал.
Аноним 25/04/20 Суб 01:54:56 1666936493
>>1666905
Что именно можно?
Если ты про компайл-тайм вычисления, то это просто что то типа встроенного продвинутого калькулятора. Приятно, но в целом хуйня.
Представляю как ты охуеешь, когда дойдешь до темплейтов и узнаешь про всякие metaprogramming штуки
Аноним 25/04/20 Суб 02:07:50 1666938494
Аноним 25/04/20 Суб 05:48:35 1666960495
>>1665257
Бля, ну ты даешь.
Одна функция заполняет n элементов, а вторая - n байт.
Есть разница?
Аноним 25/04/20 Суб 06:10:07 1666962496
>>1666637
На заметку.
На пике один ты инициализируешь size_, а потом выделяешь в string_ size_ +1 элементов в списке инициализации.
И все это работает только потому что в самом классе ты сначала объявил size_, а потом string_. Было бы наоборот - падал бы твой конструктор и ты бы очень долго искал ошибку.
Потому надо инициализировать члены класса в порядке объявления.
Аноним 25/04/20 Суб 11:15:03 1667046497
Пчелы, а какой codestyle ваш любимый?
Аноним 25/04/20 Суб 11:21:41 1667050498
1508014316004-d[...].jpg (32Кб, 650x487)
650x487
Аноним 25/04/20 Суб 11:46:07 1667063499
Аноним 25/04/20 Суб 12:00:08 1667075500
>>1665820
Не особо понятно, куда ставить этот флаг. В списке флагов функции createprocess такого нет, а если все же его там выставить, процесс просто не запустится.
Но что самое странное, код успешно работает, если в качестве приложения выбрать например internet explorer, или foxit reader.
Может есть какой то запрет на terminateprocess именно у калькулятора?
Аноним 25/04/20 Суб 12:13:59 1667090501
>>1667046
Самый лучший стиль у линукса
Аноним 25/04/20 Суб 13:10:53 1667124502
А нахуя нужен WebAssembly, если один хуй надо его обмазывать жсом? Причем там такая ебля в сраку, что проще написать это всё в бэке или на чистом жсе, чем пердолиться с встраиванием васма.
Аноним 25/04/20 Суб 13:24:28 1667142503
Здравствуйте, у меня в Visual studio появилась проблема,при запуске программы все время идет загрузка символов,можете подсказать,что делать
Аноним 25/04/20 Суб 13:28:48 1667143504
>>1667142
Не пользоваться Visual studio
Аноним 25/04/20 Суб 13:32:51 1667148505
Аноним 25/04/20 Суб 13:57:59 1667165506
>>1666667
>Попрошу заметить, что каждый из детей вызывает одну и ту же программу через execve, поэтому треды здесь не покатят.
Какой-то изначально ебанутый дизайн, если честно. Тебе так в любом случае придётся делать процессы через стандартное АПИ оси, от этого ты никуда не денешься никогда. Вопрос лишь в том, как процессы общаются между собой - через пайпы или Posix Message Queue или shmget или сокеты или что придумаешь.
Аноним 25/04/20 Суб 13:59:00 1667166507
>>1667142
Посмотри настройки VS или переменную среды _NT_SYMBOL_PATH
Аноним 25/04/20 Суб 13:59:56 1667167508
Аноним 25/04/20 Суб 14:11:56 1667170509
Почему qt creator требует для функции из библиотеки wibdows.h аргумент типа строки wchar_t, а в других иде для той же функции нужна строка чаров, и все работает.
Аноним 25/04/20 Суб 14:26:36 1667179510
>>1667170
Короче смотри. В виндобс до недавнего времени юникод был реализован через жопу UTF-16, соответственно все методы из windows.h при наличии макроса UNICODE имеют постфикс W и принимают wchar_t. Если таргетишь Винду версии 1903 и выше, то можно вроде как отказаться от этого макроса и в настройках винды включить utf-8
Аноним 25/04/20 Суб 17:19:11 1667269511
>>1667167
Какой же я тупица. Я все понял
Аноним 25/04/20 Суб 20:28:37 1667481512
Аноны, помогите плиз. Почему моя прога вылетает, когда я пытаюсь использовать рекурсивную заливку flood fill на большой области? Например, картинка 320х320, я выделяю произвольную область даже меньше четверти всей площади картинки, и прога вылетает. Если выделять малюсенькую область, то красит. Алгоритм заливки такой:

void CustomAreaTool::floodFill(int x, int y)
{
QColor color = selectionMask.pixel(x, y);

if(x >= 0 && x < selectionMask.width() && y >= 0 && y < selectionMask.height() && color == Qt::black && color != Qt::white)
{
selectionMask.setPixelColor(x, y, Qt::white);

QColor colorE = selectionMask.pixel(x + 1, y);
QColor colorW = selectionMask.pixel(x - 1, y);
QColor colorN = selectionMask.pixel(x, y + 1);
QColor colorS = selectionMask.pixel(x, y - 1);

qDebug() << "x = " << x << ";" << "y = " << y;


if (colorE == Qt::black)
{
floodFill(x + 1, y );
}
if (colorW == Qt::black)
{
floodFill(x - 1, y );
}
if (colorN == Qt::black)
{
floodFill(x, y + 1);
}
if (colorS == Qt::black)
{
floodFill(x, y - 1);
}
}

view->setCanvas(QPixmap::fromImage(selectionMask));

}
Аноним 25/04/20 Суб 20:33:58 1667488513
15729370418900.png (8Кб, 400x224)
400x224
>>1667481
>рекурсивную
>на большой области
чел...
Аноним 25/04/20 Суб 20:37:41 1667493514
>>1667488
Но ведь челы в уроках как то красят этим алгоритмом. Если рекурсию нельзя, то как красить?
Аноним 25/04/20 Суб 21:16:33 1667550515
>>1667493
Переделать в цикл. Или думаешь у тебя в стек влезет 70к вложенных вызовов?

void floodFill(int x0, int y0)
{
    vector<pair<int, int>> store(1, {x0, y0});
    int dx[] = {1, 0, -1, 0};
    int dy[] = {0, -1, 0, 1};

    while (!store.empty())
    {
        auto pos = store.back();
        store.pop_back();

        auto col0 = selectionMask.pixel(pos.first, pos.second);

        for (int dir = 0; dir < 4; ++dir)
        {
            int x = pos.first + dx[dir];
            int y = pos.second + dy[dir];
            if (x < 0 || x >= selectionMask.width() || y < 0 || y >= selectionMask.height())
            {
                continue;
            }

            auto col1 = selectionMask.pixel(x, y);
            if (col1 != Qt::black) { continue; }

            store.push_back({x, y});
            selectionMask.setPixelColor(x, y, Qt::white);
        }
    }
}
Аноним 25/04/20 Суб 21:24:36 1667559516
>>1667550
Спс, чел, попробую.
А что тут происходит вообще?
То есть ты создаешь свой стек store с пикселями. Потом достаешь из него по одному пикселю и одновременно суешь еще несколько его соседей. Так ведь?
Аноним 25/04/20 Суб 21:30:12 1667574517
Аноним 25/04/20 Суб 21:30:23 1667576518
>>1667063
1. Используй тайпдефы из хэдеров (ULONG/PVOID/ULONG_PTR итд)
2. Получи верхнюю и нижнюю границы адресов пользовательского режима, вместо сканирования вслепую с нуля до бесконечности.
3. Исключи из поиска регионы без нужного тебе доступа
4. Проверь доступность страницы в рабочем наборе, сканируй только те страницы, которые присутствуют в физической памяти и помечены системой, как доступные для использования
Аноним 25/04/20 Суб 21:31:16 1667579519
>>1667046
Windows NT style, самый чистый и правильный кодестайл, ноудискасс.
Аноним 25/04/20 Суб 23:04:27 1667654520
>>1667165
Батя кладет данные в расшаренный буфер от mmap, детки хавают это. Проблема producer-consumer решается семафорами.
Почему ебанутый? Запускаешь программу, она плодится на N процессов-детей. Отцовский процесс готовит данные, дети их хавают. В итоге у каждого из N процессов есть разные данные и все они исполняются параллельно (насколько позволяет цпу машины). А учитывая, что IPC через расшаренную память является самым быстрым из всех других видов IPC, то получается вроде как неплохо. Быстрее - только высрать кастомизированный гипервизор со специально спроектированной моделью ввода-вывода.
Аноним 25/04/20 Суб 23:55:06 1667699521
>>1667576
Да я уже понял. Я забыл что адресс не моего процесса, и тупо обращался по адресу другого процесса в своем. Естественно вылетало.
> 2. Получи верхнюю и нижнюю границы адресов пользовательского режима, вместо сканирования вслепую с нуля до бесконечности.
От нуля до 7FFFFFFF. Так написано на в доках майкрософта. Дальше процесс распологаться не может.
> 3. Исключи из поиска регионы без нужного тебе доступа
Сделано
> 4. Проверь доступность страницы в рабочем наборе, сканируй только те страницы, которые присутствуют в физической памяти и помечены системой, как доступные для использования
Сделано
Все работает. Причем довольно быстро. Спасибо за ответ
Аноним 25/04/20 Суб 23:56:30 1667702522
Так я не понял. Vulkan это замена OpenGl или ответвление?
Аноним 25/04/20 Суб 23:57:46 1667703523
>>1667699
Чуток ошибся. For a 32-bit process, the virtual address space is usually the 2-gigabyte range 0x00000000 through 0x7FFFFFFF. For a 64-bit process on 64-bit Windows, virtual address space is the 128-terabyte range 0x000'00000000 through 0x7FFF'FFFFFFFF
Аноним 26/04/20 Вск 01:15:10 1667749524
>>1667699
>>1667703
> От нуля до 7FFFFFFF. Так написано на в доках майкрософта.
Никогда не верь докам майкрософт. SYSTEM_BASIC_INFORMATION: MinimumUserModeAddress, MaximumUserModeAddress - реальный диапазон. Там же PageSize, AllocationGranularity.
Аноним 26/04/20 Вск 01:31:54 1667755525
>>1667654
Я HPC не занимался и не знаю как у вас принято, но я просто не вижу смысла городить процессы там, где можно обойтись простым тред пулом. Судя по постам код подконтролен тебе и поэтому я не очень понимаю, зачем так нужен execve. Да, по скорости не должно отличаться если всё правильно сделано хотя кто там знает, как в glibc межпроцессные семафоры реализованы, но плодить лишние тяжеловесные сущности со своими (хоть по большей части и расшаренными) виртуальными пространствами - как-то не то это.

Насчёт второй части оригинального вопроса - о "скорости кормления" - зависит от специфики твоей задачи, и плюсы тут не помогут. Какой размер у единицы работы, как сильно влияет false sharing, много ли ядер одновременно дёргают общие переменные - только ты знаешь. Тут уже не важно, треды или процессы, физически страницы одни и те же. Лично я до таких мелочей никогда не оптимизировал, поэтому подсказать не могу.
Аноним 26/04/20 Вск 01:41:59 1667757526
День добрый, проблемы с отладкой gdb в qt creator под вин10 распространенная тема (например, шаг с выходом почти всегда работает криво) или нет? Причем в VS работает без проблем.
Аноним 26/04/20 Вск 03:28:20 1667781527
>>1667702
Ответвление. Опенгл может и дальше развиваться независимо от вулкана, как С развивается независимо от С++.
Аноним 26/04/20 Вск 04:06:01 1667785528
>>1667755
Пчел, повторяю, каждый ребенок вызывает ДРУГУЮ программу. Это часть задачи, какие нахуй треды, если из-под них нельзя вызвать другую программу? Execve из треда, а не из отдельного процесса, накроет пиздой весь process image той программы, исполнение которой я хочу поддерживать в бесконечном цикле. Именно поэтому в виду специфики задачи я должен плодить именно ПРОЦЕССЫ, а не треды. Причем не по кд, а высрал N процессов, а потом только подохшие заменяю по мере поступления сигналов к отцу. Сам форк имеет copy-on-write, ощутимый оврехэд есть разве что у execve, ибо он вайпает все виртуальное адресное пространство и заполняет его новыми данными.
Аноним 26/04/20 Вск 08:31:44 1667815529
Аноны, почему Stack реализован на двунаправленной очереди, а не листе? И зачем очереди доступ по индексу?
Аноним 26/04/20 Вск 10:34:22 1667847530
Аноним 26/04/20 Вск 10:34:38 1667848531
Аноним 26/04/20 Вск 11:08:10 1667863532
>>1667815
Ты еще спроси зачем у вектора есть та самая специализация для булов.
Аноним 26/04/20 Вск 11:13:58 1667866533
>>1667863
>та самая специализация для булов
И зачем? Не знаю о чем ты
Почему при считывснии части данных из сокета остальные данные теряются? Аноним 26/04/20 Вск 14:02:36 1667966534
Я читаю часть данных из сокета, обрабатываю, а при следующей попытке считывания прога тупо виснет.
Аноним 26/04/20 Вск 14:30:21 1667984535
>>1667815
stack это адаптер, ни на чем он не реализован, а просто внутри использует один из контейнеров, причем на выбор пользователя.
И да по умолчанию это дек, потому что есть подозрения, что лист со своими оверхедными ссылками хуже по производительности

А возможность доступа по индексу в queue - пиздеж скорее всего, или подгони пример использования
Аноним 26/04/20 Вск 14:49:27 1668003536
Аноним 26/04/20 Вск 15:00:03 1668019537
image.png (83Кб, 1366x768)
1366x768
А как узнать установленную opengl версию? Выскакивает ошибка Context profiles are only defined for OpenGL version 3.2 and above, хотя вот что показывает аида. Только я не уверен что это значит. Имеется ввиду что поддерживает opengl 4.3 или что он установлен?
Аноним 26/04/20 Вск 15:12:33 1668041538
Аноним 26/04/20 Вск 15:15:21 1668045539
Аноним 26/04/20 Вск 15:16:14 1668046540
image.png (88Кб, 1366x768)
1366x768
Аноним 26/04/20 Вск 15:17:59 1668050541
Аноним 26/04/20 Вск 15:19:53 1668052542
Есть ли годная либа под VS 19, для работы с mysql?(кроме Mysql Connector)
Аноним 26/04/20 Вск 15:21:55 1668056543
>>1668046
>wddm 1.3
Так может тебе драйвер обновить надо
Аноним 26/04/20 Вск 15:23:58 1668059544
>>1668056
Вот это да, но тут проблемка воникает. Скачиваю адреналин от амд, обновляю драйвера и комп начинает нихуева лагать. Фризы, мерцания и тд. Сейчас конечно еще попробую, но мне кажется ничего не изменится
Аноним 26/04/20 Вск 15:31:06 1668063545
>>1668003
Так для дека-то ясен хуй что есть, я думал ты про std::queue
Аноним 26/04/20 Вск 15:32:14 1668065546
Аноним 26/04/20 Вск 15:33:33 1668066547
image.png (106Кб, 1366x768)
1366x768
>>1668056
кстати та прога показала 4.3.
Аноним 26/04/20 Вск 15:37:28 1668069548
>>1668066
Во вкладке OpenGL report каждый уровень подробнее расписан
Аноним 26/04/20 Вск 15:56:23 1668092549
При обновлении opengl32.lib обновится? Мне придется перекомпиировать что то?
Аноним 26/04/20 Вск 15:57:26 1668094550
Бля, точно надо? Страшновато
Аноним 26/04/20 Вск 15:57:43 1668095551
image.png (215Кб, 1366x768)
1366x768
Аноним 26/04/20 Вск 16:02:04 1668101552
Аноним 26/04/20 Вск 16:02:49 1668102553
>>1668101
Хорошо, установка пошла
Аноним 26/04/20 Вск 16:03:17 1668104554
>>1668094
Если страшно, то всегда можно в жопоскрипт перекатиться
Аноним 26/04/20 Вск 16:31:23 1668132555
Установка завершилась. Появились фризы
Аноним 26/04/20 Вск 16:35:18 1668136556
>>1668132
всех АМДкретинов теперь буду посылать читать эти посты
Аноним 26/04/20 Вск 16:36:09 1668137557
>>1668132
Надо же перекомпилировать? Может я просто не то в проекте настроил?
Аноним 26/04/20 Вск 16:41:41 1668144558
>>1668137
У меня в зависимостях стоит файл opengl32.lib, хотя в папке винды я также нашел OpenGL32.lib . Поменять имя?
Аноним 26/04/20 Вск 16:51:10 1668149559
>>1668132
>Появились фризы
лол
А уровни-то хоть проверил на новом драйвере?
Аноним 26/04/20 Вск 16:54:18 1668150560
>>1668149
Каво? Я просто обновился с помощью адреналина выпил баночку7. Не думал что тут какие то приколы есть
Аноним 26/04/20 Вск 16:58:39 1668156561
>>1668150
Урони openGL какие теперь поддерживает?
Аноним 26/04/20 Вск 17:01:29 1668158562
>>1668156
Сейчас скину. Но смысл? Он и так говорил что 4.3 поддерживается . А мне программа ругалась на то, что у меня версия ниже 3.2
Аноним 26/04/20 Вск 17:15:33 1668173563
image.png (26Кб, 1366x768)
1366x768
image.png (89Кб, 1366x768)
1366x768
Конечно в этом плане стало намного лучше. Да и wddm 2.1. Круто, но комп фризит пидец и прога так и не запускается.https://habr.com/en/post/311198/
Следовал этим урокам. Может тт не то написано или я криворукий?
Аноним 26/04/20 Вск 17:16:39 1668174564
image.png (133Кб, 1366x768)
1366x768
Аноним 26/04/20 Вск 18:02:47 1668233565
Честно, желание поубавилось. Походу начать программирование на opengl лучше с покупки норм пк
Аноним 26/04/20 Вск 18:03:42 1668236566
>>1668233
попробуй директЫкс 11. Чуть сложнее ОПЕНГЛ (COM-блевотина не лечится), но зато есть полноценные книги (вроде даже с переводом) от Frank D. Luna
Аноним 26/04/20 Вск 19:05:08 1668294567
>>1668236
Падажжи, они в dx11 засунули COM?
Аноним 26/04/20 Вск 19:19:03 1668306568
Гайс помогите пж с задачей по информатике. Надо написать программу :Задача :"Определить индексы четных элементов вектора К размерности 7 элементов, значения которых равны Т или Е. "

Т=2,Е=4-эти значения должны вводиться с клавиатуры . Вектор состоит из 7 чисел которые вводятся с клавиатуры. Нужно найти сколько раз встречается Т и Е среди чисел в векторе

начал писать код,но че с ним делать не знаю:
#include <iostream>
using namespace std;
int main()
{
double T,E,N;
int i,K[7];


for (i=0;i<8;i++)
cin>>K;

if (i%2==0)
T=K;

}
int i,K[7];
cout<<"Введите 7 значений вектора К "<<endl;
for (i=0;i<8;i++)
cout<< "T="<<T<<endl;
Аноним 26/04/20 Вск 19:26:09 1668311569
>>1668294
DirectX всегда был ком-парашей, насколько я знаю
Аноним 26/04/20 Вск 19:35:31 1668318570
Пишу свою первую программу на плюсах, и сразу застрял на моменте подключения сторонних библиотек.

Я использую CLion IDE в котором CMake для сборки используется, так что нужно как-то через него это сделать. Нужная либа DuckX для чтения и записи docx файлов.

Проблема в том, что когда просто копирую репозиторий к себе, добавляю в свой CMakeList.txt add_subdirectory(DuckX) и потом дописываю target_link_libraries(project duckx).

Оно вроде как заводится, но когда я начинаю пробую открыть docx какой-то в коде - у депенденси этой библиотеки вылетает какой-то эррор (Assertion failed: (s), function strlength). И я просто из-за отсутствия опыта тупо не могу понять, это либа не работает вообще или я криворукий дебил. Подскажите, пожалуйста, руки опускаются, мне просто нужна возможность открывать док файлы и немного изменять их.

Вот мой CMakeList.txt

cmake_minimum_required(VERSION 3.16)
project(untitled)
set(CMAKE_CXX_STANDARD 14)

add_subdirectory(DuckX)
add_executable(untitled main.cpp)
target_link_libraries(untitled duckx)
Аноним 26/04/20 Вск 19:36:53 1668319571
>>1668318
Прошу прощения за очепятки, у меня стресс, целый день страдаю
Аноним 26/04/20 Вск 20:07:07 1668336572
image.png (24Кб, 1366x768)
1366x768
НАКОНЕЦ-ТО
Аноним 26/04/20 Вск 20:13:20 1668338573
>>1668336
Хуйня. Ты станешь посвящен только после треугольника
Аноним 26/04/20 Вск 20:25:47 1668345574
>>1668318
>первую программу на плюсах
>парсит ворд

В CMakeLists.txt все верно вроде. Проверь, не выводит ли cmake какие ошибки во время сборки. И раз у тебя есть весь код, тебе религия не позволяет воспользоваться отладкой и посмотреть в чем там дело?

Есть варик отдельно сбилдить эту либу и уже потом подключить нужные файлы в основной проект, хотя это то же самое так то

Ну и комп ребутни ессно

>у меня стресс
Тебе в JS-тред, там тебя приголубят
Аноним 26/04/20 Вск 20:55:12 1668363575
>>1668338
Завтра хотелось бы сделать
Аноним 26/04/20 Вск 21:15:13 1668392576
>>1666667
Попробуй в сторону posix_spawn посмотреть. Говорят быстрее, чем обычный fork+exec
Аноним 26/04/20 Вск 21:53:21 1668432577
Аноним 26/04/20 Вск 21:53:38 1668433578
Аноним 26/04/20 Вск 22:32:43 1668460579
Screen Shot 202[...].png (994Кб, 3104x1862)
3104x1862
>>1668345
Валится оно в pugixml библе. Я так полагаю ему тяжеловато взять strlength от NULL. Такие ошибки в плюсах могут быть из-за неправильного подключения библиотеки?

>Тебе в JS-тред, там тебя приголубят
не, спасибо
Аноним 26/04/20 Вск 22:52:37 1668491580
>>1668345
Ладно, похуй на эту сломанную библу, я понял что док файлы это просто zip архивы, так что просто юзну libzip (распакую и запакую заново). Только странно что там написано что он работает только с zip архивами, как-то это странно. Может есть какой-то более народный инструмент для архивации? Просто реально не хочется опять какие-то ошибки сейчас словить
Аноним 26/04/20 Вск 23:11:25 1668509581
>>1668460
Блять, так поэтому и падает на ассерте. contents я так полагаю - содержимое файла? Если да, то видать эта хуета просто файл не смогла прочесть. Попробуй другой попроще. Либо вообще ищи альтернативную либу
И да, скидывай код твоей проги. У меня закрадываются подозрения, что ты не отлавливаешь ексепшены/ерроркоды

Аноним 27/04/20 Пнд 00:22:43 1668553582
>>1668509
Спасибо тебе, из-за этого ответа я понял, что я очень ТУПОЙ. Я неправильно указывал путь к файлу, надо было абсолютный. Программа там уровня Hello World, все заработало. Но как указывать относительные пути к файлам я так и не понял.
Аноним 27/04/20 Пнд 00:24:05 1668556583
>>1668509
Как правильно обернуть в try catch, чтобы понимать из-за чего ошибки? Они супер неочевидные, почему оно просто не сказало что не нашло файл например?
Аноним 27/04/20 Пнд 00:52:07 1668574584
Как сделать так, чтобы при вызове объекта класса, некоторая переменная внутри метода класса могла получить адрес, по которому этот метод находится?
Аноним 27/04/20 Пнд 00:53:24 1668575585
>>1668574
>Как сделать так, чтобы при вызове объекта класса, некоторая переменная внутри ОБЪЕКТА класса могла получить адрес, по которому этот ОБЪЕКТ находится?
Ёбанное ООП!
Аноним 27/04/20 Пнд 06:14:11 1668658586
>>1668233
>на opengl
Мертвая хуйня
Аноним 27/04/20 Пнд 10:56:21 1668792587
Аноним 27/04/20 Пнд 12:12:13 1668878588
Аноним 27/04/20 Пнд 12:55:22 1668919589
>>1668658
Если надо не игровой движок собрать, а пару шаров нарисовать, то нахуй он нужен, этот твой вулкан.
Аноним 27/04/20 Пнд 13:03:35 1668933590
>>1668919
А на хуй твои шары рисовать?
Аноним 27/04/20 Пнд 13:06:11 1668938591
Аноним 27/04/20 Пнд 13:11:16 1668945592
Аноним 27/04/20 Пнд 13:20:06 1668959593
>>1668945
А ебать, сорян тогда
Аноним 27/04/20 Пнд 15:14:33 1669159594
>>1668933
Ну, это я гиперболизировал. Может, ему какую-нибудь небольшую визуализацию данных надо сделать, несколько нестандартную. Вулкан ради этого пердолить смысла нету.
Аноним 27/04/20 Пнд 17:50:30 1669322595
>>1669159
Кому ему? Пиздуй и делай это на движке
Это так и делают через визуальный редактор
Аноним 27/04/20 Пнд 22:50:52 1669649596
>>1669322
Признаю, что мне неохота обсуждать с тобой всё это конструктивно. Отчасти, от тона, не предвещающего продуктивное обсуждение. Поэтому, пожалуй, просто проведу аппеляцию к личности собеседника -- ты долбоёб, иди нахуй.
Аноним 28/04/20 Втр 05:27:43 1669816597
>>1669649
Я рад что ты признал свою неправоту и решил съебать
Аноним 05/05/20 Втр 19:57:13 1678036598
Аноним 05/05/20 Втр 19:57:46 1678039599
Аноним 14/05/20 Чтв 13:29:02 1687643600
Прорамач, объясни дураку пожалуйста как создавать qm файлы и как их подрубать к проекту.
Прочитал в справочники Qt о QTranslator и ничего не понял.
Вопрос именно с созданием qm файлов.
Спасибо.
Аноним 09/07/20 Чтв 00:14:11 1745510601
Screenshot20200[...].jpg (381Кб, 720x1280)
720x1280
Аноним 14/07/20 Втр 19:26:15 1751462602
Оп хуй
Аноним 23/07/20 Чтв 12:07:49 1758367603
Хоть один человек зайдет сюда? Ответьте ради прикола
Настройки X
Ответить в тред X
15000 [S]
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов