Главная Юзердоски Каталог Трекер NSFW Настройки

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

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 1057 106 267
С++ thread #144 /cpp/ Аноним 18/09/23 Пнд 23:27:21 2847323 1
.jpg 410Кб, 1200x931
1200x931
.png 362Кб, 735x690
735x690
Аноним 19/09/23 Втр 01:54:43 2847448 2
Аноны, вам в вашей практике пригождалось метапрограммирование?
Аноним 19/09/23 Втр 09:53:12 2847559 3
Rias Gremory [O[...].png 2987Кб, 1700x2800
1700x2800
Что это? Да это же лучший тред, посвященный самому прекрасному языку программирования!
Аноним 19/09/23 Втр 11:09:30 2847604 4
>>2847448
В смысле, пригождалось? Нет таких задач, которые нельзя было бы решить без метапрограммирования, не считая требований сделать это во время компиляции.
Ты думаешь, стоит ли тратить время на его изучение? Если тебе не интересно, то смысла ебать мозги нет.
Нужно ли оно в коммерческих проектах? В лучшем случае похуй. Если есть какие-то требования к читаемости кода, то на ревью могут завернуть.

Метапрограммирование на шаблонах отличный способ сократить количество бойлерплейта без потери производительности и заодно решить некоторые проблем заранее, на этапе компиляции. Но кому оно нахуй надо.
Аноним 19/09/23 Втр 16:23:55 2847970 5
Есть пару вопросов к тем, кто в плюсах хорошо шарит.
1. Почему мув-конструктор не должен бросать исключение, чтобы объект мог муватся при реаллокации вектора? Что мешает в случает исключения мувнуть все обратно? Копирование более сложная операция, но на случай исключения в копирующем конструкторе, в векторе все возвращается в первоначальное состояние, давая строгую гарантию. Вот и говорят например, что auto_ptr не мог работать с контейнерами, потому что умел только перемещаться, а почему он, а не я?
2. Говорят еще, что auto_ptr не различается обычное удаление и удаление с []. И тут я завис, а что мешало просто сделать частичную специализацию auto_ptr<T[]>?
Аноним 19/09/23 Втр 17:14:44 2848043 6
что написать на плюсах?
жсон парсер уже написал
Аноним 19/09/23 Втр 17:24:46 2848064 7
Аноним 19/09/23 Втр 17:41:51 2848085 8
>>2848043
Выложи на гитхаб, а то ЛОХманоская библиотека мне названием не нравится.
Аноним 19/09/23 Втр 17:42:20 2848086 9
Аноним 19/09/23 Втр 17:50:16 2848098 10
Есть стджсон, он збс.
Аноним 19/09/23 Втр 17:50:37 2848100 11
Аноним 19/09/23 Втр 18:04:28 2848140 12
>>2847970
Если у тебя при муве объекта вылетело исключение - ну это уже совсем пиздец. Мув задуман как абсолютно лёгкий и прозрачный механизм передачи владения, если ты хочешь/можешь бросить оттуда исключение - ты делаешь что то не так.
Аноним 19/09/23 Втр 18:07:48 2848144 13
>>2848140
Ты не ответил на вопрос вообще.
Аноним 19/09/23 Втр 22:33:31 2848435 14
>>2848144
Пошёл нахуй значит.
Аноним 20/09/23 Срд 21:41:30 2849624 15
>>2847970
>Мувнуть все обратно

Мув обратно опять выкинет исключение, что делать будем?
Аноним 20/09/23 Срд 21:46:57 2849629 16
>>2849624
Собирать с фноексцепт, разумеется.
Аноним 20/09/23 Срд 21:56:30 2849641 17
>>2847970
>Говорят еще, что auto_ptr не различается обычное удаление и удаление с []. И тут я завис, а что мешало просто сделать частичную специализацию auto_ptr<T[]>?

Ничего, уже сделали, unique_ptr называется.
Аноним 20/09/23 Срд 22:38:45 2849668 18
Почти дочитал книжку Праты, решая все примеры и отвечая на все вопросы в конце главы. Сейчас остановился на итераторах и уже задумываюсь, что стоит изучить дальше?
Как я понял, мне нужно знать паттерны или хотя бы как это работает, пытался почитать про это вскользь, но не разобрался даже с синглтоном и не понял зачем он нужен.
Посоветуйте пожалуйста, какую литературу стоит изучать после Праты?
Аноним 20/09/23 Срд 23:19:37 2849691 19
>>2849668
>что стоит изучить дальше?
Бля ну какая у тебя конечная цель? Что ты хочешь сделать? Электроникой заниматься - тогда изучай электронику. Ты понимаешь что добрые 95% вакансий на С++ это тупо программирование микроконтроллеров, написание драйверов к железякам. Оставшиеся 5% - это QT и высокочастотная торговля. Окей возможно ещё чуть-чуть игры. Если ты не знаешь шину MCU, GPIO, SPI, I2C, то можешь свои паттерны себе в жопу засунуть. Ты программист С++ и не шаришь в электронике, тогда ты нахуй не нужен.
Аноним 20/09/23 Срд 23:40:54 2849700 20
>>2849691
Собсна, пока уже год как вкатился в микроконтроллеры, но на чистый Си. Хз, откуда у тебя 95% это контроллеры, но база по контроллерам уже есть. Но хотелось бы уйти для начала в Qt, либо что-то для железок писать на более высоком уровне, вот примерно такая конечная цель. В какую сторону лучше двигаться?
Аноним 21/09/23 Чтв 18:52:37 2850666 21
>>2849700
Не слушай этого далбаеба зеленого. Мк на всяких верилогах с си прогают. Человек занимающийся этим имеет звание инженер, скорее всего схемотехник, скорее всего он вертел на хую все паттерны и делает как деды в универе учили. Скорее всего он выдаст тебе таску, что то типа принять данные по такому то интерфейсу, как-нибудь с ними поманипулировать и вернуть, может регулятор какой-то прикрутить. Только какой-нибудь зелёный конч из этого треда может попросить тебя реализовать устройство от начала до конца, от схемы - до десктопного приложения. Тут как минимум три человека нужны, схемотехник, тополог, программист.
Аноним 22/09/23 Птн 00:25:41 2851045 22
Бля чет ООП мне как-то не хватает для написания удобного кода. Или может я какие-то абстракции не использую?

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

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

Неужели люди так годноту и не придумали и жрут говно под названием ООП? Потому что у меня дико в заднице чешется объявить все эти объекты просто статиками\синглтонами и пользоваться ими в .cpp, есть сеймы? Какие решения есть, я не верю что мне одному это не нравится
Аноним 22/09/23 Птн 02:09:09 2851076 23
>>2851045
Делай так, что бы работало так, как тебе нужно. Все.
ну и предствать как на сях все это воид птрами делалось
Аноним 22/09/23 Птн 03:31:23 2851083 24
>>2847323 (OP)
>Пик 2
Почему в плюсах в названии экспешенов не принято добавлять что это экспепшен или что-то подобное? Непонятно же с первого взгляда.
мимо из другого языка
Аноним 22/09/23 Птн 05:53:23 2851094 25
>>2851083
Нахуя? Ты же его только в катч блоке встретишь
Аноним 22/09/23 Птн 06:00:01 2851096 26
>>2848100
Это надо как Перельман до 50 с мамкой жить.
Аноним 22/09/23 Птн 08:28:53 2851120 27
>>2851083
Потому что кидать можно любое значение, хоть int.
Аноним 22/09/23 Птн 17:16:04 2851604 28
Есть шаблонный класс с шаблонным параметром int N. Могу я добавить метод класса, который будет работать/существовать только при N == 1?
Аноним 22/09/23 Птн 17:43:56 2851644 29
1695393836197.jpeg 23Кб, 859x205
859x205
>>2851604
Лол, сделал методом тыка. Слабо понимаю, что тут происходит. Может есть варианты, как упростить? Ехал typename через typename.

класс содержит буфер длины N, хочу чтобы он автоматически конвертировался в число, если длина буфера равна единице
Аноним 22/09/23 Птн 17:59:29 2851665 30
>>2851644
Ты можешь перегрузить шаблон для INT 1
template<>
class zalupa<1>{
...
};
Аноним 22/09/23 Птн 18:02:11 2851667 31
Аноним 22/09/23 Птн 18:07:01 2851669 32
>>2851604
А блять, метод...
Сори в глаза ебусь.
Аноним 23/09/23 Суб 16:56:31 2852515 33
Как грамотно нарисовать опыт на плюсах и вкатиться в фаанг?
Аноним 23/09/23 Суб 18:52:35 2852666 34
Аноним 24/09/23 Вск 01:09:57 2852959 35
>>2852515
Скажи, что 10 лет программировал плк на заводе для нужд родины.
Аноним 24/09/23 Вск 13:24:47 2853320 36
Анончик, помогите советом, плиз
значитса, чтобы научиться премудростям погромистским ,я хочу собрать просмотрщик картинок.
Как референс того что должно получиться это pureref но со встроенным файловым менеджером.
как в общих чертах это делаются на с++?
пока что я пришел к тому, что мне нужны библиотеки.
компилятором выбрал g++
sdl для отрисовки самих картинок.(просто первое че попалось то и поставил)
sdl_image для загрузки разных форматов картинок.
нужна какая то библиотека для сканирования диска и построения дерева файлов(кукую взять?) но она должна как отдавать данные для последующей отрисовки.

ну и еще я подумал что мне нужна какаято библиотека с ui wxwidgets, подойдет?

вобщем я сначала хотел рисовать картинки прям средствами sdl

но сейчас думаю что для этого лучше использовать библеотеку типа wxwidgets или нуклеара, тоесть создавать окна с картинками, растягивать их перемещать. и сдл походу просто как прослойка для отрисовки будет.

как правильно делать такое?
Аноним 24/09/23 Вск 13:29:52 2853325 37
а ещё такой вопрос чет не могу найти.
к в сдл скрыть срандартный хедбар с кнопками закрытия и прочим. что бы было чистое окно.

и еще как само окно делать прозрачным.
че для этого надо курить? винапи? или в sdl это есть где то
Аноним 24/09/23 Вск 15:10:13 2853432 38
Мне одному задачи контеста Яндекса ебут самооценку в ноль?
Аноним 24/09/23 Вск 17:15:22 2853545 39
>>2853320
Совета лучше, чем "начни делать", тут не дать.
Аноним 24/09/23 Вск 17:43:44 2853593 40
>>2853545
так я и начал.
ну так а че для гуи сишники то используют? я вообще начинаю понимать что тут вообще не все как в остальном мире.
вот например почитал что wxwidgets нафиг не нужен. поидее используют qt

другие пишут нахуй кьют пиши сам. третьи пишут писать самому маразм. потос я смотрю видос там чел нахваливает dear imgui. но потом через год пишет свою библиотеку.

ебать нахуй. есть хоть какаято стандартизация тут?
Аноним 24/09/23 Вск 18:19:02 2853653 41
Аноним 24/09/23 Вск 19:08:34 2853733 42
>>2853593
Qt и qtquick на плюсах
На сях gtk. Всё.
Еще как альтернатива элеатрон+нативные библиотеки.
VSCode так делает, OnlyOffice и nwjs
Аноним 24/09/23 Вск 19:17:20 2853753 43
>>2853733
>qtquick
Я уж хотел было возразить, но дочитав
>элеатрон
понял, что в этом нет смысла.
Аноним 24/09/23 Вск 19:49:08 2853809 44
>>2853753
В чем проблема? Стандартный Qt гуй хуевый. Ну то есть он нормальный для стандартных окон со стандартными крутилками вертелками уровня виндовс хрю и гноме2, но для кастомных интерфейсов типа телеги ор не подходит.
Qt квик довольно сложный, а еще кривой нахуй какой то. Тем кто умеет в веб (html+js+css) на мой взгляд не стоит мучится если не стоит задача сделать маленькое приложение.
Лучше взять электрон нахуевертить там гуй, а все функциональное припиздячить библиотеками и вывести функциями.
Так же собственно как в кутеквике, заисключением того что там экмаскрипт (как джаваскрипт только совсем голый без всего) и лютое метопрограммирование. На н пиздец как сложно реализовать то что на хтмл с цсс проблем не вызывает.
Аноним 24/09/23 Вск 19:57:58 2853825 45
>>2853733
а че там за метакомпилятором таким в qt стращают? че это такое добавочный препроцессор?
Аноним 24/09/23 Вск 20:38:19 2853900 46
>>2853825
Ну там как я сказал экмаскрипт но исполняется он не как js в электроне то есть считай как в браузере через джиткомпилятор+компилятор с весом овер 100мб, а прекомпилируется в какую то хуйню вместе с qml в бинарные moc файлы вроде.
Но это не машинный код, я так понимаю а коды для интерпритирования, это связано с тем что метаговно и джаваскрипт это впринципе языки где типы данных подставляются во время исполнения и подставить их заранее нельзя.
Но я не вижу проблема так как весит это все 1,5мб, а гуй это не то что должно максимальное колличество нажатий быстро обрабатывать, оно должно просто с приемлемой скоростью отзываться и оно на квике одзывается шустро. Что еще надо
Аноним 24/09/23 Вск 20:48:29 2853916 47
>>2853593
Не похоже что ты начал. Ты сидишь и дрочишь какую то хуйню
Аноним 24/09/23 Вск 21:49:08 2853987 48
>>2853900

ага понятно. ну я наверное пока на сдле посижу. чето я в нее залип. простая приятная как блиц3д из детства ебать.
>>2853916
ну так а как не дрочить то? яж не хуя не знаю.
Аноним 24/09/23 Вск 21:55:33 2853993 49
кароче нашел почти весь нужный мне функционал.
попробую все на SDLе сделать. насчет интерфейса пока затык, но мне там немного надо. списки да кнопки я сам поди рилли напишу. интересно да и похуй.

по файловой системе для менеджера походу будет достаточно стандартной библиотеки, я прав?

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

кароче я решил пока это обойти и тупо спамить новыми окнами.
Аноним 24/09/23 Вск 22:33:49 2854039 50
>>2853993
Здорово, брат, а ты как, покушал сегодня уже? А покакал?
Аноним 25/09/23 Пнд 00:30:36 2854207 51
>>2853432
да нормальная эта хуйня, специально придумана рептилоидами чтобы умных детишек уничтожать
типа дрочишь физику-математику в школке, ездишь на олимпиадки до которых дотянешся, потом ебашишь задачки для поступления в бауманку, потом тебя дрочат в вузике типа делают ученого на хуях не верченого, а в 30 лет вешаешься режешь себе вены выходишь в окно
то же касается и химии и математики, и соответствующих факультетов мгу
ну а сегодня и дрочь на cs добавился
Аноним 25/09/23 Пнд 00:37:56 2854214 52
>>2851045
не, челик, ты вкорне не прав и поэтому мучаешься
раз это как ты выразился "объект времени жизни программы" то ты делаешь синглетон и тупо его юзаешь везде где надо

забавно что я будучи безработно й хуйней over 10 лет сразу же понял что к чему, хехе зайдя в этот итт тред после годового перерыва
Аноним 25/09/23 Пнд 01:44:07 2854226 53
>>2854214
Синглтоны можно, но так себе. Лучше просто на глобалах завести экстернами что нужно.
Синглтоны могут в херовой последовательности уничитожаться, а глобалы сам пропишешь.
Аноним 25/09/23 Пнд 07:05:47 2854271 54
>>2853432
Три месяца назад проходил какие-то дно задачи для fast-track. Не ебут. Я даже задачи на их собеседовании с подсказками все смог сделать. Решил, постфактум, что мозг свой прямо сейчас на 100% заюзал и лучше уже не будет.

Но этого им всё равно не хватило. Жирные уебаны.
Аноним 25/09/23 Пнд 07:08:06 2854272 55
Аноним 25/09/23 Пнд 07:25:08 2854280 56
>>2851045
Ты просто юзаешь ООП там где оно не нужно.

У меня например в одной программе vector<class ImageType>

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

На си конечно можно реализовать структурой с указателем на функцию:

typedef struct _IMG_T_ image_t;

typedef void (× method) (image_t ×self, int arg0 ...) fn_method_1;

struct _IMG_T_ {
. . uint32_t w, h;
. . uint8_t × data;
. . fn_method_1 foo1;
};

Но это выглядит во первых как говно, во вторых не гарантируется что в метод попадет self указатель этой же структуры и вообще раз уж пишем на си то уж проще свитчом выбирать нужный метод по значению а не таскать в структуре адрес на хуй знает что. Когда на си приходилось писать такой код всегда хотелось просто объявить класс с виртуальными методами, а деструктор записать free(data).

Несмотря на то что это все компилируется в лютое говно с вызовами перевызовами, не всегда программе это по сравнению с джавами пистонами минимальный оверхэд.
Аноним 25/09/23 Пнд 09:55:57 2854431 57
>>2854271
Значит я правда тупой.
Аноним 25/09/23 Пнд 10:16:00 2854448 58
>>2854280
Ты не понял о чем я говорю. Я не про оверхед, а про неудобство использования объектной системы в программе, когда классы вынуждены знать друг о друге. Было бы лучше если б ООП в плюсах было полным с реализацией сообщений между объектами, то есть на уровне языка чтобы скрывать под капот всю парашную реализацию. А сейчас абсолютно любой проект на плюсах это лапша так или иначе
Аноним 25/09/23 Пнд 10:31:52 2854478 59
>>2851045
>Вот допустим есть...
У меня же есть подозрения, что ты просто сложность хуёво контролируешь.

Без конкретных примеров не сказать.

Объект времени жизни программы обычно почти всегда синглтон. Если нет, то либо у тебя что-то странное и/или интересное, или ты накосячил с проектированием и это должен быть именно одиночка.
Аноним 25/09/23 Пнд 10:36:07 2854485 60
>>2854478
В чем тут сложность? Есть класс сокета, который засылает данные куда-то. Как ты организуешь в плюсах как эти данные он передает дальше? Либо агрегация либо коллбек. Если программа большая то это неизбежно превращается в адские зависимости.
Синглтон это антипаттерн в современном программировании
Аноним 25/09/23 Пнд 10:37:35 2854489 61
>>2854485
>Синглтон это антипаттерн в современном программировании
Тыскозал?
Аноним 25/09/23 Пнд 10:39:21 2854491 62
>>2854485
>Есть класс сокета, который засылает данные куда-то. Как ты организуешь в плюсах как эти данные он передает дальше?
>В чем тут сложность?
Почему у тебя так много подписчиков этого класса, что это становится проблемой? Почему ты не сделал иерархию, которая разделяет сложность? Single responsibility principle? Или тоже "антипаттерн"?
Аноним 25/09/23 Пнд 10:40:00 2854493 63
>>2854489
Быстрый гугл солидарен, но я и без него это знаю.
Да, антипаттерн, с тех самых пор как в плюсах есть многопоточка
Аноним 25/09/23 Пнд 10:42:00 2854497 64
>>2854493
>Да, антипаттерн, с тех самых пор как в плюсах есть многопоточка
Хуясе клэйм. Ты хипстеров своих больше слушай.

Сам синглтон не хорош и не плох, это инструмент. Написанный через static переменную, он по умолчанию должен быть thread-safe.

Другое дело как ты сделаешь синхронизацию его внутренних процедур.
Аноним 25/09/23 Пнд 10:42:10 2854499 65
>>2854491
ООП и есть самый большой антипаттерн и оверхайп параша
Аноним 25/09/23 Пнд 10:42:54 2854501 66
>>2854499
Ну вот и выявили неосилятора. Сдрысни в хаскель-тред.
Аноним 25/09/23 Пнд 10:44:33 2854506 67
>>2854497
Я никого не слушаю, это мое мнение.

Бля чел, о том и речь, "сделаешь синхронизацию", ты че, того чтоли? Лучше уж лапшу писать
Аноним 25/09/23 Пнд 10:48:57 2854516 68
>>2854506
>Бля чел, о том и речь, "сделаешь синхронизацию", ты че, того чтоли?
Если у тебя миллиарды запросов в наносекунду и тебе нужна полная lockless хуйня, то лапша - последнее, о чём ты должен волноваться.
Аноним 25/09/23 Пнд 10:52:52 2854521 69
>>2854478
Совсем не обязательно он синглтон.
Синглтон он только если к нему нужен глобальный доступ. А иначе нахуя оверхед.
Аноним 25/09/23 Пнд 10:56:48 2854525 70
>>2854521
Тащемта да, но у него проблема такого уровня, что до синглтона недалеко.

Представь, что глобальный доступ не нужен. Значит это какой-нить шаред_птр, какой-нить замкнутой иерархии классов.

Почему эта иерархия настолько большая? Почему нет классов прослоек? Если прослойки не нужны, то почему нет полноценного observer, чтобы не следить за передачей ресурса через подписки, вместо ссылок в конструкторе? Почему бы не сделать билдер, который будет собирать новый класс по кусочкам?

Что за хуйня?
Аноним 25/09/23 Пнд 10:57:25 2854526 71
>>2854525
>чтобы не следить за передачей ресурса через подписки
Аноним 25/09/23 Пнд 11:00:12 2854533 72
>>2854525
> Почему бы не сделать из просто лапши абстрактно ориентированную супер оверхед лапшу?
Аноним 25/09/23 Пнд 11:01:32 2854535 73
>>2854533
Опять неосилятор порвался. Тогда беги в ассемблер программировать, оверхэдный ты наш.

В плюсах ты не платишь за то, что не используешь.

Не хочешь контролировать сложность, чтобы твои собственные углеродные мозги нахуй в кашу не расплавились? Твоё право.
Аноним 25/09/23 Пнд 11:11:04 2854545 74
>>2854535
Шляпа объектно ориентированная че за тряска? Я съебусь куда мне надо а ты позади останешься, запомни это
Аноним 25/09/23 Пнд 11:11:55 2854547 75
>>2854545
Да мне насрать. Ты пришёл с плюсовый тред просить советов, но просишь без уважения.
Аноним 25/09/23 Пнд 12:19:08 2854607 76
>>2854448
Да я понял о чем ты, но я и говорю что это класс задачь где реально не нужно ооп, но его используют просто потому что функциональное, которое бы лучше подошло в ряде задачь не завезли.
> Было бы лучше если б ООП в плюсах было полным с реализацией сообщений между объектами, то есть на уровне языка чтобы скрывать под капот всю парашную реализацию.
В плюсах нет рантайма, он компилируется в машинный код, как си.
ООП плюсов позволяет компилятору точно знать какой метод, к какому типу прикрепленный в каком месте программы вызывать, тогда как поинтер в структуре это сюрприз для предсказателя переходов, а свитчи это лишнее награмождение в коде.

А лапшеговнокод можно встретить на любом языке, даже на си.
Аноним 25/09/23 Пнд 12:32:46 2854625 77
ЧЕМ C++ ЛУЧШЕ CLOJURE
Аноним 25/09/23 Пнд 13:22:25 2854671 78
>>2854625
Тем что все знают что такое си плюх плюх, а кладмена жору не знает никто.
Аноним 25/09/23 Пнд 16:17:53 2854854 79
>>2854625
>ЧЕМ C++ ЛУЧШЕ CLOJURE
Не JVM.
Аноним 25/09/23 Пнд 18:10:36 2854964 80
>>2853432
Дай ссылку, гуглится какой-то древний понос
Аноним 25/09/23 Пнд 19:21:18 2855076 81
>>2854964
Во время ближайшего Фаст трека попробуй.
Алсо я вообще понял что у меня супер херово с динамическим программированием.
Аноним 25/09/23 Пнд 20:28:10 2855180 82
Аноны хелп, это братишка с сдл.

Как сделать открытие файла?
типо вот я щелкаю на файл пикчи, винда запускает мою программу и она как то передает пикчу(или ее путь) в мою программу.

как это делается? куда копать? как это называется вообще в программерском мире?

пока что я допер только как открывать и закрывать файлы через fistream и инфа чет не гуглится.
Аноним 25/09/23 Пнд 20:34:49 2855191 83
>>2854854
ТОГДА ЧЕМ С++ ЛУЧШЕ JAVA
Аноним 25/09/23 Пнд 20:40:09 2855192 84
>>2855180
Для того чтобы ОС открыла именно твою прогу - в разных системах по разному. Гугли file extension to program.
Далее она запустит твою прогу, передав первым аргументом путь к файлу.
Аноним 25/09/23 Пнд 20:40:59 2855193 85
>>2855180
>куда копать?
От ОС зависит. В твоём случае нужно WinAPI курить.
Попробуй данный вопрос гопоте задать, думаю, что оно ответит с примером.
Аноним 25/09/23 Пнд 20:42:08 2855195 86
>>2855192
>передав первым аргументом путь к файлу.
Так не всегда путь же. Может какой нибудь хендлер вернуть.
Аноним 25/09/23 Пнд 20:43:11 2855196 87
>>2855195
Вот это уже я не ебу, честно. Я думал всегда путь отдает.
Аноним 25/09/23 Пнд 20:47:18 2855199 88
>>2855192
>>2855193

не посоны, я кажется допер. тут надо просматривать аргументы main(int argc; char*argv[]).
и если туда закинуть файл, то аргументом придет его путь.
и вот этот путь использовать для загрузки пикчи.

а линковать взаимосвязь с файлом похоже вручную или через батник при установке.
Аноним 25/09/23 Пнд 20:56:25 2855206 89
ебать посоны, работает! я написал простенький имедж вьювер bmp файлов!

теперь как то надо консоль скрыть. это наверное гдето в компиляторе до ставить
Аноним 25/09/23 Пнд 20:58:14 2855208 90
>>2855199
Ты опиши саму ситуацию, епта. Ничего же не понятно. Выглядит так, будто ты хочешь, чтобы ОС использовала твою программу по-умолчанию для открытия некоторых типов файлов. Чтобы когда ты кликал по файлу, то вызывалась твоя прога и в неё передавался путь/хендлер файла. Правильно понимаю?
Аноним 25/09/23 Пнд 21:00:41 2855210 91
>>2855208
да да именно это и хотел.
может ты знаешь как заставить винду ассоциировать файлы прямо из с++?
возможно ли вообще такое
Аноним 25/09/23 Пнд 21:05:28 2855217 92
>>2855210
>может ты знаешь как заставить винду ассоциировать файлы прямо из с++?
Можно более подробно? ЯННП.
Ты можешь скомпилить бинарник и указать его в качестве проги по умолчанию самым обычным способом - через системные настройки, либо ПКМ - открыть с помощью.
Далее тебе нужно узнать каким образом ОС передаёт информацию о файле проге по умолчанию. В виде пути, либо в виде более сложной структуры. И отталкиваясь от этого уже писать обработчик.
Аноним 25/09/23 Пнд 21:25:10 2855237 93
>>2855210
Гугли что такое MIME types и как их установить в виде.
Аноним 25/09/23 Пнд 23:26:50 2855336 94
>>2855237
ммм хуй знат мне же не надо свой формат внедрять в систему? но спасибо на будущее , вдруг я ебать свой 3дмакс напишу охохо

ладно кароче. нашел два способа скрыть нахуй консоль.

первый подключил windows.h
и там вызвал процедуру ShowWindow(GetConsoleWindow(),SW_HIDE)
это я так понимаю винапи чистый пошел.
а так как у меня sdl, то поди это нарушит портируемость.

заебенил кароче вместо этого компилятору благ -mwindows да и похуй вроде по красоте все стало работать

посоны да я вообще погромист ебать!
Аноним 26/09/23 Втр 03:06:47 2855449 95
>>2855191
Тем что на с++ пишут ос, в том числе микроядерные, а на джаве гоночный робот томми решил собрать мусор от накопившихся объектов проебал поворот и убился об стену.
Аноним 26/09/23 Втр 03:14:46 2855452 96
>>2855336
Тебе надо было брать qt и не ебать мозги, там все есть и встроенный просмотр файлов и выбор при тыке по кнопке.
SDL это низкоуровневая библиотека-прослойка между программой и рендером, оно не предназначено для взаимодействи с виндовсапи и линуксовыми де. Оно само по себе, что бы 2d/3d графику в окошке рисовать грубо говоря.
Аноним 26/09/23 Втр 03:31:47 2855454 97
изображение.png 9Кб, 279x269
279x269
>>2847323 (OP)
Сап Анонсы! Как считается хэш сумма файлов? Есть два старых зип архива, которые надо открыть. Знаю что есть хэшкэт, но хочу разобраться в том как это всё работает, на практике. Поэтому подскажите, пожалуйста, как получить хэшсумму ZIP/RAR файла и как сделать генерацию хэш-таблиц для сравнения. Думаю просто сделать открывалку с генератором слов будет всё-же более затратно, в плане времени исполнения.
Пробовал на питоне, но там люди жаловались на быстродействие а у меня нихуя не 4090+i9, да и сам питон немного не прижился.
Аноним 26/09/23 Втр 05:59:43 2855469 98
>>2855076
>Алсо я вообще понял что у меня супер херово с динамическим программированием.
А по-другому быть и не должно.

Вспомни мне, навскидку и без гугла, прям щас, как только прочитал пост, какие задачи из ежедневной рутины прогера требуют динамического программирования?

Обычно если и есть, то это ебейшая таска на весь спринт, которую нужно вылизать и тестами обмазать, чтобы работала как часы.
Аноним 26/09/23 Втр 06:02:09 2855470 99
>>2855469
Да я не ебу.
В целом почти нихуя из того что я задрочу на литкоде мне в прогерской практике не было нужно.
Ну исключения - бинарный поиск, префиксные суммы. Мне блять производные чаще нужны. Но в яшку хочется.
Аноним 26/09/23 Втр 06:05:49 2855471 100
>>2855454
>но хочу разобраться в том как это всё работает, на практике
>хэшсумму ZIP/RAR файла
>как сделать генерацию хэш-таблиц
Так тебе шашечки, ехать или суп есть? инб4 суп ешь ложкой

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

Чтобы посчитать на практике хэш-сумму надо юзать либу. Вот так просто. Очень проста эвристика: "Что угодно связанной с криптой, шифрами и теорией чисел -> юзай либу"

Для хэш-таблицы твой хэш может быть очень тупым. Он обычно очень тупой и есть. Там суть не в отсутствии коллизий, возможности нахождения обратного и прочая. Поэтому про хэш-таблицы и говорится, что там доступ за O(1) амортизированное. Потому что тебе может очень крупно не повезти, и ты получишь доступ за O(n).
Аноним 26/09/23 Втр 06:06:27 2855472 101
>>2855470
>Но в яшку хочется.
Гугли видос про их зарплаты. Душу дьяволу продаёшь и не чешешься.
Аноним 26/09/23 Втр 06:07:47 2855473 102
>>2855472
Это ворота в любые вакухи в России. Да и после моих 70к на заводе похуй. Спасибо гляну
Аноним 26/09/23 Втр 08:32:08 2855494 103
>>2855454
> как сделать генерацию хэш-таблиц для сравнения
Пчел...
Аноним 26/09/23 Втр 12:39:21 2855753 104
EgmmAHQLFr8.jpg 221Кб, 914x1280
914x1280
>>2855471
>нужно хэш-алгоритмы подучить
>свойства криптографически сильного/стойкого хэша
Не подскажешь уроки или книги? Примерно 1/2 из книг по csec, которые постят в телеге, имеет очень поверхностную информацию. Вот ребята есть WEP и WPA2. WPA2 лучше чем WEP, WEP хуже чем WPA2. Однако даже примеров восстановления ключа из handshake я вам не покажу, потому что потому.
Пока что полезная инфа попадается лишь на хабре, вики и стеке. Форумы чуть сложнее найти, но думаю тоже есть.

>надо юзать либу
Полагаю, так-же как и в питоне? импорт инклюд, а потом вызываешь класс или функцию и даёшь ей свои данные в работу.
Но с точки зрения работы. По идее архиватор пытается открыть один файл, с заданным паролем, или один блок наименьшего размера. А потом уже возвращает True для дешифровки и False для ввода нового пароля, на основа несовпадения хэш суммы.
Выходит, нужно лишь попытаться открыть один файл или блок из архива и сохранить целевое значение хэш суммы. А дальше уже можно пытаться в перебор AES 256. Для начала попробую какой-нибудь тестовый txt вытащить. А потом уже за архив можно браться. Верно ли это?

>Потому что тебе может очень крупно не повезти
Мне пока известно лишь 2 метода и табличный должен быть чуть-чуть выгодней обычного перебора. Так что ничего удивительного, что что-то может не сработать как планировалось.

>за O(n).
Где n это...?
Аноним 26/09/23 Втр 12:54:31 2855782 105
>>2855753
>Не подскажешь уроки или книги?
Ниет. Меня учили дядечки в универе. Это было давно и неправда.

Остальное жир вообще.
Ты смотрел как это работает? Я в душе не ебу, что ты пытаешься сделать и как это работает, но подозреваю, что пытаешься взломать шифрование файла. Скорее всего хешируется весь файл в плейнтексте.

Какой один блок? Какой AES перебором, прастихоспади?

ЖИРНО СУКА
Аноним 26/09/23 Втр 12:58:58 2855786 106
изображение.png 279Кб, 525x724
525x724
>>2855782
>Ниет. Меня учили дядечки в универе. Это было давно и неправда.
>Остальное жир вообще.
>ЖИРНО СУКА
Ладно.

Спасибо и на том что рассказал.
Аноним 26/09/23 Втр 13:10:02 2855797 107
>>2855786
>Ладно.
А на что ты рассчитывал?

Делаешь какие-то танцы с бубном, какие-то хэш-таблицы.

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

Хешировать ты сможешь только весь файл целиком. Если сможешь из готового хэша восстановить хэш для одного блока - мильоны далларов тока так можешь собирать.

Если у тебя AES-256, то перебором ты его будешь ломать 2256 итераций. Если кто-нить не выдумал крутых техник взлома, конечно.

2256 итераций, даже если ты будешь подбирать по квадрилиону ключей в секунду - это 3.67... x 1057 лет.
Я подозреваю, что вселенная кончится раньше.
Аноним 26/09/23 Втр 13:13:16 2855800 108
>>2855786
Во, может ты хотел пароли подбирать? А под таблицами - радужные таблицы имеешь в виду? Тогда да, я не вдуплил твоего гения.
Аноним 26/09/23 Втр 15:17:46 2855944 109
>>2855800
Всё так. Но пока чёт все пишут что AES256 эт прям неприступная крепость и вообще даже Тяньхэ-2 его не потянет. Тем не менее, в 2016 на дваче кто-то разыгрывал BTC кошельки, пароли к которым были как раз в RAR архивах. Тогда знакомый сильно бомбил, что пароль оказался больше 12 символов и перебор стал уже не выгоден, как по времени, так и по энергии.
Думаю, будь AES так крепок, никто не стал бы упарываться GPG и делать ключи по 4кб.

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

>Если сможешь из готового хэша восстановить хэш для одного блока - мильоны далларов тока так можешь собирать.
Я понимаю твой сарказм, но хотя-бы попробую.
Аноним 26/09/23 Втр 16:09:43 2855994 110
>>2855472
Бро, я так и не понял про какой ты видос. Можешь линкануть?
Аноним 26/09/23 Втр 18:29:57 2856255 111
>>2855797
> Если кто-нить не выдумал крутых техник взлома, конечно.
Уже выдумали, за 2254
Аноним 26/09/23 Втр 20:27:48 2856450 112
Аноним 26/09/23 Втр 20:33:06 2856463 113
>>2855944
>никто не стал бы упарываться GPG и делать ключи по 4кб
Погоди, так это же для ассиметричной крипты такие ключи делают. И то, для RSA я вроде так даже сам делал, но для эллиптических кривых там уже меньше ключи.

А, как сказал вот этот мудрец >>2856255, там всё очень не просто с этими новыми симметричными шифрами.

Надежда, рили, только на то, что пароль подберётся.

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

Причём с "несколькими блоками" выйдет только если необходимые данные в начале лежат. Или хуй.
Аноним 26/09/23 Втр 21:46:47 2856625 114
Друзья, мне нужно использовать в проекте хедер <curl/curl.h>. Сразу скажу, я на винде, curl у меня поставлен через chocolatey, поэтому в cmake я прописал брать curl'овые потрошки оттуда и получил cannot find -lcurl-x64.
Я так и не понял, где и как мне на Винде получить libcurl4-openssl-dev. Мнение?
Аноним 26/09/23 Втр 21:57:13 2856647 115
>>2856625
Мнение - винде надо было выкинуть наследие дос давно и идти по пути макоси.
А так страдай, хуй его знает как это на говнокнах чинить. Надо патч до либ прописывать.
Аноним 26/09/23 Втр 22:12:34 2856672 116
>>2856625
Как ты их прописал? Ниче нельзя сказать по твоему описанию. Не ебу что за говно, но наверное твой шоколадный поставил либу + файнд к ней наверняка. Поюзай симейковский дефолт по инклюду зависимостей типо файндпэкэдж
Аноним 26/09/23 Втр 22:41:16 2856708 117
Почему std::cout обьект, а std::endl функция ?
потому что cout это наверное класс, а endl функция внутри этого класса верно ?
Аноним 26/09/23 Втр 23:33:40 2856758 118
изображение.png 4Кб, 415x74
415x74
>>2856463
>Надежда, рили, только на то, что пароль подберётся.
В архиве всего два файла, так что если как-то оптимизировать процесс его открытия, то можно и перебором решить проблему. Ведь можно за один раз пытаться достать один файл. По идее, проверка не займёт много времени, а С++ будет одним из самых оптимальных вариантов. Всё остальное уже будет зависить от того, на сколько потоков получится разбить перебор и не будет ли проц душить видеокарту.

>Или, если это какая-то предсказуемая структура, столько блоков, чтобы понять, попал ты или нет.
Вот это самое интересное. Поскольку известен формат и размер файла внутри, можно примерно прикинуть размер и содержание его заголовка, который уже будет лежать в некоторых границах. Если бы можно было проводить расшифровку только заголовка, то сравнивая с заголовком другого jpeg'а можно было бы очень быстро подобрать ключ, а уже из него пароль. Другое дело, что мне не известно как происходит расшифровка zip, идёт ли она одним длинным потоком или имеет некую цикличность которую могли бы разделять те самые блоки.
В меру моего слабого понимания, выглядит это пиздец как интересно и вполне решаемо. Тем более что пароль где-то между 6 и 15 символами. Так что можно убрать все короткие и сэкономить хоть немного времени и энергии.
Аноним 26/09/23 Втр 23:57:31 2856789 119
>>2856463
В догонку к прошлому посту. Дешифровка AES имеет уязвимость в виде связи значений настоящего ключа со скоростью выполнения операции. У меня нет ни осциллографа, ни прочего нужного железа, но может быть можно симулировать выполнение распаковки в VM, которой можно задать маленький параметр clock, по которому уже можно будет прикинуть диапазон значений, получая график быстродействия из самой VM.

Но у меня в прошлый раз не вышло разобраться с VM, когда пробовал освоить дебиан. Хз, есть ли у них функция дебага медленной работы. На них же можно симулировать быстродействие какого-нибудь пентиума 2, возможно получится опуститься и ниже, до какого-нибудь 386го.


Но это мысли в слух. Хз насколько это позволит сузить круг поиска.
Аноним 27/09/23 Срд 04:52:24 2856922 120
>>2856758
Не, ты всё-таки почитай по криптографию, твоя интуиция тебя подводит. По сути, ты предполагаешь, что: а) есть какой-то «неправильный» более быстрый способ расшифровать зашифрованное; б) никто о нём не подумал, а ты найдёшь. По сути, это означает, что шифрование будет взломано. Теперь оцени вероятность случайно взломать AES.

Во-первых, готовые программы для решения твоей задачи давно существуют. Во-вторых, работают они все одинаково: берётся минимальный блок для расшифровки, расшифровывается с первым сгенерированным по какому-то шаблону паролем, проверяется корректность, пароль не подходит. Расшифровывается со вторым сгенерированным паролем — и так до конца. Принципиальной разницы между ними быть не может (если шифрование надёжное), разница только в немного более оптимизированном коде, позволяющем быстрее перебрать простые (короткие, словарные, частично известные) пароли. Если вариантов слишком много, перебор становится бессмысленным, поскольку нет разницы, ждать тысячу лет или две тысячи лет.

Что-то мне подсказывает, что тебя развели мошенники, предлагающие «проверить своего партнёра на измену». Тогда это просто случайные файлы со случайным паролем в архиве, и никто не собирался после получения денег что-то тебе раскрывать.
Аноним 27/09/23 Срд 05:29:11 2856924 121
>>2856922
Ну а почему нет. В пиндосы специально закладку заложили в алгоритм что бы зашифрованные данные читать. Она может быть хитрая изощренная. Intel Me же вскрыли и выяснилось что оно не просто так сидит пердит железо инициализирует а еще сука в сеть ходит даже когда комп выключен. Может дамп памяти снимать и запросто отсылать.
А в интелах еще есть аппаратное шифрование aes
Вроде как это просто векторные инструкции, но они генерируют конечные ключи, а еще в интеле есть аппаратный генератор случайных чисел. В общем тут вопрос то интересный на самом деле.
Аноним 27/09/23 Срд 06:06:27 2856934 122
>>2856924
> Intel Me же вскрыли и выяснилось что оно не просто так сидит пердит железо инициализирует а еще сука в сеть ходит даже когда комп выключен.
Действительно, почему же оно делает то, что в инструкции сказано? Агент, который должен быть активен даже при выключении основной системы, чтобы её можно было удалённо включить обратно, активен при выключенной системе, м-м-м.
https://en.wikipedia.org/wiki/Out-of-band_management

ЗаКлАдКа ПиНдОсОв, к сожалению, никак не поможет тебе перебирать пароли, пока ты не знаешь, в чём она состоит.
Аноним 27/09/23 Срд 06:15:39 2856936 123
Не ебу чё вы тут сретесь, но когда встала проблема квантовых компов и начали думать об квантовоустойчивых алгоритмах АНБ сильно продавливали свои алгоритмы, которые были при анализе слабее "общепринятых" и видимо имели в себе доп закладки.
Аноним 27/09/23 Срд 06:38:35 2856939 124
>>2856934
Когда ты такую функцию не заказывал, а она все равно есть и производитель об этом никак не предупреждает и не дает отключить это зонд в жопе, товарищь либерахен.
> никак не поможет тебе перебирать пароли
Шифрование это не только запароленый архив с лолями.
Аноним 27/09/23 Срд 06:48:35 2856940 125
>>2856939
Ну конечно, этот дурак решил, что я поддерживаю услуги, оказываемые Intel тем, кто попросил сделать именно так. Очень близоруко полагать, что проблема только в том, то тебя, Господина Покупателя, наебали с описанием товара. Надо пошире смотреть на то, в какой позиции пользователи находятся в пищевой цепочке и в чём корни проблемы.

И, всё-таки, надо понимать, о чём говоришь, а не о каких-то случайных числах в процессорах, которые тебе волшебным образом раскроют пароль для архива. Ламерство излечимо.
Аноним 27/09/23 Срд 10:41:28 2857075 126
https://www.youtube.com/watch?v=eo-4ZSLn3jc


Забавно смотреть как на протяжении полтора часа страуструп пытается доказать что плюсы это безопасный язык
> JUST BE CAREFUL

Все надеюсь в треде core guidelines прочитали?
Аноним 27/09/23 Срд 11:10:44 2857110 127
>>2857075
Так в расте тоже есть usafe
А в плюсах можно использовать только безопасные ссылки и итераторы.
Аноним 27/09/23 Срд 11:13:04 2857113 128
>>2857110
>Так в расте тоже есть usafe
Это к чему?

> безопасные
> ссылки и итераторы
Страуструп, залогинься. Слишком жирно
Аноним 27/09/23 Срд 12:13:03 2857240 129
>>2857113
К тому что все познается в сравнении.
По сравнению с си плюсы очень безопасны.
Объекты между процедурами можно передать без явного указания поинтера, а елементы вектора или массива перечислить без риска выхода за пределы бай дизайн.
Любой метод в плюсах это вызов конкретной функции по имении, а не вызов поинтера из массива, (как часто делают на си). В этом мне кажется и есть главный смысл ооп.

То что нет явного разделения на сейф/ансейф а есть только словестное напутствие страуструпа "быть осторожней", это да, уже не достаточный барьер безопасности по современным меркам.

Но если совсем откровенно то в дедовских книжках читал правило в духе unsafe программа/код может породить safe процесс, а наоборот safe->unsafe() нет, потому что тогда оба прастранства ансейф. Так что до безопасности раста тоже можно доебаться если захотеть.
Аноним 27/09/23 Срд 12:20:01 2857251 130
>>2857240
спасибо конечно за пасту, не знаю кому ты пишешь, но к моему посту эта вся информация никак не относится
Аноним 27/09/23 Срд 13:01:14 2857331 131
>>2857251
> хаха полтора часа страуструп пытается доказать что плюсы это безопасный язык
> К тому что все познается в сравнении. По сравнению с си плюсы очень безопасны.
Ты тупой.

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

Смог? Смог.

Плюсы отличаются лишь умением, которое нужно иметь, чтобы не отстрелить себе ногу. И за это плюсы дают байтоёбский контроль и скорость.
Я считаю, что всё честно.
Аноним 27/09/23 Срд 13:23:51 2857380 132
>>2857331
> безопасность
> познается в сравнении
...

> возьми свой дохуя безопасный язык
Шизойд, какой мой язык? Ты кому пишешь? Ты кому отвечаешь?

Ты когда про безопасность говорят что себе в голове представляешь?
Аноним 27/09/23 Срд 13:28:25 2857387 133
>>2857380
про сравнение я говорил, ты пукнул что то невразумительно про то что не о том вообще говорил.

Сейчас ты к дискуссии с другим аноном мою реплику приплитаешь, с какой целью, шизойд?
Аноним 27/09/23 Срд 13:35:20 2857397 134
image.png 7Кб, 613x103
613x103
>>2857387
> Сейчас ты к дискуссии с другим аноном мою реплику приплитаешь
Вы два шизойда, научитесь на посты отвечать нормально
Зачем вы кому то другому отвечаете в ответ на мой пост, я отгадывать должен что у вас там в голове происходит и кому вы пишите?
Аноним 27/09/23 Срд 13:37:59 2857402 135
>>2857397
Ты ветку нихуя читать не умеешь и в глаза ебёшься, дебил.

Вот тебе ветка
>>2857075 ты
>>2857110 он
>>2857113 ты
>>2857240 он
>>2857251 ты
>>2857331 я
>>2857380 ты

Теперь не отвертишься, хуйло. Это АИБ и даже если половина "ты" в этой ветке - это не ты, всё равно конкретная сторона дискуссии понятна.

А теперь перечитай ветку очень сука внимательно. И вынь, наконец, мужские половые хуи у себя из глазниц.
Аноним 27/09/23 Срд 13:43:26 2857413 136
почему мне постоянно такие шизы пишут
Аноним 27/09/23 Срд 19:33:31 2857925 137
>>2857397
Двачую. Похуй что за срач, но долбоебы которые влезают в ветку и даже мимо не ставят дико бесят
Аноним 27/09/23 Срд 19:47:17 2857929 138
>>2857925
Постоянно так делаю
Аноним 27/09/23 Срд 19:49:52 2857935 139
>>2857925
Тут "мимо" и не нужно.

Этот хуй либо является веткастартером, либо влез в дискач на стороне веткастартера.

Вот этот пост: >>2857075
Противоположная сторона вот этот пост: >>2857110

Далее всё довольно прозаично. За исключением, наверное, стороны, что решила посрать на С++ в С++ треде не попытавшись не то что привести аргументы, а даже не попытавшись уточнить контекст беседы.

Из-за чего выступают такие охуенные финты, когда постер спрашивает
>>2857380
>Ты когда про безопасность говорят что себе в голове представляешь?

Так хули ты влезаешь в дискуссию, даже не представляя что такое "безопасность языка"? Это комбинация ограничений языка и здравомыслия программиста. Именно поэтому можно писать на "безопасных" языках разъёбывая всё к хуям. Именно поэтому можно писать на С++ "безопасно".

Первоначальный клэйм был
>>2857075
>Забавно смотреть как на протяжении полтора часа страуструп пытается доказать что плюсы это безопасный язык

Ответ: "Да, и он доказал. Чё дальше?"
Аноним 27/09/23 Срд 20:07:07 2857945 140
>>2857935
> Безопасность это комбинация ограничений языка и здравомыслия программиста
Дебил? Дебил
Аноним 27/09/23 Срд 20:08:16 2857947 141
>>2857945
Контраргументы будут, серун?
Аноним 27/09/23 Срд 20:09:59 2857950 142
>>2857935
Чел всем поебать, ты когда в чужую ветку влезаешь где идет какое то обсуждение с претензиями на аргументы и позицию, обязан отписывать мимо, если нет то ты тупой мудак
Аноним 27/09/23 Срд 20:12:57 2857952 143
>>2857950
>обязан отписывать мимо
Тыскозал? Книжка с правилами где? У тебя около поста написано "Аноним". У меня около поста написано "Аноним".

Хочешь уникального экспириенса, когда никто не может влезть в дискуссию? Используй трип-код. Или съеби куда-нибудь ещё, где есть DM'ы, имена, профили, конфочки... нутыпонел.
Аноним 27/09/23 Срд 20:13:00 2857953 144
>>2857947
Про мемори сейфти хоть что то слышал?

Да лол, мне реально надо обьяснять что безопасность это не метофизическое ограничения, а конкретные пункты
Аноним 27/09/23 Срд 20:15:19 2857955 145
>>2857953
Тебе тут же в видосике он поясняет, что не станет убирать эту фичу, иначе все ваши охуенные мемори-сейф языки окажутся без языка на котором их рантайм написан.

Зато добавили фичи, юзая которые можно добиться функциональной memory safety.

Хуй будешь?
Аноним 27/09/23 Срд 20:18:33 2857958 146
>>2857955
> что не станет убирать эту фичу
Какую фичу?
> иначе все ваши охуенные мемори-сейф языки окажутся без языка на котором их рантайм написан.
Нет, не окажутся

> функциональной memory safety
Какой?...
Аноним 27/09/23 Срд 20:18:56 2857959 147
>>2857952
Да, это я сказал и так кстати люди здесь делают, так что не только я. А если ты мудень тупорылый который отвечает за другого человека то ты просто идешь нахуй и на этом все заканчивается и никакого содержательного диалога не будет ни с тем ни с другим
Аноним 27/09/23 Срд 20:20:50 2857965 148
>>2857959
>А если ты мудень тупорылый ... то ты просто идешь нахуй и на этом все заканчивается и никакого содержательного диалога не будет
Я, пожалуй, воспользуюсь советом в более общей форме.

>>2857958
Начинается жир ебаный. Отрастишь мозг - приходи.

А пока пошёл нахуй отсюда.
Аноним 27/09/23 Срд 20:21:54 2857966 149
>>2857965
Ну слив засчитан
Следующий раз хоть разберись о чем пишешь
Аноним 27/09/23 Срд 20:24:22 2857968 150
>>2857966
Можешь перед "сливом" сразу список пунктов для признания языка "memory-safe" выкатить. А не просто список проблем с памятью, часть который можно решить так, а часть можно эдак. И уж тем более не просто твой уткоязык, который ты облизываешь, будь то раст, жава или ещё какая хуйня.
Аноним 27/09/23 Срд 20:24:28 2857969 151
>>2857965
Да пользуйся чем хочешь, просто нахуя ты тут сидишь пишешь свои кринжовые простыни типо ты тут знаешь что-то и хочешь пояснить если тебе в итоге ебальник обоссывают и ты с мочей сидишь и бессодержательно срешься как в б помойке
Аноним # OP 27/09/23 Срд 20:24:58 2857970 152
Пиздец.
Аноним 27/09/23 Срд 20:28:37 2857973 153
> ФУНКЦИОНАЛЬНЫЙ memory safety

Это уже старая хуйня, сейчас модно OOP memory safety

в голос с этих выдуманных определений
Аноним 27/09/23 Срд 20:30:44 2857974 154
>>2857973
А как насчёт object based memory safety?
Аноним 27/09/23 Срд 20:35:06 2857976 155
>>2857973
>>2857974
Тем не менее тот хуй сверху так и не объяснил свои
> конкретные пункты
И не определил свою memory safety. Которая не определяется от конкретных пунктов в имплементации языка. Скорее от функциональных возможностей этого языка. Будь то GC или смарт-поинтеры. Поэтому он нихуя сказать и не может, а только огрызается.

Так что, выдуманное или нет, слился пока что он.
Аноним 27/09/23 Срд 20:58:07 2857995 156
16917990060120.jpeg 235Кб, 2500x2100
2500x2100
>>2857935
Зачем ты зеленому гастроллеру берешься что то разжевывать?
Школьник пришел тротлить на авось -
Пук. Хрюк. Мнум. вы дебилы повзрослеет книжек почитает придет набросит по нормальному.
Аноним 27/09/23 Срд 21:30:49 2858039 157
>>2857075
> JUST BE CAREFUL
Даже жаль дедулю, чтобы он не делал, а все равно продолжают си с классами юзать

> Все надеюсь в треде core guidelines прочитали?
Да даже если прочитают, половина на него хуй клала
Аноним 27/09/23 Срд 22:06:36 2858086 158
изображение.png 781Кб, 512x768
512x768
>>2856922
>тебя развели мошенники
Если только я сам, когда решил закинуть пикчи в закрытый архив. Но тогда и время было другое, был резон. или ты про ту стори с битком?

>готовые программы давно существуют
Да, hashcat например. Но у него закрытый код, поэтому даже посмотреть как он устроен не получится. А разобраться всё так-же интересно. По сути, мне нужно лишь повторить кусочек hashcat и может быть - сделать это лучше. Либо найти более оптимальное решение, что тоже может быть.

>>2856924
В алгоритм очень вряд-ли. Проще и выгоднее это делать в железо. Собственно, чем почти все и пользуются. А сделать математическую модель, со скрытыми свойствами - это очень круто. Сомневаюсь что до этого уже дошли.

>>2856940
Кстати. Не знаю, может уже исправили, но вроде года до 2016го в процессорах распределение случайных чисел было вовсе не случайно, из-за чего генераторы делали и продавали в виде отдельных PCI платок. Хз как сейчас, но доля истины в посте того парня была.

аниме-бамп го!
Аноним 27/09/23 Срд 22:15:16 2858093 159
Как вкатиться в CMake?

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

Хочу стать CMake богом.
Аноним 27/09/23 Срд 22:24:34 2858101 160
>>2858093
> я часто вообще не могу понять, что не так с зависимостями и почему проект не собирается.
Это нормальное состояние


Мне в свое время это выступление помогло разобраться с основами
https://youtu.be/y7ndUhdQuU8?si=2roV1Lf8r1Djx33A
Аноним 27/09/23 Срд 22:35:32 2858117 161
>>2858093
Хочешь стать CMake-программистом?
Аноним 27/09/23 Срд 22:38:24 2858121 162
>>2858117
Так симейк Тьюринг полный, я видел даже рендерер на чистом симейке
Аноним 27/09/23 Срд 22:39:31 2858123 163
>>2858101
Благодарю

>>2858117
Нет, просто хочу, чтобы было какое-то понимание симейка, чтобы не отвлекать тупыми вопросами занятых симейк-богов.
Аноним 28/09/23 Чтв 04:36:16 2858265 164
>>2858093
О это боль та ещё.
Смотри в чужие проекты и смотри как у них сделано.
Самая главная проблема СраногоМейка - это find_пукидж и последовательность для crate_lib/exec
В остольном все просто.
Аноним 28/09/23 Чтв 08:29:33 2858311 165
>>2858265
> последовательность для crate_lib/exec
Это что такое?
Аноним 28/09/23 Чтв 09:22:18 2858341 166
>>2858311
Симейк не собирает проект же он генерирует мейкскрипт(ы) как ./configure. Только если ./configure это обычный башскрипт к которому надо либо приложить талант в программировании на баше либо еще один генератор autoconf/automake (к которым прилагается еще файл конфигурации, три уровня блять)
То cmake он как бы сразу конфигуратор и генератор make скрипта.

А в make если ты когда нибудь пробовал на нем писать, код программы можно подробить на секции:

libxyz.so(): .. build lib

test(): libxyz.so(), ...build test

xyz(): libxyz.so(), ... build program

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

У мейка и смейка есть альтернатива - ninja и meson, если нет нужды добавлять в проект сторонние библиотеки использующие для сборки cmake, то лучше юзать мезон для проверки / сборки нужных компонентов в mpv используется можешь глянуть как оно там реализовано.
Аноним 28/09/23 Чтв 09:38:11 2858353 167
>>2858341
есть еще scons где ты можешь на привычном питухоне написать билд скрипт
Аноним 28/09/23 Чтв 09:47:53 2858363 168
>>2858353
Так мезон тоже на петухоне и опять таки с хорошим примером в виде mpv.
Аноним 28/09/23 Чтв 10:20:23 2858379 169
>>2858341
Не слушай его, используй везде смейк в проектах на плюсах, дефакто это стандарт, а все остальное недоразумение должно сдохнуть
Аноним 28/09/23 Чтв 10:26:28 2858382 170
>>2858379
>а все остальное недоразумение должно сдохнуть
Слыш ты, за мэйк и двор стреляю в упор! Петы на мейке, даже лисповые.
Аноним 28/09/23 Чтв 10:35:09 2858387 171
>>2858382
Так ты же дурачок, нет?
Аноним 28/09/23 Чтв 11:12:55 2858437 172
>>2858387
А может ты? И не дурачок даже, а недальновидный зумер, который не понимает изящества простых инструментов?
Аноним 28/09/23 Чтв 11:14:15 2858438 173
>>2858437
>не понимает изящества простых инструментов
Такое только с опытом приходит ну или не приходит никогда
Аноним 28/09/23 Чтв 12:03:40 2858489 174
Аноны, как в VS чинить не желание подхватывать хидеры на лету, создаю хидер, прописываю там описание класса, потом создаю для этого хидера cpp файл, начинают в нем писать реализацию класса, указываю в нем инклуд на заголовок всё как надо, ну в подсказках нихера не всплывает ничего после всех :: и прочего, и даже инклуды на всякие std не видет те которые уже включены в заголовки
Аноним 28/09/23 Чтв 12:27:41 2858514 175
Аноним 28/09/23 Чтв 12:32:18 2858519 176
>>2858489
Или QtCreator в нем хорошо плюсы визуализированы. Например мне нравится что если функция принимает ссылку то переменная в аргументе курсивом выделяется.
Аноним 28/09/23 Чтв 12:45:46 2858528 177
Аноним 28/09/23 Чтв 12:52:06 2858534 178
>>2858528
Это закрытая платная говнина под винду онли, иди спрашивай у микрософта как ее настраивать.
Аноним 28/09/23 Чтв 12:53:23 2858537 179
Аноним 28/09/23 Чтв 13:31:06 2858575 180
>>2858534
> говнина

Говнина не говнина, ну если вкатываться в плюсы, да еще в купе с какими-то фреймворками типа как JUCE в моем случае, то эту гавнину приходится кушать хочешь не хочешь, даже тупо тянуть чужой код с гитхабов, чтобы у себя его откомпилировать, по изучать, в большинстве случаев он будет в VS проектах
Аноним 28/09/23 Чтв 13:31:51 2858577 181
>>2858575
так что советы про смену IDE вообще не уместны
Аноним 28/09/23 Чтв 13:35:21 2858581 182
>>2858577
Советы про смену языка
Аноним 28/09/23 Чтв 13:56:17 2858596 183
>>2858575
> в большинстве случаев он будет в VS проектах
Так это виндософт завязанный на вижуалс++ нахуй он нужен?
Аноним 28/09/23 Чтв 14:01:22 2858597 184
>>2858596

Кому нахуй он нужен? Лично тебе?
Аноним 28/09/23 Чтв 14:28:43 2858610 185
Опять линуксо шиз весь тред засирает
Аноним 28/09/23 Чтв 14:44:05 2858621 186
>>2858610
И я его полностью поддерживаю
мимошел
Аноним 28/09/23 Чтв 16:48:04 2858773 187
>>2858596
Ну тут ты не прав хотя студия коенчно то еще говно
многие норм разрабы и под винду и мсвц симейком собирают.
>>2858519
>>2858514
Эти правы, и вскодиум и креатор лучше студии галимой и все профилировщини лучше самому настраивать
>>2858610
съеби
>>2858621
бро

Я например все пишу под линуксом, потому что это банально удобнее, а потом уже билды под виндой проверяю. и нет я не тот ваш шиз
Аноним 28/09/23 Чтв 17:59:33 2858879 188
Опять линуксо шизы весь тред засирает
Аноним 28/09/23 Чтв 18:10:31 2858896 189
>>2858773
А что vs-code на винде не популярен?
Интересно всегда было как там решен вопрос с отсутствием хидеров libstd из коробки, как там предлагается все вот это доустанавливать.
Аноним 28/09/23 Чтв 18:23:40 2858923 190
>>2858896
С чего ты так решил и тем более почему из моего поста?
Я на винде собираю с буилд тулз сл.экзе и все необходимое, за вычетом выше упомянутой не нужной студии это в догонку к >>2858596 , на платформе лучше использовать нативный копилятор, как ни крути.
Так вот, винда не предполагает что она используется для разработки, хочешь собирать - ставь булд тулз, ну или студию, или мингв/всл всякие, тут уж сам смотри.
Аноним 28/09/23 Чтв 18:42:44 2858956 191
>>2858923
А ну то-есть есть билд-ессентиалз от микрософта? Ок тогда.
Мне просто было интересно как они выкрутились с VSCode -ом на винде, не уж то на родной операционной системе предлагают mingw скачать (может оно там в расширениях есть)
Аноним 28/09/23 Чтв 19:33:45 2859012 192
>>2858489
Своруй решарпер с++.
Аноним 28/09/23 Чтв 20:05:36 2859055 193
Аноним 28/09/23 Чтв 20:24:25 2859069 194
Аноним 28/09/23 Чтв 21:19:32 2859138 195
>>2859069
знаю знаю , но кидать не стал, пусть хоть чутка погуглят
Аноним 29/09/23 Птн 21:45:10 2860305 196
>>2847323 (OP)
У Jetbrains есть годная IDE для С++? Подскажите какая, потому что VS выёбывается лицензией, а телефона чтоб сделать акк у меня сейчас тупо нет. Вообще нет. И взять его неоткуда.
Аноним 29/09/23 Птн 21:48:12 2860308 197
>>2860305
У меня нет ни телефона, ни почты. Но их отсутствие мне никак не мешает юзать вижуалстудию.
Аноним 29/09/23 Птн 21:49:35 2860310 198
>>2860308
Значит я что-то установил не то, потому что "ваш 30 дневный срок истёк, зайдите через свой микро-акк".
Аноним 29/09/23 Птн 21:50:42 2860311 199
Аноним 29/09/23 Птн 21:52:11 2860313 200
>>2860305
Есть, но платная
CLion

можешь попробовать по советам выше qtcreator или VScode, но если с тулингом в плюсах не знаком - то готовься к аду
Аноним 29/09/23 Птн 22:00:14 2860319 201
>>2860313
Я из питона перекатываюсь, конкретно с PyCharm. VS выглядел очень приятно и знакомо, но решил послать меня нахуй после 30 дней.

IDE мне нужна для обучения и освоения библиотек. Я бы сказал что PyCharm был идеален, но кажется С++ в него никак не запихнуть и такой-же удобной работы с библиотеками и сборкой там не будет. Или это ошибочное мнение?
Аноним 29/09/23 Птн 22:15:48 2860331 202
3fac61154f8f5d7[...].JPG 102Кб, 944x900
944x900
>>2860313
QT заебись, спасибо что подсказал.
Аноним 29/09/23 Птн 22:20:02 2860340 203
>>2860313
>free trial
ЪУЪ СУКА

Ладно... А если NetBeans
Аноним 29/09/23 Птн 22:21:27 2860342 204
Пиратство.
Аноним 29/09/23 Птн 22:22:03 2860343 205
>>2860319
> такой-же удобной работы с библиотеками и сборкой там не будет
У меня для тебя плохие новости, в плюсах работой с библиотекой иде почти не занимается, придется почти все делать ручками
Пакетных менеджеров всего два, conan и vcpkg, оба имеют свои плюсы и минусы пользуются ими все ещё не большинство

>>2860340
> Ладно... А если NetBeans
Уж лучше спирать
Аноним 29/09/23 Птн 22:32:56 2860350 206
>>2860343
>спирать
А это что?
И что насчёт Eclipse? Судя по описанию, надо лишь на 1-2 вечера заебаться настройкой, а потом будет слегка прожорливая, но полнофункциональная IDE.

>conan
>vcpkg
Региональный блок. Ахуенное начало.
Аноним 30/09/23 Суб 02:15:51 2860440 207
9vkByZQMPek.jpg 128Кб, 1023x685
1023x685
>>2860350
Блять... Я 4 часа ебался с установкой ебаных компиляторов и получил IDE без менеджера пакетов. Хотя в С++ немного другие способы ввода библиотек в проект, я хуею с того как вы этим пользуетесь. Сука... Посли питоши аж ныть хочется. Как же там всё было удобно. Теперь понятно, почему багфиксы по репортам делают так долго. Пока с какой-нибудь мелкой хуйнёй разберешься, уже и вечер пройти успеет. А как механику или неткод в играх исправлять, так вообще наверно вешалка.

Зато теперь с кудой не будет проблем. АУФ!

Но я всё ещё в ахуе... Даже с ассемблером не было так сложно.
Аноним 30/09/23 Суб 02:32:21 2860441 208
изображение.png 165Кб, 1236x910
1236x910
изображение.png 24Кб, 661x354
661x354
>>2847323 (OP)
Почему GCC создаёт такой массив информации в helloworld экзешнике? 3881 строка. При этом сам код на пике справа.
IDE Eclipse, C++ , toolchain - GCC, вспомогательно стоит Mingw.

В продолжении ветки ахуевшего питоноёба >>2860305 ... >>2860440
Аноним 30/09/23 Суб 02:59:35 2860450 209
>>2860441
Это рантайм плюсов. В плюсах ты платишь и за то, что используешь, и за то, что не используешь.
Аноним 30/09/23 Суб 05:02:58 2860462 210
>>2860450
-О3 врубаешь и не используешь.
Аноним 30/09/23 Суб 08:01:02 2860482 211
>>2860441
> #include <iostream>
Это если что не линковка с библиотекой через хидер (как в си), а включение части stdlib в файл.
Плюсы это ооп язык и что бы реализовать наследование как в языках с рантаймом нельзя базовые классы выделить куда то там в отдельный модуль как в glibc, они все добавляются в исходник и компилируются с программой.
Для прикладного языка это не проблема, хэловорлд на электроне вообще в себя браузерный движок будет включать и ничего.
Аноним 30/09/23 Суб 13:40:14 2860735 212
>>2860305
Дополню что еще есть fleet, но это какое-то обрезанное говно которое они допиливают онлайн. Зачем её такой выпускать хз, очень странный мув
Аноним 30/09/23 Суб 15:45:10 2860876 213
Пытаюсь разобраться с концептами

https://onlinegdb.com/Soh_GxKB5b

почему первая проверка дает false?

может я концепт same_as неправильно использу в requires?
Аноним 30/09/23 Суб 15:54:19 2860891 214
>>2860450
>>2860482
Спасибо что объяснили. Но это вроде статический метод включения библиотек, а есть ещё динамический. И вот вроде в нём можно положить либу рядом с exe и она будет вызывать по мере необходимости. Если не проебался гайд смотрел глубоко ночью, то плюсы и минусы есть в обоих методах.

>>2860735
Если смогу вкатиться в опен сорс, мб смогу оформить себе Clion. С другой стороны, если разберусь с Эклипс - в этом не будет необходимости. Тем более если с библиотеками всё равно работать в ручную, по большей части, то и смысла в clion нет.
Аноним 30/09/23 Суб 15:57:32 2860899 215
>>2860891
Под линуксами годная иде для плюсов kdevelop
Аноним 30/09/23 Суб 17:12:14 2860984 216
>>2860899
>>2860891
Эулипс и кдевелок кал говна.
Креатор, силион ну или кодиум. Все.
Аноним 30/09/23 Суб 17:15:12 2860988 217
1696083312593.jpg 28Кб, 638x474
638x474
Вим, емакс
Аноним 30/09/23 Суб 18:10:13 2861085 218
Вим лучший. Вешаешь Искейп на ненужные кнопки для удобства и наслаждаешься быстрейшим редактором.
Аноним 30/09/23 Суб 18:13:43 2861097 219
Аноним 30/09/23 Суб 18:15:05 2861104 220
>>2860899
До линукса ещё не дополз, но уже надо Centos изучать. Но это можно и на OracleVM замутить. Но раз зашла речь, то вопрос такой.
Насколько сложно собрать предельно легковесный линукс, но с поддержкой CUDA, для выполнения кода? Просто чтоб заюзать больше ресурса, который раньше мог бы уходить на всякие кнопочки и виджеты бубунты/винды.

>>2860984
А теперь расскажи почему.
Аноним 30/09/23 Суб 18:24:36 2861130 221
>>2860876
Равно убери в первом случае
Аноним 30/09/23 Суб 18:28:28 2861143 222
Аноним 30/09/23 Суб 18:36:56 2861171 223
>>2861130
Хех. Это так в учебнике Лоспинозо проверяется наличие оператора += у типа в шаблоне. Проблема в том что концепты в С++20 успели видимо синтаксис изменить с тех пор как учебник написан. Теперь
requires (T x, U y) {
{expression} -> concept
}
А в книжке
requires (T x, U y) {
{ x += y } -> T
}
Аноним 30/09/23 Суб 18:38:26 2861175 224
>>2861171
requires (T x, T y) {
{ x += y } -> T
}

фикс
Аноним 30/09/23 Суб 18:43:34 2861189 225
>>2861143
Да я хочу VPN поднять, а для него вроде проще всего юзать именно centos. Тем более сервак и так будет виртуальный, так что легкость и прожорливость оси имеют значение.
Аноним 30/09/23 Суб 19:22:02 2861247 226
>>2861104
Линукс это не винда.

Устанавливаешь минт (или росу если не хочешь gtk оболочку а хочешь lxQt или kde) с оболочкой которая больше всего подходит под комплюктер.

Попсовый, хорошо известный и поддерживаемый дистр с перделками свистелками и красивыми обоями из коробки, чтоб не пердолится и не настраивать.

В минте или росе включаешь в специальной утилитке проприетарные дрова nvidia (чтоб опять не пердолится) находишь где надо этот твой cuda sdk под линупс компиляель с ним программу переключаеешь в tty1 (то есть выключаешь товарища графони и переходишь в сосноль ) запускаешь там свою программу профит.

Как перейти в tty и все остальное сам уже разберешься, главное почему роса или минт потому что они хорошо настроены из коробки при этом в первом случае это 100% пакетная база убунты а во втором нпято близкое к федореному горю, соответственно проблем с установкой куды под убунту или федору проблем не будет.
Аноним 30/09/23 Суб 19:22:11 2861248 227
Аноним 30/09/23 Суб 19:24:26 2861253 228
Аноним 30/09/23 Суб 19:24:41 2861254 229
>>2861189
В виртуалке cuda работать не будет.
Аноним 30/09/23 Суб 19:27:22 2861259 230
>>2861254
Ты немного не так понял.
Виртуалка для сервака - Centos.
Реальная ось на реальном ПК - для работы с CUDA. Конкретно для высвобождения ресурсов. Написать можно на винде, а запустить уже под линуксом. Глядишь чуть-чуть быстродействия смогу получить за счёт легковесной ОС.
Аноним 30/09/23 Суб 19:38:00 2861278 231
>>2861259
Логинишься не в иксы а в tty без оболочки и все, потом обратно.
Минималистичная ос тебе не нужна, ты на ней заебелься проприетарные дрова устанавливать и куду свою.
Бери стандартные.
Аноним 30/09/23 Суб 19:44:48 2861285 232
>>2861253
А блин ясно, что я тупой для плюсов операторы в полюсах часто возвращают референс
Аноним 30/09/23 Суб 19:59:39 2861320 233
>>2861285
Да не парься, концепты мало кто в целом понимает и использует.
Аноним 30/09/23 Суб 20:04:59 2861334 234
с++ хуйня
Аноним 30/09/23 Суб 20:10:48 2861346 235
Аноним 30/09/23 Суб 20:14:49 2861351 236
>>2861346
Ну так я ваще тупой зумер
Аноним 01/10/23 Вск 08:44:55 2861765 237
Rias Gremory [A[...].jpg 262Кб, 1133x1600
1133x1600
Вчера переписывал прогу с питона на плюсы. Что могу сказать? Разницы почти нет. Срезы чуть удобнее substr. Если не хочешь прописывать типы, ебашишь везде auto. Библиотека std::filesystem мне показалась удобнее и гибче аналогичной питоновской. На любом языке код будет выглядеть секретной шифровкой, если не обернуть его в абстракции. Прототипирование не нужно? Единственное преимущество питона, как мне видится, наличие бесконечного количества прикладных библиотек для самых разных высокоуровневых задач. Например, бота в телеграме с нейросетью я скорее всего напишу на питоне, потому что на с++ я толком прикладных библиотек не знаю, кроме ЛОХмана.
Аноним 01/10/23 Вск 08:54:10 2861769 238
>>2861765
веб фреймворк на с++ для микросервисов где? кроме китайского drogon
Аноним 01/10/23 Вск 09:03:30 2861779 239
Аноним 01/10/23 Вск 14:29:40 2862061 240
>>2861765
Ясно, а шлюху эту нахуя ты запостил?
Аноним 01/10/23 Вск 15:35:18 2862107 241
>>2847323 (OP)
Как правильно искать overlay программы или примеры для c++? Пару лет назад видел у R6S киберкотлеты реалтайм оверлей с температурой и загрузкой CPU/GPU который выглядел как консольная строка вверху экрана, только без самого окна консоли. По сути это должно было быть консольное приложение, но в безрамочном режиме. Как такое написать или нагуглить?
Аноним 01/10/23 Вск 16:37:40 2862216 242
>>2862061
Говорит же развлекался с питоном раньше в одиночестве, решил вот взяться за плюсы. Не набрасывайся а объясни чем плюсовики увлекаются.
жирными бабищами с большими отвисшими ООПаями
Аноним 01/10/23 Вск 18:25:31 2862308 243
Нужно ли применять ключевое слово extern для всего содержимого файла ?
Нужно ли при определении класса всегда создавать конструктор копирования, деструктор, конструктор перемещения, оператор переобразования и тп. ?
Аноним 01/10/23 Вск 18:28:11 2862311 244
>>2862308
Лучше взять нормальную книгу и прочитать ее
Аноним 01/10/23 Вск 18:52:32 2862336 245
>>2862308
Конструктор и деструктор обезательно, оператор и константы-"геттеры" нет.
Экстерн нужен что бы сказать компилятору что у тебя функция/конструктор будет объявлен позже, но пусть все знают что она есть.
Аноним 01/10/23 Вск 18:53:05 2862337 246
Всем привет. Есть вопрос, на который я не смог найти решения.
На работе есть температурный котёл, в нём два датчика. Один измеряет температуру корпуса, второй температуру содержимого. Показатели передаются в arduino, с него через монитор порта в компик. Там в простой программе данные выводятся на экран каждую минуту с этих датчиков. Просто в одну строчку через пробел. Интернета на ноуте цеху и не будет, юсб работает только один, и в него уже воткнута ардуина. И есть старый телефон на андроиде. Нужно сделать так, чтобы данные отправлялись смской по мобиле. Я предложил такую структуру: не отключать на экране телефон никогда, оставить открытой прогу с смсками, а этот ноут подключить к мобилке как блютуз клавиатуру.
Вопрос: как сделать так, чтобы печатать на клавиатуре ноутбука, а цифры набирались на телефоне? Я пробовал свою блютуз клавиатуру дома подкл, она нормально работает. А вот как ноут превратить в эту зуб-клавиатуру ну могу догнать
Аноним 01/10/23 Вск 19:00:39 2862345 247
>>2862337
Отправлять данные через гсм модуль
Аноним 01/10/23 Вск 19:00:40 2862346 248
>>2862337
А отправлять по сети нельзя?
Аноним 01/10/23 Вск 19:06:12 2862361 249
>>2862336
>Экстерн нужен что бы
extern нужен чтобы сказать что переменная (ее начальное значение) определяется в другом модуле, а там где extern там только декларация переменной. Функции все по уморчанию extern. Чтобы их сделать локальными нужно сделать их static
Аноним 01/10/23 Вск 19:08:05 2862366 250
>>2862345
>>2862346
К сожалению, у меня только такой вариант разрешили к реализации, который я описал
Аноним 01/10/23 Вск 19:10:09 2862370 251
>>2862361
Т.е от этого зависит какую информацию компилятор оставит для линковщика. Есдли переменная extern, то линковщик будет искать ее в другом объектном модуле, чтобы связать.
Аноним 01/10/23 Вск 19:27:53 2862408 252
>>2862366
В чем принципиальная разница между отправкой с телефона инфы и напрямую с ардуины через гсм модуль?
Аноним 01/10/23 Вск 19:30:50 2862418 253
>>2862308
> всегда создавать конструктор копирования, деструктор, конструктор перемещения, оператор переобразования
в 99% случаев да

> Нужно ли применять ключевое слово extern для всего содержимого файла ?
в 99% случаев нет
Аноним 01/10/23 Вск 19:41:51 2862439 254
>>2862418
Но а если у меня в коде не будет задействован конструктор копирования, перемещения, операторы и деструктор ?
Аноним 01/10/23 Вск 19:42:35 2862442 255
>>2862439
Как у тебя может быть не задействован деструктор?
Аноним 01/10/23 Вск 19:44:59 2862447 256
>>2862361
Ну как бы не совсем. "Модуль" возникает уже при компиляции объектных файлов, а сам по себе язык не содержит семантики архитектуры приложения, даже препроцессор это по сути не си и не плюсы уже, а extern именно что паттерн языка и говорит он что эта функция - есть:

extern "C" { void foo(); }

Но она будет объявлена после.
Это придумано не для модулей, а для того что бы функции например взаимовызывали друг друга без экстерна как ты объявишь иначе?
Аноним 01/10/23 Вск 19:50:08 2862459 257
>>2862408
Я попробую задать завтра такой вопрос. Ине поставили очень жёстко задачу использовать вариант, который я описал выше. Рискну уточнить
Аноним 01/10/23 Вск 20:01:58 2862480 258
>>2862447
Не понял тебя. В С++ и так если напишешь сто раз
void foo();
void foo();
void foo();

То все нормально соберется. Деклараций функций может быть сколько угодно. Проблема в переменных. Там декларация = определение пока ты extern впереди не написал.

extern "C" в плюсах это вроде только для совместимости с сишным кодом
Аноним 01/10/23 Вск 20:46:20 2862553 259
>>2862459
Ну и задача не совсем понятна. Тебе для чего нужно отправлять эти данные? Ноут, который с ардуиной связан подключен к сети?
Аноним 01/10/23 Вск 21:56:39 2862657 260
>>2847323 (OP)
Сап крестоносцы, дело такое, сам пишу на java и работаю соответственно spring макакой. На этой неделе уволили с работы, пару дней сижу и вала ебу с выгоранием. Давно хотел что-то новое попробовать, решил взяться за кресты, у меня есть две-три недели исключительного кайфа без ебаной работы. Так вот, пришел к вам с вопросами, в основном они вам наверное тупыми покажутся, ну да похуй

1. В основном на джабе пишут веб говно, особенно ентерпрайзное, у вас так же? Или с++ используется везде и по чуть чуть?

2. Каким веб фреймворком вы пользуетесь на крестах? Нашел вот эти
crowcpp.org
oatpp.io

3. Что нужно знать джаба макаке перед тем как браться за кресты?

Щитаю уж лучше с вами пообщаться чем читать мусор копирайтеров которые друг у друга пиздят калтент как обезьяны пиздят бананы друг у друга на тайланде
Аноним 01/10/23 Вск 22:32:01 2862697 261
>>2862657
На плюсах пишут всё, кроме веба.
Аноним 01/10/23 Вск 23:36:08 2862778 262
>>2862657
Джава дэбилы со сборщиками мусора умудряются писать код который по памяти течет, какие вам нахуй плюсы брат.
Ты вообще куда-то не туда забрел, веб на плюсах действительно странно, иди лучше го какой-нибудь поковыряй или питон.
А тебе вообще для чего? Целей своих ты так и не написал
Аноним 02/10/23 Пнд 00:00:03 2862798 263
>>2862107
Это платформозависимая вещь, на линуксе это можно сделать через kms\drm драйвер ядра
Аноним 02/10/23 Пнд 01:26:15 2862835 264
>>2862798
То есть нужно искать либы для Win11 на С++? А есть какие-либо стабильные и популярные либы для работы получения системных параметров? Типа...
"Процесс жрущий максимум оперативы/CPU/аптайма диска в данный момент". У меня на 8.1 стояли гаджеты для этого, но на 11й они уже не работают. И там не было контроля над ресурсами относительно процесса. То есть нельзя было глянуть, какая именно программа резко-дерзко решила закрутить твой HDD, пока ты куришь у окна. Хочу решить эту проблему, ещё и с оверлеем.
Аноним 02/10/23 Пнд 01:53:41 2862843 265
>>2862835
Даже искать ничего не нужно. winapi
Аноним 02/10/23 Пнд 02:42:36 2862848 266
>>2862442
Мб он имел в виду что деыолтного хватит.
Аноним 02/10/23 Пнд 05:30:55 2862872 267
>>2862480
Ну да, ты прав, это именно что объявление функции вовне, для линковки.
И семантика для разруливания указателей на уровне архитектуры есть, например restrict.
Аноним 02/10/23 Пнд 05:54:52 2862878 268
>>2862848
Нужно всего лишь помнить что
1) Дефолтный конструктор копирования и оператор присваивания делает буквальное копирование всех свойств, следовательно если у тебя есть указатели внутри твоих данных то они будут также скопированы. У тебя может получится что копия будет содержать указатель на на одни и те же данные что и оригинал. Если общие данные разрушаются в деструкторе оригинала или копии, то копия или оригинал соответственно получают UB.
2) Буквальное копирование может быть затратным. Иногда хватает перемещения вложенных данных из оригинала в копию. Следовательно нужен не дефолтный оператор присваивания перемещения.
3) Если есть наследование. struct B: A {} то при
A b = new B;
и если деструктор ~A не виртуальный то у b будет вызван деструктор ~A, который может не учитывать свойства из B. Следовательно нужен не дефолтный деструктор.
4) При динамическом выделении ресурсов (в том числе памяти) следует использовать паттерн RAII чтобы не было утечек. Но RAII не избавляет от возможной двойной деаллокации. Соответственно могут быть нужны конструкторы и операторы копирования и перемещения
5) Следует обратить внимание на правило пяти, есть табличка в каких случаях какие дефолтные конструкторы и операторы генерирются.
6) Лучше руководствоваться принципом что явно не разрешено то запрещено. Следовательно в коде лучше явно удалить дефолтные конструкторы и деструкторы если ты их не собираешься использовать.
Аноним 02/10/23 Пнд 06:09:59 2862883 269
>>2862878
7) Если ты не собираешься на дядю работать, то глядя на эту порнографию лучше писать пет своей мечты на расте наверное.
Аноним 02/10/23 Пнд 06:10:35 2862884 270
Аноним 02/10/23 Пнд 06:55:27 2862895 271
>>2862884
> graal vm
О, это то самое о чем говорили софтовики из мцст, универсальный вм с фирменным джитом для всего.
Они тоже делают https://m.youtube.com/watch?v=vw6pZd8wamw но бля почему на это деньги не вяделяют команду не собирают, почему вечно какие то студенты джавы портируют да дяди на энтузиазме за низкую зп.

Где обещаная поддержка айти. Нихуя не понимаю.
Аноним 02/10/23 Пнд 09:51:17 2862997 272
>>2862835
Бля пиздец чел, я то думал у тебя интересная задача с рисованием поверх оконной системы, а ты неиронично строчку в гугл написать не можешь
Аноним 02/10/23 Пнд 09:58:17 2862999 273
>>2862778
>А тебе вообще для чего? Целей своих ты так и не написал
Да никаких целей нет, говорю же, выгорел, заебала джаба, как вижу эти блятские аннотации с названиями классов на пол экрана аж блевать тянет. Просто хочу посидеть для себя покодить и открыть что-то новое

>>2862697
>>2862778
>На плюсах пишут всё, кроме веба.
>веб на плюсах действительно странно
Ну раз не пишут то окей, а что вы пишете тогда?
Аноним 02/10/23 Пнд 10:40:32 2863029 274
>>2862999
>Ну раз не пишут то окей, а что вы пишете тогда?
"Мы с Тамарою в нии программируем хуи"
Что душе угодно.
Аноним 02/10/23 Пнд 11:31:22 2863069 275
>>2862553
К сети не подключен.
Нашёл, что можно использовать hidclient. За ночь научился устанавливать линукс. Сейчас нашёл архив с этой программой, ищу, как компилировать
Аноним 02/10/23 Пнд 12:02:40 2863130 276
В программе для эмуляции Xbox геймпада для DualSense, DualShock 4 и т.д. баг появился, вроде раньше не было https://github.com/r57zone/DSAdvance/blob/master/Source/DSAdvance/DSAdvance.cpp

По какой-то причине переодически сбоит, отрубается USB (высокая частота опроса? слип 3 мс), также после сбоя или иногда использования не выключается винда (толи неверно эмуляция vigem запускается)

Может кто знает в чем может быть причина? Может есть какие идеи? (Сам уже хз куда копать, где найти баг)
Проект интересный, с кучей фишек, код не самый красивый, постепенно улучшается, на 1000 строк.
Аноним 02/10/23 Пнд 12:25:16 2863172 277
>>2863130
*толи неверно эмуляция vigem завершается, то ли хз
Аноним 02/10/23 Пнд 12:31:54 2863194 278
>>2863130
Ну раз появился откати до версии где его не было? Какое решение ты от нас ждешь? Вряд ли тут кто то страдает как и ты такой же хуйней. Можешь еще разработчику написать
Аноним 02/10/23 Пнд 12:35:35 2863203 279
>>2863194
> Ну раз появился откати до версии где его не было?
В старых нет нужных фишек
> Какое решение ты от нас ждешь?
Может кому интересно будет поискать
> Вряд ли тут кто то страдает как и ты такой же хуйней
геймеров среди разработчиков немало, может кому-то будет интересно
Аноним 02/10/23 Пнд 12:35:55 2863205 280
>>2863194
> Ну раз появился откати до версии где его не было?
В старых нет нужных фишек
> Какое решение ты от нас ждешь?
Может кому интересно будет поискать
> Вряд ли тут кто то страдает как и ты такой же хуйней
геймеров среди разработчиков немало, может кому-то будет интересно
Аноним 02/10/23 Пнд 13:26:48 2863296 281
d94-1755027537.png 279Кб, 710x842
710x842
>>2862843
Спасибо.

>>2862997
Интересные задачи у меня в другой области, но там чистая математика. А так хочу сделать минимальный оверлей для ресурсов системы.
Аноним 02/10/23 Пнд 14:51:53 2863398 282
>>2863296
Чел ну не позорься - бери мангохуд изучай.
Аноним 02/10/23 Пнд 15:50:23 2863492 283
>>2863130
Несколько часов работает, в простое, потом перестает работать и vigem виртуальный контроллер остается, но ни как не реагирует
Аноним 02/10/23 Пнд 16:15:14 2863533 284
>>2862459
Спросил. Сказали, задача была конкретная, никаких других вариантов.
Аноним 02/10/23 Пнд 16:37:56 2863555 285
>>2863398
Ууу... Как раз то что искал. Спасибо анон :)
Аноним 02/10/23 Пнд 17:57:55 2863675 286
>>2863492
Откатывай по чуть-чуть версии смотри в которой бага нет, дифай изменения и ищи что там и как перепиливалось и найдешь.
Аноним 02/10/23 Пнд 22:34:27 2864019 287
1569563184466.png 201Кб, 1205x856
1205x856
Почему так?
Аноним 02/10/23 Пнд 23:01:07 2864046 288
>>2862895
У меня в конторе студенты бинарный транслятор писали с x86 на эльбрус недавно за зп кассира в пятёрочке)
Аноним 02/10/23 Пнд 23:34:58 2864096 289
>>2864046
как меня это заебало
Н лет ебашил в нии и ушел в торгаши
Аноним 03/10/23 Втр 00:05:01 2864119 290
>>2864019
Каким нужно быть упоротым ебланом чтобы всю эту хуйню дрочить
Аноним 03/10/23 Втр 00:40:39 2864127 291
>>2864019
Потому что когда мы принимаем && нам как бы нахуй не нужно конструировать что то.
Аноним 03/10/23 Втр 00:59:14 2864135 292
>>2864127
И? Ей же на входе приходит rvalue
Аноним 03/10/23 Втр 01:46:12 2864150 293
>>2862657
1. Прошивки для вибраторов
2. Никаким, владельцам типичного бизнеса дешевле во всех смыслах нанять java/python/golang крудошлепов.
Аноним 03/10/23 Втр 01:48:53 2864151 294
>>2862657
3. У ресурса/памяти 1 владелец, владелец живёт, пока он нужен, когда он не -- самой за собой говно: деаллоцируй память/отпусти ресурс. Все остальное -- это причмокивания, а это база
Аноним 03/10/23 Втр 04:53:16 2864163 295
i(52).webp 42Кб, 479x320
479x320
>>2864046
(Ядро, сбер, т-платформы, роснано) эта компания ест слишком много бюджетных средств (МЦСТ).
Аноним 03/10/23 Втр 04:56:02 2864164 296
>>2864135
Что такое rvalue? Возвратное что ли?
Аноним 03/10/23 Втр 09:49:57 2864259 297
Аноним 03/10/23 Втр 10:07:04 2864271 298
>>2864259
Пиздец. Как будто чиновник сидел придумывал. Так и не въехал что к чему и почему.
Аноним 03/10/23 Втр 10:26:36 2864290 299
>>2864135
Как я понимаю:
Когда функция принимает &&, ей в целом похуй что ты ей дал. Рвал? Отлично. Лвал? Заебись, работаем.
Когда функция принимает & или значение, ей приходится создать объект из твоей рвал ссылки и она воспользуется мув конструктором.
Аноним 03/10/23 Втр 14:33:52 2864619 300
>>2864290
Какая-то жопа выходит.
Функция принимает аргумент&& и ей на входе приходит &&, и отчего-то move может не произойти. Бред.
Аноним 03/10/23 Втр 14:58:20 2864650 301
>>2864619
РефРеф - это универсальная ссылка. Значит прийти может что угодно, а не только РефРеф.
Аноним 03/10/23 Втр 15:37:28 2864735 302
>>2864046
Ну так зп кассира за качество продукта и получали видимо.
Аноним 03/10/23 Втр 15:44:45 2864748 303
>>2864735
Двачую, что там вообще могли написать студенты, причем даже не "вчерашние" студенты как написал чел, а буквально студенты и скорее всего 3 курса
Аноним 03/10/23 Втр 15:48:31 2864755 304
>>2864046
Унипро что-ли? Разве они jit x86->e2k писали?
Аноним 03/10/23 Втр 22:15:08 2865175 305
>>2864046
Эльбрус разве продается в открытом доступе ?
Аноним 03/10/23 Втр 22:17:32 2865177 306
Что такое xvalue, gvalue и prvalue ?
Аноним 03/10/23 Втр 23:52:37 2865241 307
>>2865177
Категории выражений.
Аноним 04/10/23 Срд 02:54:37 2865301 308
>>2865175
Продается юрлицам под подписку.
Аноним 04/10/23 Срд 15:18:46 2865750 309
>>2857953
Плюсы являются memory safe, так как иначе это UB, а делать UB в плюсах запрещено. На щеглов похуй.
Аноним 04/10/23 Срд 15:36:51 2865764 310
>>2862480
> extern "C" в плюсах это вроде только для совместимости с сишным кодом
Это чтобы использовать сишный ABI. Тогда имена функций будут не заманглены, и их можно будет по имени звать из DLL.
А через сишный ABI уже можно будет вызывать твои функции из других языков.
Аноним 04/10/23 Срд 17:32:55 2865953 311
>>2865177
Код на С++ это набор объявлений. Некоторые из объявлений могут быть одновременно определениями. Внутри определений могут быть другие объявления, а также выражения. Выражения могут быть только внутри определений. Примеры выражений:
x = a + b;
++x;
x;
Не следует путать int x; и просто x;. Первое - объявление и определение, второе - выражение. У выражения есть тип и есть категория. glvalue (не gvalue как ты написал неправильно) это одна из разновидностей категорий выражения, указывающая на то, что выражение обладает идентичностью и постоянным местом в памяти. rvalue это наоборот что-то временное, сущность у которой можно забрать право владением ресурсом. lvalue - подвид glvalue, у которого можно взять адрес в памяти и еще некоторые другие вещи можно с ними делать. prvalue - это подвид r-value, которые не могут быть полиморфными и обладают еще некоторыми ограничениями. xvalue - это подвид одновременно и gvalue и rvalue, своеобразный гибрид, который имеет идентичность, но в то же время, у которого можно украсть ресурс.
Примеры:
10; prvalue
x; lvalue
x + 10; prvalue
x = y; y неявно преобразуется в prvalue, все выражение целиком имеет категорию lvalue
"mudak"; lvalue
std::move(x); xvalue
f(x); prvalue если возврат по значению
g(x); lvalue если возврат по ссылке
r(x); xvalue если возврат по правой ссылке &&
Правыми называют национал-социалистические ссылки
Аноним 04/10/23 Срд 18:10:31 2866010 312
>>2865953
Случай со строковыми литералами может подорвать неподкованных, тут лучше пояснить.
Аноним 04/10/23 Срд 18:21:49 2866038 313
>>2865953
Это абстрактная демогогия.
Зачем они и для чего их ввели вот в чем вопрос.
Что они дают компилятору (если это очередной слой абстракции для реализации статического ооп ) или программисту (помимо запутывания).
Аноним 04/10/23 Срд 18:36:14 2866062 314
>>2866038
Ввели все это, чтобы поддержать семантику перемещения, чтобы увеличить производительность программ и удобство написания кода. С++11, где все это появилось, далек от от классического С++ гораздо больше, чем классический С++ далек от С, можно сказать, что это новый диалект языка, возвышающий его над всякими жабами и шарпами.
Аноним 04/10/23 Срд 19:20:10 2866108 315
>>2866062
> чтобы поддержать семантику перемещения, чтобы увеличить производительность программ и удобство написания кода
Так нет никакой семантики же, std:move() можно юзать как угодно пихать куда угодно, при этом реально никуда никто не перемещается потому что на самом деле просто свайпается указатель/аллокатор данных внутри классов (типа как в си всем известный макрос). Либо ничего не свайпается потому что программист не понял сути и тыкает функцию после копирования или перед копированием.
r, g, x, pr value вообще ничего не дают ни языку ни программиста ни компилятору, они есть только в голове тех пто их придумал.
Аноним 04/10/23 Срд 19:26:40 2866120 316
>>2866108
Если просто написать std::move(x); действительно ничего не переместится никуда, x скастуется к правой ссылке на x.
Если написать y = std::move(x);, то вызовется перемещающий конструктор, и владение ресурсом (если он есть) переместится от x к y.
Аноним 04/10/23 Срд 19:38:50 2866134 317
>>2866108
Глвал пюррвал и Хвал не выдумали, они появились при попытке осознать что можно,а что нельзя мувать.
В повседневном использовании тебе вообще поебать на них, это верно. Это инструмент дизайнеров языка.
Аноним 04/10/23 Срд 19:58:38 2866150 318
Гуляя по лесу, нашёл во мху презентацию НЕУДОБНЫХ для C++ замечаний.
http://www.fefe.de/c++/
Аноним 04/10/23 Срд 20:23:47 2866201 319
>>2866150
Ну так и тащи их сюда. Нахуй мне по твоим ссылкам ходить
Аноним 04/10/23 Срд 20:33:11 2866223 320
Аноним 04/10/23 Срд 20:43:53 2866237 321
>>2866223
Ссылка на ссылку, блять.
Аноним 04/10/23 Срд 22:28:12 2866364 322
>>2866223
Слишком много написано, в основном боль неосиляторов, которой никого не удивить.
Аноним 04/10/23 Срд 23:26:56 2866438 323
>>2866038
>Зачем они и для чего их ввели вот в чем вопрос.
Для строгости и компактности формулировки правил.

>>2866108
>они есть только в голове тех пто их придумал
В некотором смысле да. В релизном конфиге ни у чего в твоем коде не будет такого атрибута, как value category.
Аноним 05/10/23 Чтв 03:03:33 2866649 324
Я у себя в шараге работы делаю по C++, и меня как-то Visual Studio заебал так как это чистой воды блоатваре. Решил поставить TDM-GCC но в нём не работает setlocale(LC_ALL, "Rus"). Как-то можно поправить?
05/10/23 Чтв 05:58:43 2866668 325
>>2866649
>меня заебало когда всё работает, хочется попердолиться
Вот и пердолься, тупая свинина.
Аноним 05/10/23 Чтв 06:40:19 2866677 326
>>2866649
Сменить командную строку на MSYS2.
Аноним 05/10/23 Чтв 06:49:07 2866679 327
>>2866649
> GCC но в нём не работает setlocale(LC_ALL, "Rus"). Как-то можно поправить?
В GNU libc такой локали нет, вынь пробку майкрософт из попы и поищи стандарт (скорее всего что-то вроде en-US ru-RU.UTF-8 ja-JP.JIS)
Аноним 05/10/23 Чтв 10:06:30 2866770 328
>>2866679
>ru-RU.UTF-8
Какие же пердоли тупые, господи.
Аноним 05/10/23 Чтв 16:30:32 2867348 329
изображение.png 37Кб, 857x391
857x391
>>2860876
Во-первых, используй std::boolalpha вместо пиздеца, который ты написал.
Во-вторых, false выдает из-за несоответствия типов. Оператор += возвращает ссылку на double.
Аноним 05/10/23 Чтв 16:38:28 2867356 330
1696513109337.png 9Кб, 64x64
64x64
>>2867348
Вы что с плюсами сделали
Это что
Аноним 05/10/23 Чтв 16:42:59 2867361 331
>>2867356
Плюсы нужны, чтобы докопаться до истины Вселенной, для всего остального есть питон и жабаскрипт.
Аноним 05/10/23 Чтв 16:52:23 2867378 332
>>2867361
Почему в плюсах столько минусов?
Аноним 05/10/23 Чтв 16:53:23 2867380 333
>>2867378
Чтобы выжать максимум производительности из железа.
Аноним 05/10/23 Чтв 17:10:23 2867403 334
>>2867348
Парашная блевотина. Кто неиронично так пишет тот идиот
Аноним 05/10/23 Чтв 17:52:25 2867448 335
Untitled.png 35Кб, 1042x699
1042x699
>>2867403
Никто "так" не пишет. Это был разбор как работают концепты в плюсах. Полный код с концептом Averageble
05/10/23 Чтв 19:17:05 2867541 336
Аноним 05/10/23 Чтв 19:40:03 2867567 337
Аноним 05/10/23 Чтв 21:23:45 2867692 338
>>2867541
>>2867403
Да нормально же. Чем дальше от Си, тем лучше.
В стиле Си нужно на Си писать.
Аноним 05/10/23 Чтв 21:33:44 2867710 339
>>2867692
При чем тут СИ вообще, наркоман
Аноним 05/10/23 Чтв 21:56:14 2867735 340
>>2867710
При том, что нужно писать на новых плюсах, а не на си с классами.
Аноним 05/10/23 Чтв 21:59:08 2867738 341
Дайте названия годных книг по программированию или какие-нибудь лекции по с++ интересные.

p.s. - магистерские лекции по с++ не зашли, много воды.
Аноним 05/10/23 Чтв 22:10:34 2867752 342
>>2867735
Ты что несешь понимаешь? То у него стиль СИ, то теперь СИ с классами, вращаешь своей жопой прямо в полете.

Где это начинается и заканчивается? Писать надо понятный и хороший код, хороший в категории плюсов производительный и безопасный. А если ты хочешь дрочить, заниматься хуйней, а не программировать то иди хаскель какой-нибудь тыкай, а не энтерпрайз язык
Аноним 05/10/23 Чтв 22:19:59 2867761 343
>>2867752
А че там непонятного. У тебя есть шаблоны. Шаблоны в плюсах слишком общие. В них сначала типы подставляются, а потом они компилятся, те работают как препроцессор фактически. Из-за этого:
1. ошибки в шаблонах наркомансие непонятные
2. типизация хромает по сравнению дженериками в том же шарпе, где ты на тип накладываешь ограничения. Ведь если ты внутри дженерика итерируешь, ты должен как-то в шаблоне заявить что тип ирерируемый.Концепты решают ту же проблему что where T: Inteface в шарпе
Аноним 05/10/23 Чтв 22:35:50 2867772 344
>>2867752
>Ты что несешь понимаешь? То у него стиль СИ, то теперь СИ с классами, вращаешь своей жопой прямо в полете.
Не нужно прикидываться дурачком, ты понимаешь о чем я.
Аноним 06/10/23 Птн 00:03:10 2867796 345
>>2867735
>При том, что нужно писать на новых плюсах, а не на си с классами.
Стиль Qt мне кажется гораздо более читаемым и удобным, чем то, что комитетчики толкают в новых плюсах.
Аноним 06/10/23 Птн 05:08:17 2867865 346
>>2867735
Писать надо код, а не инструкции для генератора кода. Если ты не программист, а макака обслуживающая генератор, пиши сразу на питоне, ведь это и есть твоя мечта.
Аноним 06/10/23 Птн 05:42:57 2867868 347
>>2867738
> магистерские лекции по с++ не зашли, много воды.
Я даже не могу представить где воды меньше
Аноним 06/10/23 Птн 11:19:58 2868043 348
ананасы помогите пожалуйста если кому не лень, есть одна программа удаляющая дубликаты https://github.com/pauldreik/rdfind она при удалении дубликата оставляет самый первый файл и удаляет остальные (из пары файлов 1.txt и 2.txt будет удалён второй, из пары файлов a.txt и z.txt будет удалён второй). как поменять её поведение на обратное? я обычный гречневый кузьмич и ни разу не писал на крестах, поэтому открыв код я вообще ничего не понял. это можно сделать поменяв какую-нибудь одну строчку в коде и перекомпилировав программу?
Аноним 06/10/23 Птн 11:42:38 2868053 349
>>2868043
Почему не rsync? Там вроде можно настроить поведение.
Аноним 06/10/23 Птн 12:56:02 2868135 350
>>2867868
Он постоянно показывает примеры с кодом, говорит про функции, а мне хочется кишечек, не воды.
Аноним 06/10/23 Птн 13:17:44 2868172 351
>>2868135
Если тебе не нужны примеры и объяснения, то просто иди на цпп референс/стандарт и зачитывайся
Аноним 07/10/23 Суб 04:02:16 2869201 352
Аноны, нормально будет прочитать кирпич Праты, а потом шлефануть новыми стандартами для вката?
Аноним 07/10/23 Суб 11:40:14 2869316 353
>>2869201
На завод да.
Туда можно в целом и без знаний.
Знаю что в ЦАГИ есть внутренний курс по плюсам, походу настолько все плохо.
Аноним 07/10/23 Суб 12:00:38 2869328 354
>>2867865
Предлагаешь ебашить на ассемблере? Ведь любой высокоуровневый ЯП это просто набор инструкций для генератора кода.
Аноним 07/10/23 Суб 14:22:02 2869413 355
>>2869201
Какого вката, конкретнее мысль. Озвучить в общем вводные и свои цели
Аноним 07/10/23 Суб 15:41:58 2869521 356
>>2847323 (OP)
всем привет я новенький как тут дела у вас
Аноним 07/10/23 Суб 15:44:52 2869528 357
Аноним 07/10/23 Суб 15:48:31 2869537 358
а я не могу свой коммент удалить?
Аноним 07/10/23 Суб 15:57:49 2869547 359
16909952822890.webp 55Кб, 824x745
824x745
Аноним 07/10/23 Суб 16:20:17 2869554 360
>>2869547
А при чем тут платежная система
Аноним 07/10/23 Суб 16:29:40 2869559 361
>>2847323 (OP)
Подскажите, пожалуйста, что можно почитать, чтобы вникнуть в программирование микроконтроллеров stm32.
Аноним 07/10/23 Суб 19:56:32 2869781 362
>>2869547
Нет, я ещё не всё ноги отстрелил.
Но учитывая то, что когнитивная нагрузка во время использования плюсов растет экспоненциально, я скоро не смогу писать на современных стандартах.
Аноним 07/10/23 Суб 20:56:23 2869843 363
Пацаны.
В общем. Есть ли какой-то пакетный менеджер для C++?
Чтобы типа прописал в файлике зависимости. Сделал cpppm install - и все само на нужной машине докачалось в какую-то папочку packets?
Ну не может не быть. Не поверю, что в 2023 году - надо все еще возиться с MAKE'ом и руками качать все библиотеки нужные, разбираться че там с чем взаимодействует и прочие вещи делать.
Аноним 07/10/23 Суб 21:11:49 2869856 364
Аноним 07/10/23 Суб 21:13:18 2869857 365
>>2869843
Conan и vcpkg
> Чтобы типа прописал в файлике зависимости. Сделал cpppm install
К сожалению, ебаться ещё придется


Если пользуешься симейком то самый простой способ - качаешь себе локально пакет - в симейке прописываешь add_subdirectory(...) - добавляешь нужные таргеты куда тебе нужно
Делов на минуту

> Ну не может не быть. Не поверю, что в 2023 году - надо все еще возиться с MAKE'ом и руками качать все библиотеки нужные, разбираться че там с чем взаимодействует и прочие вещи делать.
Ну так по заветам дедов, пэкедж менеджеры это утерянные технологии

хотя мейком сейчас наверное совсем дедушки пользуются, есть симейк, сезон, премейк и так далее
Аноним 07/10/23 Суб 21:55:01 2869929 366
Аноним 07/10/23 Суб 22:00:42 2869947 367
Аноним 07/10/23 Суб 23:48:40 2869995 368
Купил ReSarper, поставил на студию 2022.
А че дальше-то делать?

Дайте гайд какой-нибудь.
Аноним 08/10/23 Вск 00:07:17 2870019 369
Аноним 08/10/23 Вск 00:23:15 2870037 370
>>2869781
Тогда тебе волноваться не о чем. Новые сьандарьы говно и нахуй не нужны в большинстве своем.
Аноним 08/10/23 Вск 04:21:17 2870116 371
новые это после 11 или 98 ?
Аноним 08/10/23 Вск 04:36:51 2870117 372
Аноним 08/10/23 Вск 04:37:14 2870118 373
По сути в новых стандартах из-за ranges пиздос как все меняется. Вся stl новая.
Аноним 08/10/23 Вск 07:48:03 2870132 374
>>2870118
Старый код продолжает работать. Можно начать помоленьку писать на новых рэнджах. Совместимость 100%.
Аноним 08/10/23 Вск 09:59:44 2870176 375
>>2870118
> пиздос как все меняется
Что все?
Аноним 08/10/23 Вск 10:17:32 2870188 376
Аноним 08/10/23 Вск 11:26:42 2870240 377
>>2870118
Так ренжи достаточно простая концепция, как и отображения. Если не особо задумываться как оно там работает. Концепты мой мозг сильнее насилуют. Но я так понял, что везде есть пара сильных челов, что пишут шаблонный код, а остальные смотрят на них как на аутистов и используют эти поделки.
Аноним 08/10/23 Вск 11:34:23 2870248 378
>>2870240
> Концепты мой мозг сильнее насилуют
Чел... Концепты самая простая вещь в плюсах Типы для типов
Аноним 08/10/23 Вск 11:36:25 2870252 379
>>2870248
Ага, а темплейты это просто подстановка типов, что сложного
Аноним 08/10/23 Вск 12:06:02 2870264 380
>>2870248
Для понимания простая, а использовать их ебля неимоверная. Именно свои создавать, а не уже существующие. Ну или я не осилил, хотя мне и не особо надо было.
Аноним 08/10/23 Вск 13:10:07 2870338 381
.png 25Кб, 443x835
443x835
Плюсаны, а это реально у вас так принято код писать, или это алиса с ума сошла?
Просто бредовый же какой-то ситль. Вот я в старом C++ коде видел более приятный с f_fieldName. Ну или _fieldName. Или вообще идеальный: fieldName. А тут какое-то непонятное _ в конце.
Аноним 08/10/23 Вск 13:14:16 2870345 382
Аноним 08/10/23 Вск 13:32:32 2870356 383
>>2870338
Алиса код с яндекса слизала, а яндекс, как известно, говно.
Аноним 08/10/23 Вск 13:47:35 2870362 384
>>2870338
>Вот я в старом C++ коде видел более приятный с f_fieldName. Ну или _fieldName
> А тут какое-то непонятное _ в конце.
Сорта говна, в последнее время чаще стали писать m_var
Аноним 08/10/23 Вск 13:58:01 2870374 385
>>2870362
В последнее время? Так писали динозавры когда из иде был только вим.

>>2870338
Лично мне не нравится что такой стиль системщину напоминает. Вот там реально пиздец с их акронимами в три буквы, бесконечными подчеркиваниями и тп.
А вообще спалить дауна по код стайлу изи, он не переносит скобку на новую строку
Аноним 08/10/23 Вск 14:11:16 2870405 386
>>2870338
>это реально у вас так принято код писать, или это алиса с ума сошла?
Определять методы в теле класса - порочная практика. Годится только для кратких иллюстраций.
Вот в частности уже на твоем пикриле приходится домыслы строить из-за того, что суть засрали определениями.

>вообще идеальный: fieldName
Ога, идеальный.
Тебе придется:
а) ебать мозг на выдумывание синонимичных имен для параметров конструктора;
б) потом ебать себе мозг, сопоставляя имена параметров с синонимами;
в) нельзя иметь метод с именем fieldName.

>какое-то непонятное _ в конце
Чисто служебная информация, самое ей и место в конце. Начало слова для человека всегда бол инф нес, ем нец ова. Поэтому чтение кода с префиксами требует больше внимания.
Один малюсенький символ в самом неприметном месте. Что можно лучше вообще придумать?
Аноним 08/10/23 Вск 14:54:23 2870498 387
>>2870405
> ебать мозг на выдумывание синонимичных имен для параметров конструктора
this->fieldName = fieldName
Чи в плюсах так нельзя? Вроде помню что можно было. В вузе-то так и писал.

> потом ебать себе мозг, сопоставляя имена параметров с синонимами
Допустим this-> действительно нельзя. Так а в чем проблема, я проинициализировал в конструкторе, дальше - просто использую, че там сопоставщять-то?

> нельзя иметь метод с именем fieldName
Это уже вообще странный доеб.
Во-первых, потому что раз это метод, он должен состоять из двух слов в любом случае. Глагол+Сущестительное. Это обычная практика. Что делаем и с чем. getAge, setAge. Исключение - ассесторы для булевых значений, там обычно is как префикс. isRunning, isConnected
Во-вторых, если это реально валидный доеб. Ну, тогда к языку вопросы, ведь и метод f_field, field_, _field - тоже нельзя будет. Беда-то какая. Надо срочно новый язык, чтобы было как-то так: this->methods->field или как-то так, чтобы можно было мешать имена полей и методов.


> Чисто служебная информация, самое ей и место в конце
А мне вот удобнее было бы, чтобы я написал f_ и все поля класса в выпадающем списке увидеть, потом найти то что надо мне.
Аноним 08/10/23 Вск 15:34:12 2870608 388
>>2870498
>раз это метод, он должен состоять из двух слов в любом случае.
T age_; // поле
T age() const; // гет (подчеркивания в конце нету)
void age(T newSize); // сет (подчеркивания в конце нету)

>Это обычная практика. Что делаем и с чем
Из контекста итак очевидно, где гет, где сет. Как по мне, писать их явно - лишнее, как и добавлять сюда название класса
vector.size(); // пизже, чем
vector.getVectorSize(); // зачем тут эта бредовая обстоятельность?

>Во-вторых, если это реально валидный доеб.
В части явного написания префиксов гет/сет - вкусовщина.

> ебать мозг на выдумывание синонимичных имен для параметров конструктора
>this->fieldName = fieldName
Многословно.

>А мне вот удобнее было бы, чтобы я написал f_ и все поля класса в выпадающем списке увидеть, потом найти то что надо мне.
А мне вот удобно не потом, а сразу найти, чо надо, а не устраивать всякий раз инвентаризацию всех полей.
Аноним 08/10/23 Вск 16:07:36 2870686 389
>>2870498
>в чем проблема
В том, что одно и то же имеет разные имена.

class Item {
Item (int price) : cost = price;

void setValue(int price) {cost = price;};
int getValue() const {return cost;};

int cost;
};
Аноним 08/10/23 Вск 16:19:22 2870712 390
>>2870498
>чтобы я написал f_ и все поля класса в выпадающем списке увидеть
По-хорошему, все поля запривачены.
Не так уж и часто тебе вообще доведется добираться до полей через список.
Аноним 08/10/23 Вск 16:25:19 2870726 391
>>2870498
>в плюсах так нельзя?
можно но есть шанс что отвалится жепа - стандартный ответ на любой вопрос в крестах
конкретно с this-> может сдохнуть мать если написать/не написать это в конструкторе при особом стечении трехэтажного виртуального наследования и еще какой-то залупы щас не помню
Аноним 08/10/23 Вск 17:56:02 2870829 392
Как вы справляетесь с задачами который требуют мозг включить? Вот вас по сути наняли решить какую-то проблему и оставили один на один, но вы даже не знаете как к ней подступиться, не то что эффективно решить. Что делаете в таких ситуациях?

Бля наверное я тупой и мне не нужно было даже суваться в эти плюсы ебаные? У меня тряска пиздец каждый день что я лоу айкью дебил
Аноним 08/10/23 Вск 18:35:27 2870869 393
>>2870829
Никак. Копипащу куски из ближайших частей проекта, колупаю методом тыка пока не заработает. За два года еще не спалился, но и прогресса тоже нет.
Аноним 08/10/23 Вск 20:13:04 2871032 394
>>2870829
>Вот вас по сути наняли решить какую-то проблему и оставили один на один
Все проблемы уже кто-то когда-то решал тем или иным способом. Сиди читай, выискивай, гугли, спрашивай совета в инете.
Аноним 08/10/23 Вск 20:17:42 2871036 395
>>2870338
Подчеркивание спереди нельзя по стандарту (не везде и с первой заглавной буквой ЕМНИП), поэтому обычно используют подчеркивание в конце.
Аноним 08/10/23 Вск 20:26:15 2871041 396
Я чет гуглил но нихуя не понял. Можно ли в c++ создать поток stream и записывать в него данные, а в другом методе читать из него же данные?
Аноним 08/10/23 Вск 20:36:53 2871051 397
Аноним 08/10/23 Вск 20:42:43 2871061 398
>>2871041
Если это не в разных потоках, то зачем вообще стрим, а если в разных, то очереди.
Аноним 08/10/23 Вск 23:18:18 2871203 399
>>2871036
Стандартом, кажись, только двойное подчеркивание зарезервировано.
Аноним 08/10/23 Вск 23:41:12 2871211 400
Как хранить в мапе два значения под ключем ?
Аноним 08/10/23 Вск 23:45:35 2871216 401
>>2871211
стд пара
А еще лучше, запили псевдоним типа для пары и пользуй структуред биндингс.
Аноним 08/10/23 Вск 23:50:38 2871220 402
>>2871211
Или у тебя ключ из двух значений?
Тогда тоже самое плюс кастомный оператор сравнения.
Аноним 09/10/23 Пнд 00:21:03 2871245 403
Аноним 09/10/23 Пнд 01:08:38 2871261 404
>>2871211
Хуярь структуру не думая
Аноним 09/10/23 Пнд 08:05:10 2871309 405
>>2870338
Всё так и надо. Хороший код. А всё, что ты видел раньше - говно.
Аноним 09/10/23 Пнд 08:11:35 2871315 406
image.png 94Кб, 789x892
789x892
>>2870338
Вот блин, я у Алисы тоже самое спросил, и получил уже другой ответ. Теперь _ в начале переменных.
Аноним 09/10/23 Пнд 08:52:08 2871334 407
>>2871315
Нах ваши коды настоящему AGI нужны? Он будет сразу в машинный код хуярить прошивку для T-800.
Аноним 09/10/23 Пнд 17:12:01 2871928 408
>>2851045
>и жрут говно под названием ООП
А ты думал натянутая на глобус сова, где данные объединены с методами их обработки, и с паттернами с названиями вроде "мост", "фасад", "фабрика" - будет работающей?
История развивается стихийно, сделали какую-то всратую хуйню чтобы хоть как-то разделять большой код на модули - продали менеджменту, оно и прижилось.
В идеале ты должен владеть всем - и ООП, и ФП, и процедурным стилем, и применять каждый там, гле это требуется. Это я сейчас не про С++ конкретно, это я вообще.
Аноним 09/10/23 Пнд 18:58:22 2872113 409
>>2871928
Так и скажи, что не осилил.
> "мост", "фасад", "фабрика"
Не пользуйся, пиши if-else лесенки, ебись с поддежкой кода.
Аноним 09/10/23 Пнд 19:02:41 2872125 410
>>2872113
>Так и скажи, что не осилил.
АРгумент уровня фаната ООП.
Что там можно не осилить, несколько базовых абстракций?
Аноним 09/10/23 Пнд 19:05:10 2872130 411
>>2872125
Ты так и не понял зачем все это, раз говоришь, что ООП - натянутая на глобус сова.
Аноним 09/10/23 Пнд 19:12:53 2872141 412
>>2872130
Ну это твоё утверждение, ни на чём не основанное.
А по сути ФП хотя бы основано на теории категорий, что есть маетиматика. А ООП на чём? На бытовой реальности, судя по терминологии?
Но ведь даже с ней оно не перескается. Ведь стул не содержит в себе конструктор для новых стульев, ни даже сеттера для цвета и веса. А сидеть можно не только на стуле, но и на перилах, анпимер, хотя в них не описали интерфейс Sittable при проектировке. А, например, метод "гулять и веселиться всей компанией" не привязан явно ни к какому конкретному объекту, по крайней мере в мышлении психически здоровых людей, чей разум не осквернен ООП.
Ну и так далее. В общем, пиши интуитивно понятный AbstractSIngletonFactoryProxyAdapterBean ИТТ, иначе обосрёшься.
Аноним 09/10/23 Пнд 20:30:46 2872244 413
>>2872130
Чел а ты кажется вообще не здесь и не понимаешь ни примерно где находишься, ни что тебе люди пишут. Дурачок одним словом
Аноним 09/10/23 Пнд 23:17:54 2872473 414
Есть класс.

Есть его методы, которым надо только паблик данные (и методы) для своей работы.

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

То есть я хочу чтобы моя функция, которая принимает первым аргументом объект этого класса и что-то там считает не меняя объект, стала частью этого класса. Но при рефакторинге класса, мне бы не пришлось в неё смотреть, потому что я ТОЧНО ЗНАЮ что она только с паблик работает.

Хочу сделать её методом, для удобной подсветки в IDE, но чтобы не пришлось внезапно случайно её написать заново в третий раз, когда забыл что такая функция существует. Чтобы проще было вкатиться читающему код... и т.п.
Аноним 09/10/23 Пнд 23:26:10 2872487 415
6.jpg 59Кб, 360x732
360x732
Аноним 09/10/23 Пнд 23:32:11 2872491 416
8b0c6659c87ea99[...].jpg 86Кб, 500x383
500x383
>>2847323 (OP)
чё у вас за vector_name.d блять? лень сука полностью написать? direction??? distance???

мимо c#-господин
Аноним 09/10/23 Пнд 23:52:29 2872532 417
>>2872491
Да, лень. А что? Сколько раз нажимаешь таб при написании одной строчки кода? Он у тебя не стёрся ещё?
Аноним 09/10/23 Пнд 23:57:45 2872542 418
АФЫВАЫФАФ.png 3Кб, 461x160
461x160
>>2872532
Один таб на каждый цикл. Лучше чем стрелочки со звёздочками писать.
Аноним 10/10/23 Втр 00:33:15 2872571 419
Шизы, выйдите из треда, заебали.
Аноним 10/10/23 Втр 00:42:06 2872575 420
https://godbolt.org/z/jseEabEav
Напердолил примитивный недо-брокер сообщений, дайте кодревью что ли.
Аноним 10/10/23 Втр 01:01:22 2872589 421
>>2872575
Добавь возможность останавливать воркеров.
Аноним 10/10/23 Втр 01:19:15 2872599 422
>>2872571
Нет, нам и здесь хорошо.
Аноним 10/10/23 Втр 01:49:52 2872615 423
>>2872575
Так у тебя почерки с переди. Переделывай.
Аноним 10/10/23 Втр 04:22:09 2872655 424
>>2872575
> нюфаг начинает программирование с симулятора манагера погонщика рабов
Сразу видно прирожденное быдло, все в говноманагеры метят с самого начала.
Аноним 10/10/23 Втр 07:18:42 2872678 425
>>2872615
Чего? Какие почерки?
>>2872655
Сразу видно прирождëнного либерала
Аноним 10/10/23 Втр 08:34:51 2872697 426
>>2872575
Что такое брокер сообщений и нахуй он нужен?
Аноним 10/10/23 Втр 12:00:35 2872864 427
>>2872575
А зачем потоки детачить? И мьютексы в плюсах так никто не локает
Аноним 10/10/23 Втр 12:38:51 2872913 428
>>2872864
>А зачем потоки детачить?
Там же потом главный поток срёт в пул данными для тестирования.
>И мьютексы в плюсах так никто не локает
lock_guard? Забыл про них, давно не писал на крестах.
Аноним 10/10/23 Втр 13:02:24 2872959 429
>>2872913
Ну срет и что? А детачить зачем?
Аноним 10/10/23 Втр 13:04:44 2872961 430
>>2872959
Если заджойнить то главный тред заблочится и будет ждать пока треды отработают, а там в них вечный цикл.
Аноним 10/10/23 Втр 13:07:37 2872964 431
Аноним 10/10/23 Втр 13:09:18 2872968 432
>>2872964
Так я и не джойню, я детачу.
Аноним 10/10/23 Втр 15:21:06 2873225 433
>>2872968
Суть в том что открепленный поток может продолжить исполнение после завершения твоего мейна.
Аноним 10/10/23 Втр 15:43:59 2873265 434
>>2873225
А как правильно тогда? Вроде у Мейерса читал что всегда надо так: заспавнил тред - заджойнил/задетачил.
Аноним 10/10/23 Втр 16:53:49 2873361 435
>>2873265
Анон, я тебе скажу как, и вообще это общее решени для большинтся вопросов итт.
Берешь качаешь сурсы чего-то крупного из прода, и смотришь как твоя фича-нейм реализована там.
Берешь нгинкс и смотришь как у них там пул потоков реализован, ну или тбб какой нибудь.
Аноним 10/10/23 Втр 16:55:38 2873366 436
> ооо, щас посмотрю как там в бусте это реализовано
> в исходниках происходит полный мрак, ассемблер более читаемее
Аноним 10/10/23 Втр 16:57:00 2873368 437
>>2873366
Удвою.
Читать сурсы хоть чего то серьезного boost, stl невыносимая боль. Кроме кутяшечки.
Аноним 10/10/23 Втр 17:15:28 2873407 438
Аноним 10/10/23 Втр 17:17:24 2873413 439
>>2873366
дибил раз
>>2873368
дибил два

Оба дибила спизданули чушь быстрее чем попытались подумать.
Аноним 10/10/23 Втр 17:23:52 2873427 440
>>2873413
Третий дебил (я)
Мне тоже тяжело ориентироваться в исходниках крупных проектов, и зачастую я либо подключаю cheat engine для трассировки, или вообще запихиваю бинарь в иду, в обоих случаях получая в разы менее громоздкий код. Абстракции и динамические типы -- для пидоров.
Аноним 10/10/23 Втр 17:29:38 2873438 441
>>2873427
Чел ты ..., блять вы даже пост в три строчки прочитать не в состоятии - куда вам на плюсах писать?
Привел пример простых целевых либ - нгинкс и интел тбб посмотреть тредпулы - что там сложного?
Нет дебичи про стандартные темплейт либы, которые внезапно не иллюстрирую реального решения вышеупомянутой задачи.
Аноним 10/10/23 Втр 17:29:56 2873439 442
>>2873427
Единственный умный (я) в море дебилов
Пишу на шарпе, расте и питон-мл и не имею никаких вышеописаных проблем.
Аноним 10/10/23 Втр 17:32:30 2873446 443
>>2873439
Уже написал что-то кроме helloworld ?
Аноним 10/10/23 Втр 17:37:40 2873459 444
>>2873438
>>2873413

долбоеб, на твой пост даже никто не отвечал, шизло
Аноним 10/10/23 Втр 17:47:16 2873479 445
>>2873459
Так не отвели что у троих бичей жопа треснула и на выш визг шарпист прибежал?)
Аноним 10/10/23 Втр 17:49:57 2873487 446
>>2873438
СиЕшка также отображает треды и позволяет между ними переключаться. Как правило, меня интересует результат выполнения конкретной ветки кода, и я смотрю её в иде. Если там насрали динамическими вызовами, то приходится трейсить. Зачем мне ещё одна программа для этого?
Аноним 10/10/23 Втр 17:55:14 2873499 447
Ебануться сколько тут долбоёбов.
Аноним 10/10/23 Втр 19:42:14 2873666 448
не знаю чем так плюсы шизов притягивают

>>2873499
скоро привыкнешь
Аноним 11/10/23 Срд 12:42:53 2874439 449
Сап, программисты!
Где-то 4 года назад я заходил к вам в тред и добрый анончик помог мне, хочу попросить вас о помощи снова.
Нужно сбилдить Aseprite из сорсов https://github.com/aseprite/aseprite/releases
Если кому не впадлу, помогите, пожалуйста, с меня как всегда.
Аноним 11/10/23 Срд 12:56:20 2874456 450
Аноним 11/10/23 Срд 13:20:44 2874476 451
>>2874456
Есть, но мне нужно устаналивать много чего, а у плюсовиков по-любому у кого-то уже установлено это всё. В этом и суть просьбы, как бы.
Аноним 11/10/23 Срд 13:22:47 2874478 452
изображение.png 50Кб, 925x617
925x617
Задача.
Дан CRTP-интерфейс, стандарт с++20. Как сделать так, чтобы при попытке передачи в функцию f структур наподобие Fake, где нет своего нужного метода (например sound()), выдавалась ошибка компиляции.

Пробовал создать концепт requires (T x){x.sound();} и даже requires (T x){x.T::sound();} - метод sound() считается принадлежащим типу T, даже если он просто унаследован.
Аноним 11/10/23 Срд 13:27:07 2874481 453
>>2874476
Вот и устанавливай. В чём проблема?
Аноним 11/10/23 Срд 13:37:49 2874500 454
>>2874481
Ни в чём, иди нахуй.
Аноним 11/10/23 Срд 13:43:30 2874512 455
>>2874439
С чем помочь то? В чем проблема?
Аноним 11/10/23 Срд 13:45:07 2874515 456
>>2874512
Собрать билд из сорсов для винды.
Аноним 11/10/23 Срд 13:47:11 2874518 457
>>2874500
Сам иди нахуй, никто за тебя собирать всякую малварь не будет
Аноним 11/10/23 Срд 13:48:37 2874520 458
>>2874518
> всякую малварь
Молчал бы, за умного сошёл бы.
Аноним 11/10/23 Срд 13:59:26 2874533 459
>>2874478
так-то в цртп имена интерфейсных методов и их реализации обычно делают разными в том числе чтобы не ебаться с этим
Аноним 11/10/23 Срд 15:00:34 2874626 460
Аноним 11/10/23 Срд 15:32:26 2874720 461
>>2874626
Ему лень самому, и он хочет, чтобы ты собрал за него.
Аноним 11/10/23 Срд 15:34:32 2874726 462
>>2874720
Щас домой приеду и скину ему малварь

он реально собирался бинарь от рандом анонс запускать?..
Аноним 11/10/23 Срд 19:24:27 2875183 463
Аноним 11/10/23 Срд 19:26:47 2875190 464
>>2874726
Так там даже вроде есть билд, или первый .zip это не оно?
Аноним 11/10/23 Срд 19:35:58 2875215 465
>>2874478
А если метод вызывать через T::sound()?
Аноним 11/10/23 Срд 20:10:53 2875271 466
Когда в вакансии пишут опыт разработки под Linux, что имеется ввиду? Я какие-то системные функции должен знать?
Аноним 11/10/23 Срд 20:22:25 2875299 467
>>2875271
Может, умение запустить apt-get в баше. А может, написание драйверов и модулей ядра. Зависит от вакансии.
Аноним 11/10/23 Срд 22:18:58 2875440 468
>>2874478
У меня получилось только упасть при компиляции при попытке вызвать f(fake);
Аноним 11/10/23 Срд 22:37:54 2875458 469
>>2847323 (OP)
Что за книга была в шапке самая первая? По ссылке в вк файл удален
Аноним 11/10/23 Срд 22:52:57 2875502 470
Аноним 11/10/23 Срд 23:36:25 2875554 471
>>2870338
Я с тобой согласен, что без _. Но лучше - field_name. Всё равно, если код не знаешь/не понимаешь и не хочешь этого (особенно если тема кода говно, и проект говно), то никакие подчёркивания не помогут. А если код топчик или просто интересен, и у тебя к нему нет негативного настроя типа ФУУУ ГАВНО, то хоть код на сях вроде ffmpeg'а разберёшь и nginx'а с переопредлёнными handler'ами на каждом шагу
Аноним 12/10/23 Чтв 02:20:30 2875616 472
1697066429113.jpg 69Кб, 1436x268
1436x268
Аноним 12/10/23 Чтв 13:39:40 2876056 473
>>2870338
Какие подчёркивания? Вы ебанутые? С тредом пидорасов джавистов перепутали?

Удваиваю вот этого господина >>2875554

Просто, сука, нормально научитесь именовать. Даже для простых как пробка set/get это будет set_field_name и get_field_name. Уже не говоря про тот случай, если вы функции верблюжьими горбами городите.
Аноним 12/10/23 Чтв 13:41:51 2876060 474
>>2870405
>ебать мозг на выдумывание синонимичных имен для параметров конструктора;
Если использовать инициализацию, а не в теле конструктора срать, то не будет коллизии имён.
А вот сраньё в тело конструктора уже достойно ебли с именами. Потому что ты нихуя не тривиальную вещь делаешь.
Аноним 12/10/23 Чтв 13:49:20 2876081 475
>>2876060
>Если
Это и есть ебля мозгов.
Тебе в Стандарте чтоле "еслей" не хватает, еще надо выдумать на ровном месте?
Аноним 12/10/23 Чтв 14:09:03 2876120 476
>>2876081
Нахуя тебе тело конструктора? Чтобы исключения и говно кидать?

Если там что-то есть - это какая-то логика. Преобразование данных. И это, как минимум, значит что входные параметры конструктора не равнозначны полям, которые инициализируют. Это значит - разные имена.

А я напомню, что ветка начинается с проблемы именования.

Здесь проблемы нет, есть хуёвые "бест практисес" от "гуру индустрии". Стандарт ещё зачем-то приплёл.
Аноним 12/10/23 Чтв 14:16:36 2876138 477
А в CoreGuidelines что то по поводу неймингк сказано?
Аноним 12/10/23 Чтв 14:24:39 2876149 478
>>2876138
МАМ ГДЕ МОЙ СЛЮНЯВЧИК?!
Аноним 12/10/23 Чтв 14:27:20 2876154 479
Аноним 12/10/23 Чтв 14:29:35 2876159 480
>>2876154
Сказала мне твоя мать сегодня ночью.
Аноним 12/10/23 Чтв 14:30:12 2876161 481
>>2876159
А ей зачем слюнявчик?
Аноним 12/10/23 Чтв 14:31:14 2876164 482
>>2876161
Я-то откуда знаю? Слюнки тебе подтирать поди. Твоя мать - тебе знать.
Аноним 12/10/23 Чтв 14:32:00 2876167 483
Сдвиги эффективнее обычного умножения/деления?
Аноним 12/10/23 Чтв 14:33:51 2876172 484
>>2876167
Побитовые сдвиги? Ты ими можешь заменить только умножение/деление на 2
И то в том случае компилятор скорее всего час соптимизирует
Аноним 12/10/23 Чтв 14:35:44 2876177 485
>>2876172
Тогда почему в любом коде который я открываю этих сдвигов половина сама кода? В чём смысл сего действия кроме понтов?
Также почему прописывают адреса памяти константами? Разве она не должна от одного устройства к другому меняться?
Аноним 12/10/23 Чтв 14:36:53 2876178 486
>>2876177
>Тогда почему в любом коде который я открываю этих сдвигов половина сама кода?
Лелблядь.
Аноним 12/10/23 Чтв 14:41:14 2876183 487
>>2876177
Потому что ты открываешь какой-то эмбедерский код. Сдвиги юзают не только для арифметическмх операций. Например, ими удобно установить нужное значение одного или нескольких битов.
12/10/23 Чтв 15:37:11 2876238 488
Репорт.
Аноним 12/10/23 Чтв 16:25:27 2876315 489
>>2876120
>Если там что-то есть
Не еби мне мозги своими еслями.
Я 1 раз подумал и выработал методу, которая никогда не подведет без всяких если.

Больше к этой хуйне я возвращаться не намерен.
12/10/23 Чтв 16:50:25 2876365 490
>>2876177
Объяви f(int х) и сравни код для х/2 и х>>1,
Аноним 12/10/23 Чтв 17:10:36 2876400 491
12/10/23 Чтв 17:15:26 2876408 492
>>2876400
Две лишние инструкции. Это после оптимизаций.
Бля, картинки с Задорновым нет
Аноним 12/10/23 Чтв 17:17:44 2876410 493
>>2876408
>Бля, картинки с Задорновым нет
Он же умер
Аноним 12/10/23 Чтв 17:26:57 2876415 494
Аноним 12/10/23 Чтв 17:27:33 2876417 495
>>2876315
>которая никогда не подведет без всяких если
И потом вот эти хуи ещё права на работе качают.

> я синьор-помидор
> нет, моя ценнность исходит не из знаний говна видеокодеков, в которые никто кроме меня лезть не хочет, а из уникального НаДёЖнОгО подхода к С++

Держи в курсе, как смачно ты гниёшь.
Аноним 12/10/23 Чтв 18:56:37 2876515 496
>>2876417
>И потом вот эти хуи ещё права на работе качают.
Ты с моим хуем по работе пересекался?
дед 12/10/23 Чтв 23:05:57 2876867 497
>>2876415
Потому что деление обязано усекать к 0.
-1/2 должно вернуть 0, но знаковый сдвиг (sar) -1 вправо дает -1.
Поэтому делить на степень двойки быстрее сдвигом, или объявлять аргумент unsigned.
Аноним 12/10/23 Чтв 23:17:57 2876871 498
Пахнет UB.
дед 12/10/23 Чтв 23:20:27 2876873 499
>>2876871
Если аргумент правда отрицательный, то таки да.
Аноним 14/10/23 Суб 00:48:16 2878252 500
Деформировали ли вам плюсы мозги? Я в том плане как на другие языки смотрите или может переходили на другие технологии, как ощущение?
Аноним 14/10/23 Суб 01:30:42 2878270 501
>>2878252
Есть немного. Пишу на других языках и всё равно пытаюсь не проебать 0.000001% перформанса при написании циклов, а имена переменных, методов и классов придумываю максимально краткие, будто завтра у меня отберут IDE и заставят писать в виме.
Аноним 14/10/23 Суб 09:40:39 2878356 502
168658435316992[...].png 919Кб, 1200x877
1200x877
>>2878252
Да, смотришь на другие языки и пикрелейтед
Аноним 14/10/23 Суб 10:55:54 2878399 503
43ca5a4a5b896de[...].jpg 37Кб, 540x540
540x540
>>2878252
C вот таким ебалом на другие языки смотрю
Аноним 14/10/23 Суб 10:58:28 2878404 504
16150320245471.jpg 111Кб, 1097x776
1097x776
Аноним 14/10/23 Суб 10:58:29 2878405 505
>>2878252
>Деформировали ли вам плюсы мозги?
Да, определенно.

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

>как на другие языки смотрите
Вообще, смотрю с позиций минимализма, как по отношению к количеству языков в своем арсенале, так и к объему фич языка, которые мне нужны.
До крестов я немношк знал Паскаль. В силу синдрома утенка (наверное) вспоминаю о нем с теплотой. Это мое личное мерило "ламповости" языка.
Блюпринты из анрил инжайна воспринял с энтузиазмом.
Примерно так чувствую, что рано или поздно придется взяться за Питон, т. к. в своих изысканиях часто натыкаюсь на его фичи.
Если бы у меня было больше свободного времени, то я бы посмотрел че за https://ru.wikipedia.org/wiki/ДРАКОН

>переходили на другие технологии,
Поставил C++ Builder (современный).

>как ощущение?
Как в детство окунулся.
Аноним 14/10/23 Суб 12:31:46 2878458 506
А есть у кого пошаговая инструкция как самый простой и понятный conan на винду установить? Я читаю доку, там настоятельно рекомендуют использовать pip. Окей, собираюсь использовать эту срань, но тут они опять настоятельно рекомендуют использовать pip в виртуальной среде, а инструкции как именно нет, хуй его знает, ебитесь сами.
Аноним 14/10/23 Суб 12:47:49 2878469 507
>>2878458
Хз, на винде всегда игнорил виртуалэнвы.
14/10/23 Суб 14:54:14 2878549 508
>>2878458
блядь, как же вы бесите, как же вы в айти вообще выживаете...
Аноним 14/10/23 Суб 16:17:20 2878607 509
>>2878458
Чел там буквально msi есть. Я сам ставить через питон, хотя все равно в итоге говном этим не пользуюсь
Аноним 14/10/23 Суб 16:46:53 2878632 510
Аноним 14/10/23 Суб 17:25:53 2878655 511
Аноним 14/10/23 Суб 18:07:27 2878709 512
>>2878458
>Окей, собираюсь использовать эту срань, но тут они опять настоятельно рекомендуют использовать pip в виртуальной среде
спокойной забиваешь хуй на это

всё что симейк рекомендует делать, тоже будешь выполнять?
Аноним 15/10/23 Вск 09:14:55 2879391 513
elonmusknatgeo.webp 22Кб, 1200x675
1200x675
Еб твою мать, я целый час пытался собрать этим ебаным g++. Оказывается, чтобы работало -lname, надо что у моей библиотеки было имя libname.so. Охуеть, а нельзя было сразу сказать о таком незначительном факте. Нигде про это не написано, даже чатгпт об этом не вспомнил. И неизвестно сколько бы я с этим ебался, если бы не нашел ответ на рандомном форуме.
Аноним 15/10/23 Вск 09:25:39 2879395 514
Screenshot2023-[...].jpg 219Кб, 1080x2248
1080x2248
>>2879391
Мде кхе-кхе да уж угу вот так-то ага
Аноним 15/10/23 Вск 10:12:14 2879408 515
>>2879391
Ахах, вспоминаю мою первую попытку линковки, с той же хуйней столкнулся.
Аноним 15/10/23 Вск 17:06:47 2879919 516
>>2879408
Нахуя что то линковать руками?
Аноним 15/10/23 Вск 17:10:00 2879921 517
Считаю, что отдельный курс в универе нужен по системам сборки и системам контроля версий.
Аноним 15/10/23 Вск 17:13:02 2879928 518
>>2879921
Не нужен
Нужны нормальные системы или хотя бы нормальная документация или туториалы
Аноним 15/10/23 Вск 17:29:06 2879955 519
>>2879919
Для того, чтобы в теме разобраться, не? Или люди сразу с пониманием как компилятор работает рождаются?
Аноним 15/10/23 Вск 17:32:49 2879964 520
>>2879955
>Или люди сразу с пониманием как компилятор работает рождаются?
Эм, ну да. Если ты при нажатии на зеленую кнопку в VS не знал изначально, что там в КИШОЧКАХ происходит, то вон из профессии. Тут востребованы только те, кто может байты информации из воздуха генерировать.
Аноним 15/10/23 Вск 18:58:48 2880134 521
>>2879921
Это две лекции и две лабы, нахуя целый курс?
Аноним 15/10/23 Вск 19:24:05 2880164 522
>>2879921
Уже есть.
> по системам сборки
"Смотрите в методичке к первой лабе, как создать и собрать проект в Visual Studio 2005".
> системам контроля версий
"На семинары носите лабы на флешках, потом скиньте мне их на почту в RAR-архивах".
Аноним 15/10/23 Вск 19:27:48 2880172 523
Аноним 15/10/23 Вск 20:02:31 2880216 524
>>2879921
Ваще да, но нет. Слишком простой курс будет, да и вообще это не академично, потому что это изучение слишком проходящей технологии. Даже языки толком не изучают, обычно стараются преподавать какое-нибудь ооп или алгоритмы на базе каких то языков
Аноним 15/10/23 Вск 20:13:53 2880228 525
Пытаюсь перекатиться с d3d9 на d3d12, но мне потребовался целый день только на то чтобы из кода-туториала отрисовать вместо 1 треугольника 2 (и то, его стало растянуло, и он будто бы зеркально отразился, если судить по цвету углов, но по крайней мере это был прогресс понимания)

Мне потребовалось подключить imgui, чтобы более наглядно видеть, как что меняется от разных параметров, но теперь я потратил целый день И НЕ СМОГ ПОДКЛЮЧИТЬ ИМГУИ. Блять! На девятке это занимает меньше 20 минут!

Не понимаю, что и для чего тут создаётся, что единожды, а что ежекадрово, что для каждого ресурса отдельно, а что общее. И в туториалах об этом комментарии типа >
// create the command list with the first allocator
hr = device->CreateCommandList(0, D3D12_COMMAND_LIST_TYPE_DIRECT, commandAllocator[frameIndex], NULL, IID_PPV_ARGS(&commandList));
.
Спасибо, папаша, но это не объяснило мне, нужно ли создавать эту штуку второй раз для другого содержимого отрисовки и какое значение тут играет индекс кадра, если мы только девайс подготавливаем, и зачем вообще он тут

Есть тут, там, где-нибудь вообще, хоть на китайском, подробный справочник по d3d12 для пятиклассников, чтоб я перестал час за часом проёбывать полурандомно редактируя туториал и наблюдая за изменениями?

да, можно просто дальше идти по урокам, но дальше будет лишь больше кода и я буду лишь больше путаться, нужно изучить механику и хоть немного уметь её менять
Аноним 15/10/23 Вск 21:48:10 2880402 526
>>2879921
Считаю, что в университетах вообще нинужно это ваше айти.
Университет - это про фундаментальное, а тренды в айти устаревают прежде, чем успевают появляться.
Аноним 15/10/23 Вск 22:21:48 2880418 527
>>2880228
Ну и позорище
и это ты еще нв вулкане не писал
Аноним 15/10/23 Вск 22:22:47 2880419 528
>>2880418
>>2880228
А вообзе посмотри сэплы нвидии, у них ято ттбылр для д3д12
Аноним 16/10/23 Пнд 00:07:25 2880479 529
>>2880134
Еще забыл сказать про пакетные менеджеры. Еще можно добавить лекции по зависимостям и методам их разрешения и оптимизации.
>>2880216
В учебном заведении, где готовят специалистов, хорошо бы чтобы учащиеся умели пользоваться современными инструментами, которые программисты реально используют на рабочих местах.
>>2880134
Там множество нюансов, ты весь cmake знаешь? Знаешь отличия от qmake? Отличия autotools от GNU make? В чем преимущество cmake перед любым IDE?
Аноним 16/10/23 Пнд 00:09:26 2880480 530
>>2880134
> Это две лекции и две лабы
Ты мудак чтоль? Эти две лекции только про историю появления, назначения и виды систем сборки.
Аноним 16/10/23 Пнд 00:11:43 2880481 531
>>2880479
В вузе не готовят специалистов, пиздуй в шарагу ради этого. То что у нас вузы = шарага это вопрос другой
Аноним 16/10/23 Пнд 00:13:54 2880482 532
>>2880481
Ты заебал, че ты прицепился к названию.
Аноним 16/10/23 Пнд 00:19:33 2880486 533
>>2880482
Бро ну не о чем тут говорить, это ты че ко мне приебался
Аноним 16/10/23 Пнд 00:34:26 2880494 534
>>2880479
>В учебном заведении, где готовят специалистов
Это про всякие ремесленные училища.
Университет готовит специалистов широкого профиля aka не пришей к пизде рукав и исследователей в фундаментальных областях знания.
Аноним 16/10/23 Пнд 00:39:16 2880497 535
>>2880481
>у нас вузы = шарага это вопрос другой
В этой стране статус университета присваивается тупо по формальному признаку - количество дисциплин и опять-таки формальному наличию в программе некоторых дисциплин.
Этот статус считается наивысшим, университет получает больше финансирования, чем институт или академия.

Отсюда всякие бывшие ж/д институты превратились в университеты и всякие оксюмороны навроде университета спецназа.
Аноним 16/10/23 Пнд 01:23:55 2880517 536
>>2880479
>>2880480
А диплом xml-инженера ты не получишь, потому что не сдал зачёт по философии текстовых редакторов
Аноним 16/10/23 Пнд 16:29:01 2881228 537
https://hh.ru/vacancy/88005428
В этой факансии тебя попросят пройти полиграф и написать анкету. А после этого две недели на приятия решения об оффере. Зато у них всего один крестовик, им нужен еще один. Может для вкатунца это шанс на непыльную работку, не забудьте только приписать в резюме год-полтора опыта. Удаленочка.

https://hh.ru/vacancy/87323548
Здесь надо выполнить тестовое, но для меня оно занимает слишком много времени, потому что с GStreamer я не знаком (но есть хороший туториал на аглийском). И составлено как-то небрежно, написано, что три задания для разных грейдов, но заданий всего два. Плюс надо решение выложить на гитхаб, написать cmake файл и readme как собирать проект, и еще записать танец в тик-токе. Зато hh показывает, что откликов <10, может их вообще нет, может это шанс для отчаявшихся.
Аноним 16/10/23 Пнд 17:07:47 2881275 538
>>2881228
>пройти полиграф
Лженаучная хуятина.
Кроме того, если я их попрошу пройти полиграф, то конец немного предсказуем. Такие отношения - это не про правду, а про монополию на ложь.

Передай им от меня просьбу пройти на хуй.
Аноним 16/10/23 Пнд 17:31:34 2881312 539
>>2881275
Чел, тут и речь быть не может. Очевидно, что компания неадекватная, иначе просто дали бы подписать соглашение о неразглашении вместо унизительного полиграфа.
Аноним 16/10/23 Пнд 17:37:23 2881320 540
изображение.png 36Кб, 812x200
812x200
изображение.png 191Кб, 776x980
776x980
А вот задание. Платят аж до трех тыщ рублев!
Аноним 16/10/23 Пнд 17:53:41 2881327 541
ня.jpg 252Кб, 1366x768
1366x768
:)
Аноним 16/10/23 Пнд 18:07:09 2881352 542
>>2881327
Мне тоже это говно сегодня в рекомендации вылетело.
Аноним 17/10/23 Втр 03:50:03 2881869 543
image.png 64Кб, 357x457
357x457
Дочитал до конца. Рекомендую. Где найти? На zlibrary
Аноним 17/10/23 Втр 06:31:39 2881885 544
>>2881869
что нового\полезного узнал?
Аноним 17/10/23 Втр 09:32:26 2881962 545
undefined - Img[...].gif 8159Кб, 400x170
400x170
Аноним 17/10/23 Втр 10:10:14 2881994 546
>>2854207
А от чего ркнишься-то? А? А ?А ?А ?А ?А? А? А?? А?А?ААА?
Аноним 17/10/23 Втр 11:03:11 2882031 547
>>2867738
Это которые от Константина Владимирова (МФТИ)? Там их два, базовый и магистерский, есть ли к ним задачи или лабы какие-то в открытом доступе? Да и вообще, норм ли материал для изучения это? Может проще того же Страуструпа почитать? Или C++ Primer?
Аноним 17/10/23 Втр 18:57:09 2882674 548
>>2882031
> норм ли материал для изучения это?
Говно материал. Нихуя не объясняет, сидит лыбится. И вообще его курс как будто для разработчиков компиляторов, узкоспециализированный.

Друго дело лекции Мещерина Ильи - пишет код с нуля, старается все объяснить, прямо на занятие отлаживает ошибки.
https://www.youtube.com/@mesyarik
https://www.youtube.com/watch?v=RwziYcZD2-E&list=PL4_hYwCyhAvaWsj3-0gLH_yEZfKdTife0
https://www.youtube.com/watch?v=njfH8PHghWo&list=PL4_hYwCyhAvazfCDGyS0wx_hvBmnAAf4h

Еще вот хороший курс
https://www.youtube.com/watch?v=apUo4I4k6d4&list=PL4_hYwCyhAvY1CNC2azvnDjkQfx5_S13l
Аноним 17/10/23 Втр 19:14:30 2882708 549
16968604348292.jpg 354Кб, 754x563
754x563
>>2882674
>>2882031
Не знаю, у меня отвращение какое-то от всех этих лекций непонятное. Всегда читал книжки, мануалы, потом комп сидел пердолил, делал вещи интересные для себя. А вот лекции скучно смотреть, но всегда есть какой-то страх внутри, что вдруг упускаю что-то важное. Непонятно в общем. Но если кому-то лекции заходят, то добра вам.

Вообще самый топ, имхо, это вариации системы листочков, то есть получаешь список задач по теме, какую-то краткую теорию. И сидишь решаешь. Потом обсуждаешь один на один это с другим человеком знающим.
Аноним 17/10/23 Втр 20:03:06 2882811 550
>>2847323 (OP)
У вас в шапке на гите почти все ссылки на книги потёрты.
Аноним 17/10/23 Втр 20:05:26 2882817 551
Аноним # OP 17/10/23 Втр 21:03:28 2882942 552
Аноним 18/10/23 Срд 07:39:48 2883187 553
>>2882031
>Да и вообще, норм ли материал для изучения это?
Магистерский 10\10, но стоит учитывать что он не для новичков
То есть изучать плюсы с него плохая идея, для такого лучше посмотри лекции что выше кидал анон

но вот когда захочется узнать побольше о пмр аллокаторах, многопоток, корутины, вывод типов и тд, то магистерские лекции 10\10
Аноним 18/10/23 Срд 08:07:59 2883200 554
87d8fb2s-960.jpg 64Кб, 604x489
604x489
>>2883187
> корутины
Краткое содержание его рассказа о корутинах
Аноним 18/10/23 Срд 09:54:49 2883283 555
>>2883200
Есть какое-то бойлерплейтное говно, которым нормально пользоваться пока что нельзя.
Аноним 18/10/23 Срд 12:10:04 2883380 556
>>2883200
Да их никто нормально объяснить не может. Единственный вариант понять хоть что то это взять и написать свою либу по корутинам
Аноним 18/10/23 Срд 12:20:37 2883389 557
>>2883380
Просто залетыши вроде тебя не достаточно разумны.
А соевые в комитете тащат в стандарт все говно подряд.
Концепцией корутин пользовались десятилетиями, переключение контекста на асме занимает одну станицу и кому надо имли свою реализацию задолго до. Как и с подавляющим большинством всего дерьма из стл.
Аноним 18/10/23 Срд 12:25:34 2883395 558
>>2883389
Дед, успокойся, ты крутой, крутой, очень умный разумный
Аноним 18/10/23 Срд 14:19:55 2883585 559
>>2883389
> А соевые в комитете
Уже и в комитет пробрались, ох уж эти соевые!!

ретроградство а аутизм
Аноним 18/10/23 Срд 15:03:36 2883634 560
>>2883389
Это и бесит. Тебе надо? Ну напиши сам че ты.
А я хочу спокойно решать бизнес задачи, а не дрочить бойлерплейт по пол года.
Аноним 18/10/23 Срд 15:52:20 2883685 561
>>2883634
>спокойно решать бизнес задачи
Бизнес не даст тебе жить спокойно. Если он увидит, что ты спокойствуешь, это будет интерпретировано так, что ты зря ешь свой хлеб.
Аноним 18/10/23 Срд 16:08:53 2883710 562
39b30902e2d347d[...].gif 64Кб, 869x402
869x402
Платина. Я дохуя лет высокоуровневая макака (скрипты, веб, прочее), сколько-то понимаю компуктер саенс. Хочу в минимальный срок проштудировать С++, чтобы комфортнее читать чужой код (уже могу, но все равно затыки бывают). Чтобы без воды и талмудов на 500 страниц. Английский знаю свободно. Какой выбрать порядок для обучения?
Аноним 18/10/23 Срд 16:29:21 2883735 563
>>2883710
Добавлю. Хоть я и хочу в первую очередь читать код, хотелось бы знать про ту самую стрельбу себе в ноги, про которую так часто говорят и как делать правильно. Может есть где-то сборник таких надо и не надо?
Аноним 18/10/23 Срд 16:30:44 2883737 564
>>2883710
А сфера то какая? На плюсах все подряд пишут.
И знания для разработчиков нейронок/графики/микроконтроллеров нужны совсем разные.
Аноним 18/10/23 Срд 16:31:32 2883740 565
>>2883735
Если тебе просто чтоб писать, то сиди и пиши. Ноги обязательно будут отстрелены.
Аноним 18/10/23 Срд 16:35:26 2883748 566
978-1-4842-6047[...].webp 87Кб, 827x1181
827x1181
>>2883710
Мне такого было достаточно (читал первое издание) для интеграции пачки плюсовых либ разной степени несвежести в шарпопитоны, на которых обычно и пишу. Что-то удавалось почти напрямую впихнуть, для чего-то писал сишные ьиндинги, кое-что портировал.

Не совсем правда понимаю, для чего просто читать чужой плюсовый код, если сам на плюсах ничего не пишешь, но вдруг поможет.
Аноним 18/10/23 Срд 16:36:31 2883751 567
>>2883737
Геймдев, пишу скрипты для 3д игры, но так же могу заглядывать в исходники движка игры, которые на с++, чтобы искать баги или просить новые скриптовые функции.
Аноним 18/10/23 Срд 16:39:44 2883758 568
>>2883751
Game development {движок нейм} with c++ books.
Аноним 18/10/23 Срд 16:46:11 2883765 569
>>2883758
Движок кастомный, про него книг нет

>>2883748
Взял на заметку, спасибо.

Пока в общем сижу проглядываю все одно за другим на cppreference.com
Аноним 18/10/23 Срд 17:16:38 2883809 570
>>2883765
Черрипикай что не понимаешь и SO + cppref. Что то целенаправленно читать не уверен что нужно. Точнее что оно точно покроет твои потребности.
Аноним 18/10/23 Срд 22:49:29 2884166 571
>>2864019
Потому что функция не обязана перемещать и вообще что-то делать с этим объектом. Но тем не менее аргумент std::string&& - это контракт между вызывающей и принимающей стороной. Для вызывающей он означает, что переданный объект std::string в общем случае после вызова будет в состоянии moved-from, т.е. ты можешь, например, что-то ей присвоить, но читать ее нельзя. Для принимающей он означает, что ты можешь ее переместить. Ключевое слово - "можешь", делать ты этого не обязан, можешь затроллить всех и себя, скопировав ее, или вообще не трогать. Но вызывающая сторона про реализацию не должна знать и обязана предполагать, что строка была перемещена.

>>2864650
Але, универсальные ссылки только в шаблонах или auto.
Аноним 19/10/23 Чтв 19:19:58 2885453 572
image.png 55Кб, 1679x237
1679x237
Люди опомнитесь, астанавитесь!

Смотрите: ошибка в ParentProcessWatcher.cpp лечится прописыванием #include <algorithm> в... системный wchar_t.hpp , нахуй !

Ссука, какой пиздец. Мне всего-то лишь надо было собрать одну софтину. Уверен, что у автора всё собирается нормально. И это ещё свежий софт на свежем конпеляторе, как там оно через пару лет собираться будет - никакой пхд не разберётся.

Бросайте это говно и айда к нам в раст, где любое поделие даже 10-летней давности собирается нормально.
Аноним 19/10/23 Чтв 19:28:44 2885485 573
>>2885453
Попробуй заинклюдить алгоритм до инлюда вичара.
Аноним 19/10/23 Чтв 19:59:47 2885578 574
В visual studio нет пункта Опубликовать. Что делать? Помогите, пожалуйста.
Аноним 19/10/23 Чтв 20:08:54 2885606 575
Аноним 19/10/23 Чтв 20:09:03 2885607 576
>>2885485
А знаешь, помогло. Или не помогло, просто погода на Марсе поменялась и оно и так бы собралось (из wchar_t.hpp удалил). Или вот я собирал wanproxy - сорцам на тот момент было что-то года 3, а уж говна поел при сборке, боже мой.

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

Пригорело, прибежал, ага
Аноним 19/10/23 Чтв 20:10:56 2885612 577
>>2885607
Просто разберись как работает инклюд и сможешь предсказывать погоду на Марсе.
Аноним 20/10/23 Птн 00:53:21 2886058 578
>>2885453
> 10-летней давности собирается нормально
А панчлайн в том, что расту и 10 лет нет?
Аноним 20/10/23 Птн 08:46:26 2886130 579
https://www.youtube.com/watch?v=MO-qehjc04s

C++ programmers in 2004: "you should move on from C to C++, C++ is so much safer, reduces mistakes and is just as performant"
C++ programmers in 2023: "what even is safety? let me split hairs for half an hour about safety definitons, moving to a safer and just as performant language is not the solution"
Аноним 20/10/23 Птн 09:34:54 2886161 580
2021-09-1901-01.png 117Кб, 786x523
786x523
Подскажите, че за программа?
Аноним 20/10/23 Птн 09:39:25 2886168 581
Аноним 20/10/23 Птн 09:42:04 2886171 582
>>2886161
Это системные либы, какая ещё программа?
Аноним 20/10/23 Птн 10:23:47 2886234 583
Аноним 20/10/23 Птн 11:12:43 2886308 584
>>2885612
А зачем, если я просто беру чужой исходник и пытаюсь собрать по инструкции? Это хорошо ещё, что у меня буст оказался совместимой версии. На расте тебе кроме cargo build вообще ничего знать не нужно, а на плюсах "ты слишком тупой, чтобы использовать эту софтину, азазаз".
Аноним 20/10/23 Птн 12:13:23 2886396 585
>>2886308
Заведи ишу у чела на Гите, чтоб такие же юзеры не улетали на орбиту. Ну или может чел снизойдёт и поменяет две строки местами)
Но ток проверь, что решение действительно работает)
Аноним 20/10/23 Птн 12:14:00 2886397 586
Аноним 21/10/23 Суб 01:36:11 2887747 587
>>2886130
Чего у них так safety все чешется? Сейчас у плюсов вроде ниша, где текущего уровня хватает, если браузеров не считать. Драйвера и ядра пишут на безопасных диалектах сишки с валидациями и анализаторами на каждый чих, с кучей бюрократии в коде (чувак, который в MS DirectX кодил в нулевые, рассказывал, что у них операторы запрещены были, вся арифметика в обертках из функций). А на десктопе как-то пофиг, что прога изредка падает. В HPC все либы задрочены уже до каждой строчки, месяцами крутятся без ошибок нонстоп. Плюс никто уже старый код на новые безопасные фенечки не будет переписывать.
Аноним 21/10/23 Суб 09:41:13 2888218 588
>>2887747
> Чего у них так safety все чешется?
Ну трястись все начали когда АНБ прямо сказало что с\с++ юзать не стоит

NSA advises organizations to consider making a strategic shift from programming languages that provide little or no inherent memory protection, such as C/C++, to a memory safe language when possible. Some examples of memory safe languages are C#, Go, Java, Ruby, and Swift.

Ну и ответить на это заявление собственно и нечем, кроме как
> just dont write bad code
> just use use CoreGuidelines
> actually your safe languages are also unsafe so everyone is unsafe

> Сейчас у плюсов вроде ниша, где текущего уровня хватает
Ну кроме браузеров есть еще и ОС, есть и различный софт который заводами целыми управляет
ну и соответственно уязвимость может тебе от телефона, до целого завода наебнуть
Аноним 21/10/23 Суб 13:41:05 2888518 589
>>2888218
На твой завод и космический кал может прилететь.
Это проблема никак не решается, уязвимости будут всегда, просто потому что мир не работает по бумажкам бюрократов и идеальным формулам физиков.
Аноним 21/10/23 Суб 13:51:55 2888546 590
image.png 271Кб, 1080x626
1080x626
Аноним 21/10/23 Суб 15:28:58 2888746 591
Блять хотел вздремнуть часик в свой выходной но сосед еблан, по-другому не назовешь, включил свой долбеж. Ладно там еще дебильный реп или даже руснявую попсу, но там просто неиронично долбеж дуц дуц дуц на протяжении 10 минут уже, да это реально, хотя я и сам не верю
Аноним 21/10/23 Суб 15:30:55 2888755 592
>>2888746
Сука не туда насрал
Аноним 21/10/23 Суб 16:01:19 2888827 593
>>2888546
😀😀😀

>>2888518
>На твой завод и космический кал может прилететь.
Это да, но сейчас модно MEMORY SAFETY гарантировать
а от метеорита бог поможет
Аноним 21/10/23 Суб 22:27:01 2889324 594
2023-10-21-22-2[...].mp4 622Кб, 460x240, 00:00:14
460x240
А шарписты так умеют А? А?
Аноним 21/10/23 Суб 22:34:06 2889327 595
2023-10-21-22-2[...].webm 209Кб, 460x240, 00:00:14
460x240
Если на лисе
Аноним 21/10/23 Суб 22:38:16 2889331 596
Аноним 21/10/23 Суб 22:51:53 2889339 597
>>2889331
Хмм, целый класс программ построен на UB и при этом они стабильно работают на x86..
Аноним 21/10/23 Суб 22:59:25 2889344 598
Получается некоторые задачи без UB никак не решить 🤷
Аноним 21/10/23 Суб 23:58:58 2889373 599
>>2889344
И что ты этим решаешь?
Аноним 22/10/23 Вск 01:43:12 2889412 600
>>2889339
Ты правда свой хеллоуворлд на 10 строчек называешь "целым классом программ"?
Аноним 22/10/23 Вск 09:43:25 2889490 601
>>2889412
Тебе знать не обязательно
Аноним 22/10/23 Вск 09:52:13 2889495 602
>>2889324
Изи Marshal.GetDelegateForFunctionPointer
Аноним 22/10/23 Вск 10:23:03 2889510 603
>>2885453
>в раст, где любое поделие даже 10-летней давности собирается нормально.
Как-то неприлично жирно, анон. Я не могу даже код годовалой давности новым компилятором собрать и приходится несколько версий в системе держать. Когда же совсем недавно на Сишке собрал код прямиком из 20-го века. Не без пердолинга, конечно, но собрал.
Аноним 22/10/23 Вск 10:54:45 2889532 604
>>2889510
>Я не могу даже код годовалой давности новым компилятором собрать
Самый очевидный вариант, если ты версии зависимостей указал как "*", и после обновления ожидаемо попал. Если у тебя прям вот с твоим кодом проблемы, покажи, интересно. Хотя, тоже, скорее всего, лечится понижением edition.

>собрал код прямиком из 20-го века.
Просто сишка, да, старый код худо-бедно норм собирается, а вот с плюсами беда.
>Не без пердолинга
Ну а как же.
Аноним 22/10/23 Вск 21:53:17 2890371 605
photo2023-10-22[...].jpg 28Кб, 742x165
742x165
image2023-10-22[...].png 58Кб, 1577x857
1577x857
вопрос по QtCreator(С++)

не подскажите, как с помощью QQueue сделать это Задание и как проверить работает программа или нет... (пикрил то что пытался сделать со свич кейс)
Аноним 23/10/23 Пнд 01:14:14 2890513 606
>>2890371
Что тебе конкретно подсказать? Ты в своем коде даже не попробовал использовать очередь.
Аноним 23/10/23 Пнд 01:28:25 2890516 607
>>2890513
подсказать, как составить очередь, как она вообще тут может работать, знаю только метод enqueue, с помощью которого можно элемент в очередь добавить
Аноним 23/10/23 Пнд 01:28:32 2890517 608
>>2890371
ну начни с начала... До цикла чоздай QQueue<QString> и топай читать документацию по этому контейнеру
Аноним 23/10/23 Пнд 01:31:30 2890519 609
>>2890517
не знаешь сайтов с +- понятной инфой?
Аноним 23/10/23 Пнд 01:35:58 2890520 610
Аноним 23/10/23 Пнд 01:37:18 2890521 611
>>2890516
Реши сначала, как ты будешь считывать команды с терминала.
А контейнер уже потом прикрутишь, это вообще самое просто, лол.
Аноним 23/10/23 Пнд 11:40:59 2890797 612
>>2890521
для этого метод flush() подходит?
Аноним 23/10/23 Пнд 13:47:19 2890965 613
>>2890797
Я тебе о другом.
Напиши сначала код, который будет принимать команду и просто отдавать в терминал ее обратно, без обработки.
Аноним 23/10/23 Пнд 14:02:02 2890982 614
Аноним 23/10/23 Пнд 16:00:48 2891100 615
>>2890982
Проверка на 7-9 строках никогда не сработаеттесты изолированы друг от друга.
И хешмапа несколько раз ремаппится(лог(н))
И зачем хешмапа? Мне кажется что вектор справится, тебе все равно для каждого 0-N нужно значения хранить. Храни их в векторе длиной N.
Аноним 23/10/23 Пнд 16:03:56 2891107 616
1668872582087.png 38Кб, 1015x188
1015x188
Ну че сынки, готовы к новым закорючкам? Ведь в языке мало головоломок было.
Аноним 23/10/23 Пнд 16:06:53 2891111 617
>>2891107
Это рофл?
Что это за кал и нахуя он? Не, я понял, типо можно выводить типы. А СФИНАЕ все, уже не устраивает?
Аноним 23/10/23 Пнд 16:11:08 2891116 618
Аноним 23/10/23 Пнд 16:20:37 2891123 619
>>2891116
Не уверен что рефлексия в таком виде вообще нужна. Будет ещё одна используемая парой десятков/сотен человек опция языка.
Алсо чёт не увидел, возможна ли кодогенерация с помощью такой штуки.
Аноним 23/10/23 Пнд 16:26:15 2891132 620
>>2891123
Ну там есть пример с туплой, который выглядит ничем не понятней шаблонов но почему то преподносится как революция.
Аноним 23/10/23 Пнд 18:03:10 2891230 621
Аноним 23/10/23 Пнд 18:13:33 2891246 622
Как сейчас вкатиться на работу плюсовиком? Какие сферы востребованы? Опыт работы 4 года вебмакакой имеется, на плюсах ещё со школы пишу, кучу разного пробовал, либ 10 точно знаю помимо линукс/винапи. Что доучить к этому и что в резюме писать чтобы сразу офферы в лицо кидали?
Аноним 23/10/23 Пнд 18:35:25 2891275 623
>>2891230
Скачал с официального сайта бесплатно и без смс, но с регистрацией.
Аноним 23/10/23 Пнд 19:37:05 2891353 624
>>2891123
>Не уверен что рефлексия в таком виде вообще нужна.
Нужна в любом виде. Хоть какая. Все что угодно лучше, чем самописные уродцы на макросах и темплейтной магии.
Аноним 23/10/23 Пнд 20:25:15 2891433 625
>>2891246
Удвою анона. Какой положняк по вкату в плюсы сегодня?
Аноним 23/10/23 Пнд 20:34:44 2891447 626
>>2891353
Пока не знаю, где смогу это применить
Аноним 23/10/23 Пнд 21:13:17 2891490 627
>>2891353
В результате будут самописные уродцы на макросах, темплейтной магии и вот этой рефлексо магии.
Аноним 23/10/23 Пнд 23:28:17 2891612 628
>>2891275
Так забанено же для России.
Аноним 23/10/23 Пнд 23:31:55 2891619 629
>>2891612
Во первых Впн.
Во вторых можно собрать из исходников.
В третьих КДЕ. но там не все есть.
Аноним 23/10/23 Пнд 23:44:40 2891640 630
Кто-нибудь ИТТ клал хуй на математику в период взросления, а потом в ходе "программисткой" деятельности сталкивался с проблемами, вызванными неумением применять математический аппарат, вследствие чего вынуждены были изучать заново математику? Или ИТТ все успешные олимпиадники, у которых одни 5 были по ней? что в школе, что в вузе.
Аноним 23/10/23 Пнд 23:56:37 2891657 631
>>2891640
Что именно ты не понимаешь?
Аноним 24/10/23 Втр 00:14:23 2891674 632
>>2891657
Всю математику с 7 класса. Сейчас вот решил заново начать изучать. А не понимаю конкретно "умных" книжек, где все написано на языке математики(конкретно всякие формулы, дельта, эпсилон, интегралы и тд., так или иначе все научные книги на этой базе строятся)
Аноним 24/10/23 Втр 00:19:10 2891681 633
>>2891640
Я вообще самоучка. К тому же уже и на кладбище начинаю поглядывать. Единственное что в программировании не всегда математика нужна. Если говорить про с++, то в 3д движках, дронах и автопилотах, нужна. А например гонять пакеты по сети, делать базу данных, гуй - не нужна сложнее чем у пятиклассника.
Аноним 24/10/23 Втр 00:54:48 2891707 634
>>2891612
Мда, ещё скажи, что торрентами не пользуешься.
Аноним 24/10/23 Втр 01:58:16 2891755 635
>>2891612
Вообщето креатор лицензируется отдельно и ты можешь с гита билд виндовый скачать, если собирать лень.
Аноним 24/10/23 Втр 09:41:07 2891935 636
>>2891640
Поступил на мехмат далеко за 20, готовился сам.
Аноним 24/10/23 Втр 10:28:24 2891966 637
>>2891619
> Во первых Впн.
Не вариант, я нищий для платного впн
> Во вторых можно собрать из исходников.
Это нужно целый день разбираться, мне лень. Какие-то Windows debagging tools достать откуда-то, пиздос.
> В третьих КДЕ
Что КДЕ? У меня на виртуалке убунта и гном, мне лень еще одну ставить.
>>2891755
> с гита билд виндовый скачать
Чувак! Ты просто гений. Подскажи где именно билд лежит.
Аноним 24/10/23 Втр 10:40:29 2891975 638
>>2891966
> > Во первых Впн.
> Не вариант, я нищий для платного впн
Планет ВПН работает как часы
> > Во вторых можно собрать из исходников.
> Это нужно целый день разбираться, мне лень. Какие-то Windows debagging tools достать откуда-то, пиздос.
Ну окей, осилить пару шагов из мануала не твой путь
> > В третьих КДЕ
> Что КДЕ? У меня на виртуалке убунта и гном, мне лень еще одну ставить.
У КДЕ есть собственный форк Qt, лежит на гите. Но его мб тоже собирать надо, не уверен.
Аноним 24/10/23 Втр 15:20:28 2892332 639
Аноним 24/10/23 Втр 18:04:39 2892603 640
Screenshot from[...].webp 23Кб, 1395x906
1395x906
Screenshot from[...].webp 29Кб, 1395x925
1395x925
Screenshot from[...].webp 25Кб, 1395x925
1395x925
image.png 103Кб, 1056x716
1056x716
Собираю rpcs3
git submodule update --init выглядит так (чёрные скрины, вошло 3 из 4х)

Пиздец, пиздец. А почему я это собираю, вообще? Да потому, что версия из флатпака не может в форкание доп окошек, типа конфигурации.

Бегите от этой ссанины на раст или, хотя бы, zig, что-то с норм тулингом, ребята, нечего тут ловить.
Аноним 24/10/23 Втр 20:07:23 2892758 641
>>2892603
Пиздуй переписывать на Раст, это же опенсорс, хули ты в треде забыл?
Аноним 24/10/23 Втр 21:37:27 2892964 642
>>2892603
> Пиздец, пиздец.
Так а что случилось то? Зависимостей много?

> переходите на раст
А на расте зависимостей меньше станет?
Собираются там проекты ещё медленнее

сходи траву потрогай пока компилится
Аноним 24/10/23 Втр 21:47:31 2892985 643
>>2892603
>Бегите от этой ссанины на раст
На расте все еще хуже будет, потому что растохлебушки либ не пишут, а те что пишут, забрасывают через полгода, а язык на месте не стоит и все очень быстро протухает. Плюс там детерминированная сборка с текущими тулзами в принципе невозможна.
Аноним 24/10/23 Втр 22:45:15 2893104 644
>>2891246
>>2891433
Дописывайте:
1) Опыт работы на плюсах от пары лет (или олимпиадок в школе/шараге)
2) Проекты с чем-то выокопроизводительным или низкоуровневым

Без этого галеры будут ссать на лицо, если речь не о государственных НИИХУЯ. Да, рынок труда на плюсах куда более тухлый, чем на джаве.
Аноним 24/10/23 Втр 22:50:31 2893106 645
>>2893104
Проекты офк имеются в виду коммерческие, то есть на прошлых местах работы
Аноним 24/10/23 Втр 23:03:46 2893121 646
>>2847323 (OP)
Собираю проект с библиотектой Torch-ROCm.
Конфигурацию Cmake побороть смог.
Билд с clang поборол.
При выполнении ошибка:

RayCaster: /usr/src/debug/hip-runtime-amd/clr-rocm-5.6.1/rocclr/cmake/../thread/monitor.hpp:180: bool amd::Monitor::tryLock(): Assertion `thread != NULL && "cannot lock() from (null)"' failed.

Есть гайд, как фиксить, или собираться torch-rocm на плюсах?
Аноним 24/10/23 Втр 23:28:01 2893156 647
>>2893106
>как вкатиться
>проекты на прошлых местах работы
Аноним 24/10/23 Втр 23:34:24 2893165 648
Спрошу тут
Заметил что в Debian 12 у меня отвалился clang. Не видит стандартных инклюдов типа <algorithm> В прошлый раз я такое фиксил обновив gcc, т.к. он использует их либы. Теперь чет непонятно что делать, так как
clang-16 is already the newest version (1:16.0.6~++20230919124242+7cbf1a259152-1~exp1~20230919124333.105).
libstdc++-12-dev is already the newest version (12.2.0-14).
gcc-13 is already the newest version (13.2.0-4).
>clang -v
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/13
Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/13
Аноним 25/10/23 Срд 00:06:55 2893206 649
.gif 424Кб, 352x248
352x248
Аноним 25/10/23 Срд 00:13:46 2893215 650
>>2893206
Ну да, а зачем тут твоя аватарка?
Аноним 25/10/23 Срд 02:45:45 2893297 651
>>2891246
Меня с опытом реальным на 350к нигде не взяли
Аноним 25/10/23 Срд 11:13:50 2893464 652
Почему нельзя удалить элемент из массива ? В java это очень легко сделать поместив null.
Аноним 25/10/23 Срд 11:30:21 2893501 653
Screenshot from[...].webp 8Кб, 1415x924
1415x924
>>2892758
"Это из серии невкусно - приготовь сам". Не, не, я просто поплеваться пришёл.

>>2892964
>Зависимостей много?
Не то, что много, а то, как они хуёво организованы. В расте у тебя всё лежит в Cargo.toml, который част проекта. А тут привязка к гиту.

>>2892985
>язык на месте не стоит
да
>и все очень быстро протухает
нет. Для этого есть edition, которых уже 3: 2015, 2018, 2021. И последний конпелятор собирает их все. Вот, я собрал игру из 2018 без особых проблем. https://github.com/DarinM223/mold2d
Ещё могут протухать эксперементальные фичи, которые решили не включать в конпелятор, то да, но их случайно не используешь
Аноним 25/10/23 Срд 13:01:48 2893743 654
>>2893464
Включи голову.
Как ты инту сделаешь значение null без создания оверхеда?
Аноним 25/10/23 Срд 13:11:02 2893763 655
>>2893501
А собери чё нить 20 летней давности.
Ой...
Аноним 25/10/23 Срд 13:34:56 2893811 656
>>2893501
>Для этого есть edition, которых уже 3: 2015, 2018, 2021. И последний конпелятор собирает их все.
И либы из 2015 можно без геммороя использовать в 2021?
Аноним 25/10/23 Срд 13:37:29 2893815 657
>>2893501
> А тут привязка к гиту
А ты репозиторий не из гита качал?...
Аноним 25/10/23 Срд 14:46:32 2893927 658
>>2893811
Прикинь, можно.

>>2893815
1. На расте у тебя есть Cargo.toml , в котором указаны зависимости с человечески приписанными версиями (хотя, гит тоже можно). Сам твой проект - хоть на svn, хоть на базаре. А тут привязка к гиту и его модулям.
2. В Cargo же можно прописать опции для зависимостей. В гите такое хуй сделаешь, надо костылить какую-то жуть в CMake.
3. На расте у тебя единый тулчейн, который собирает всё и обновляется простым rustup. А тут привязка к системным компиляторам и auto*-говну. Надо, чтобы твоя система была не слишком новая, но и не слишком старая. Ну, это на никсах, на винде вообще всё через "сбегай - скачай", по папочкам распихай и пути пропиши.
Аноним 25/10/23 Срд 15:02:10 2893969 659
Аноним 25/10/23 Срд 15:08:12 2893986 660
>>2893927
>Прикинь, можно.
Сдается мне, ты пиздишь. Эдишены как раз и сделали, потому что у раста нет обратной совместимости между версиями. Фактически это как писать одну прогу на трех разных языках. Теоретически возможно, но на практике вряд ли будет приятно.
Аноним 25/10/23 Срд 16:02:52 2894100 661
>>2893927
> А тут привязка к гиту и его модулям.
Ну и?
Мне как конечному юзеру все равно откуда он репы качает
Мне как разрабу делов на 5 секунд прописать какую версию из гита дергать

> В Cargo же можно прописать опции для зависимостей.
Ну так если у них нет опций зависимости, то в чем притенения?
> В гите такое хуй сделаешь, надо костылить какую-то жуть в CMake.
Несколько опций прописать? Звучит не сложно
25/10/23 Срд 16:24:33 2894136 662
>>2893927
Это дибилы одной секты или один и тот же дибил переодически срет своим бредлм в с/спп тредах.
Аноним 25/10/23 Срд 16:33:25 2894154 663
>>2893986
https://pastebin.com/kWkCRFMs

создай либу с таким кодом. Если в карго стоит эдишн 2015, то соберётся, иначе - нет. Далее попробуй позвать функцию bar из крейта 2021-эдишн. Всё отработает.

С другой стороны, да, признаю, есть ломающие изменения, которые понижением эдишн не лечатся. О них предупреждают за полгода, но если либа заброшена, то никто, ессно, не пофиксит.
Об этом есть целая простыня: https://rust-lang.github.io/rfcs/2834-cargo-report-future-incompat.html
вкратце: что попало не выкидывают, только то, что просочилось в релизную ветку по ошибке. Вообще, для такого есть ночные сборки, где фичи тестируются, но иногда вылазит.

>>2894100
>Мне как разрабу делов
Ну, смари: я только прописав крейт в импорте уже могу брать оттуда функции. Ide сама подсказывает, что куда прописать, чтобы импортировать. В некоторых случаях, если обращение идёт по имени крейта, она даже сама предлагает добавить зависимость. У вас также?
Аноним 25/10/23 Срд 16:38:50 2894166 664
Screenshot from[...].webp 7Кб, 933x413
933x413
>>2892758
>Пиздуй переписывать на Раст
кстати, внезапно, пик.

>>2894136
Надо же, какой ты проницательный. Впрочем, Rust и тебя тоже любит.
Аноним 25/10/23 Срд 21:20:27 2894484 665
>>2894136
>Это дибилы одной секты
Интересно, что этих шизов так к расту притягивает? Такая же фигня как с хаскелем, лиспом или к примеру арч линуксом и веганами. Почему-то вокруг языка формируется группа ебанашек, которые сами на языке в общем ничего значимого не пишут, но непременно лезут во все дыры и доебывают всех рассказами о том, как у них круто, а все вокруг лохи и не узрели света истины. Почему так происходит, что их притягивает?
Аноним 25/10/23 Срд 21:34:51 2894491 666
>>2894484
В аниме тусовке тоже много ебанашек - что ж теперь, и аниму не смотреть? Rust is the end and is the beginning. Worship his safety!
Аноним 25/10/23 Срд 22:19:35 2894548 667
>>2894136
>>2894484
Этож /pr, пагни, не когмите тголя
Плюсотреды тролят растом, пушо тулинг и мемори сейфти
Растотреды тролят сями/плюсами и почему-то шарпогосподо борроучекер сложна
Шарпотреды тролят джавой, пушо зп и вакух больше
Джаватреды тролят котлином/скалкой и шарпогосподо языковых фич больше
Js/ts/php не посещаю, но думаю там тоже хватает тухлого тролинга
Аноним 26/10/23 Чтв 11:10:58 2895134 668
Овер каво ?
Аноним 26/10/23 Чтв 14:27:04 2895322 669
Где у смарт поинтеров ковариантность? Или объясните что это нах не нужно.
https://onlinegdb.com/Rzv6gsLy48

class A {};
class B: A {};
class C {
vector<shared_ptr<A>> vec;
void add(shared_ptr<A> a) { vec.push_back(a); }
}
C c{};
auto b = make_shared<B>();
c.add(b);
Аноним 26/10/23 Чтв 15:14:41 2895448 670
image.png 43Кб, 1027x396
1027x396
Кто знает есть ли быстрые способы, без ветвления if'ами, получить максимальное число из массива? Хотелось бы сделать свёртку массива в 4 раза с сохранением максимального значения из 4 элементов, как на картинке. Я грежу, может есть какая то битовая хитрость или что то подобное
Аноним 26/10/23 Чтв 15:31:14 2895460 671
>>2895448
Причем здесь плюсы только, интересно.
Аноним 26/10/23 Чтв 15:40:04 2895464 672
>>2895448
"x ^ ((x ^ y) & -(x < y));"

"x - ((x - y) & ((x - y) >> (sizeof(int) * CHAR_BIT - 1)))"
Аноним 26/10/23 Чтв 15:55:28 2895479 673
Аноним 26/10/23 Чтв 15:58:44 2895487 674
>>2895464
вот просто интересно, как ты пришел к этому решению? как ты рассуждал, когда писал его? какой тактики придерживался?
Аноним 26/10/23 Чтв 16:12:34 2895504 675
>>2895487
Я прост загуглил "find maximum without branching" и скопипастил код из первого индусосайта в выдаче
Аноним 26/10/23 Чтв 16:14:23 2895505 676
Аноним 26/10/23 Чтв 16:21:06 2895513 677
Аноним 26/10/23 Чтв 16:25:21 2895519 678
Аноним 26/10/23 Чтв 17:23:46 2895585 679
>>2895519
А шарпогоспода может в ковариантность https://dotnetfiddle.net/KuBAkj для интерфейсов
а в тайпскрипте и для классов работает

А плюсы почему-то не хотят даункастинг сами сделать, а как будто прицип подстановки Лисков нарушается...
Аноним 26/10/23 Чтв 17:45:14 2895618 680
>>2895585
>А плюсы почему-то не хотят даункастинг сами сделать
Потому что так как минимум множественное наследование, и правила для даункаста могут быть самые причудливые. Ну и вообще, такой автокаст если и возможен, наверняка будет иметь такие подводные камни, что правильно кодить с ним, учитывая все тонкости, и Страуструп не сможет.
Аноним 26/10/23 Чтв 18:16:54 2895638 681
Аноним 26/10/23 Чтв 20:15:37 2895786 682
>>2895618
>правильно кодить с ним, учитывая все тонкости, и Страуструп не сможет
А Страуструп вообще что-нибудь нашкодил за свою жизнь, кроме самого языка?
Даже библиотеку писал не он.
Аноним 26/10/23 Чтв 20:43:37 2895836 683
Аноним 27/10/23 Птн 17:20:58 2896783 684
>>2895786
Если честно то даже сложно сказать, что он язык "накодил". Изначально это вроде просто был транслятор плюсового синтаксиса в си, а потом уже совершенно другие люди над ним работали.
Аноним 27/10/23 Птн 19:35:55 2896876 685
16968580473010.jpg 165Кб, 960x920
960x920
> 2023
> половина функционала из c++20 стандарта до сих пор не работает
Аноним 27/10/23 Птн 19:46:35 2896892 686
>>2896876
Например?
https://en.cppreference.com/w/cpp/compiler_support/20
Вижу тут только единичные промахи.
С модулями вот правда полный обосрамс, вместо удобства получилось что то невероятно пердольное, но в этом наверное и смысл был, чтобы с++ бояре не остались без работы и было еще больше кишочек разгребать.
Аноним 28/10/23 Суб 12:16:02 2897451 687
> a = std::move(b)
> b все равно вызывает деструктор

Интересное решение, то есть теперь у меня две опции
- Запретить мув к хуям
- Создать новое состояние у обьекта (дохлый, но почему то еще не умер) и в деструкторе каждый раз проверять не умерли ли мы преждевременно

Дизайн 10\10


Я могу быть уверен что после вызова мув конструктора\оператора деструктор ОБЯЗАТЕЛЬНО вызовется у нового значения? Или тоже есть нюанс?
Аноним 28/10/23 Суб 12:27:36 2897469 688
>>2897451
Ты не очень понимаешь что такое мув
Аноним 28/10/23 Суб 12:34:40 2897479 689
>>2897469
А что оно такое совпадает с тем что оно должно делать?
После мува объект должен быть валиден?
У него должны оставаться ресурсы которые ему еще надо будет удалить в деструкторе?

Аноним 28/10/23 Суб 13:03:58 2897505 690
>>2897479
Если у тебя что либо внутри не мувается, это придется удалить.
А в чем проблема вызова деструктора у мувнутого объекта?
Аноним 28/10/23 Суб 13:07:41 2897509 691
>>2897505
>в чем проблема вызова деструктора уже удаленного обьекта
Даже не знаю

>Если у тебя что либо внутри не мувается
Всё мувается прекрасно, в этом проблемы нет
Просто потом удаляется несколько раз
Аноним 28/10/23 Суб 13:37:06 2897534 692
>>2897509
Значит ты неправильно муваешь, если у тебя что-то два раза удаляется. Поинтеры обнуляй.
Аноним 28/10/23 Суб 13:42:55 2897540 693
>>2897534
Аааа, а вызывать деструктор у невалидного обьекта это значит правильно

не ну реально чтоли нельзя было не костыльно сделать?
Аноним 28/10/23 Суб 13:47:37 2897546 694
>>2897540
Да откуда ты взял, что после мува объект невалидный? Он может быть с нарушенным инвариантом, но точно валидным.
Аноним 28/10/23 Суб 13:51:58 2897549 695
>>2897540
>>2897546
Хотя ладно, это необязательное требование, я думал там есть ограничения на мув конструктора.
Вот из стандарта:
Unless otherwise specified, all standard library objects that have been moved from are placed in a "valid but unspecified state", meaning the object's class invariants hold (so functions without preconditions, such as the assignment operator, can be safely used on the object after it was moved from).
И это правильный подход.
В целом и почти единственный, ведь иначе будет почти всегда УБ, а программа с УБ не является программой на С++.
Аноним 28/10/23 Суб 14:11:37 2897577 696
>>2897549
>>2897546
> обьект не невалидный
> но если ты его используешь то УБ и вся твоя программа невалидная
> но компилятор все равно его потрогает в деструкторе, хотя прекрасно видит что не надо

Тем более я вобще никогда не хочу чтобы в деструкторе после мува хоть какой то код выполнялся, кроме проверки на то не смували ли нас случайно

>>2897546
А нахуя мне валидный обьект после мува?
Нахуя мне валидный обьект с нарушенным инвариантом?

Может после деструктора обьект тоже валидным будет оставлять?

ну вобщем спасибо за ответы и что даже в стандарт заглянул, не понимаю как такое умные дядьки могли в стандарт добавить
Аноним 28/10/23 Суб 14:18:28 2897596 697
>>2897577
Хозяин барин, доделай флаг moved.
Хотя мне все равно кажется, что ты что-то накосячил с мув конструктором, раз у тебя delete стреляет.
Можешь показать кусок?
Аноним 28/10/23 Суб 14:22:57 2897601 698
>>2897596
Да я уже починил давно, просто поинтеры зануляю и проверяю в деструкторе не занулены ли они уже
Аноним 28/10/23 Суб 14:37:56 2897621 699
>>2897601
Ну так в этом и суть, в деструкторе всегда надо проверять, указывают ли у тебя на что-то поинтеры, перед тем как очистить.
Аноним 28/10/23 Суб 14:42:01 2897625 700
>>2897601
>>2897621
Не надо ничего проверять, достаточно занулить, удаление нуллптр валидно.
Аноним 28/10/23 Суб 15:35:17 2897703 701
>>2897625
А если ты не делит вызываешь? А какой нибудь glfwDestroyWindow?
Аноним 28/10/23 Суб 16:10:08 2897749 702
>>2897703
То ты тредом ошибся, сишники живут двумя блоками ниже
Аноним 28/10/23 Суб 16:15:06 2897758 703
>>2897749
В си мув семантики славо богу нет
Аноним 28/10/23 Суб 16:39:11 2897778 704
>>2897703
>>2897758
Ты на плюсаз поинтер не мувнешь нинужно точнее мувнешь но нихера не будет. Указатель надо просто копировать а старый нулить.
Аноним 28/10/23 Суб 18:19:19 2897927 705
У треда скоро будет bad week pointer
Аноним 28/10/23 Суб 20:45:45 2898199 706
>>2895322
тут ковариантность в том смысле что простые указатели ковариантны: указателю на базовый класс можно присвоить указатель на производный класс, а смартпойнтеры сохраняют это поведение
то есть это не есть ковариантность в полном смысле этого слова какая подразумевается в теории типов, но все же что-то хоть и обрезанное, но похожее
Аноним 28/10/23 Суб 21:05:50 2898227 707
>>2881994
от того что слишком умный, окружение давит снаружи, мозги давят изнутри
Аноним 28/10/23 Суб 22:02:11 2898320 708
>>2897927
А растотред уже перекатили.
Аноним 28/10/23 Суб 22:48:22 2898365 709
>>2897927
Ты о чём? Тред даже не на последней странице. Или ты из JS-треда, где перекаты делают после 500 постов?
Аноним 28/10/23 Суб 23:39:21 2898444 710
>>2897479
Гугли moved-from objects placed in a valid but unspecified state.
Суть в том, что часть методов можно вызывать, потому что они не зависят от стейта. Например, is_empty(). Если бы объект был невалидный, то было бы нельзя и такой метод вызвать. Но само состояние не специфицировано. Другие методы могут полагаться уже на состояние, и быть определены только когда is_empty() вернул false.
Это аналог неинициализированных переменных. В других языках всегда проверялось бы чтобы каждая была инициализирована, а каждый мув двинул все. Здесь же язык для скорости, и следить за стейтами на программисте.
Аноним 29/10/23 Вск 07:04:41 2898685 711
>>2898444
> Здесь же язык для скорости, и следить за стейтами на программисте.
А что если для скорости после мува не вызывать деструктор объекта?
Ещё и проверки стейта пропадут лишние
Аноним 29/10/23 Вск 07:57:24 2898701 712
Русские послови[...].webm 14391Кб, 640x360, 00:02:34
640x360
>>2898685
>А что если для скорости
Поспешишь - людей насмешишь.
Аноним 29/10/23 Вск 08:38:46 2898714 713
>>2883380
В С++ такое гавно под видом корутин майкрософтовские уроды вроде Гора Нишанова протащили, что блевать хочется. Сравни, например, с корутинами в Луа (конфетка) или даже в Питоне - тривиальная вещь, ничего даже объяснять не надо. В С++-же никто не понимает, и никто не может объяснить.
Аноним 29/10/23 Вск 08:45:43 2898717 714
>>2898701
Плохо учил пословицы. Вот как правильно:
Поспешишь - в жопу пидарас.
Аноним 29/10/23 Вск 11:23:12 2898777 715
07. Demo - Coro[...].mp4 11913Кб, 1280x720, 00:04:28
1280x720
>>2883380
> никто нормально объяснить не может
Курс Pluralsight - What's New in C++20 (Kate Gregory, 2022)
Глава 4. Concurrency Changes
Аноним 29/10/23 Вск 15:27:22 2899062 716
image.png 48Кб, 1496x173
1496x173
Куда файлы .pdb класть, я так и не понял?
Аноним 29/10/23 Вск 19:38:57 2899268 717
>>2883200
>пикрил
сейм хуйня про потоки. Нихуя не понятно

мимо новичок
Аноним 29/10/23 Вск 20:53:04 2899357 718
03. Threads and[...].mp4 10779Кб, 1280x720, 00:06:38
1280x720
>>2899268
> не понятно
Что не понятно?
Аноним 29/10/23 Вск 21:48:06 2899419 719
>>2899357
Блин ты такой умный и потоки не вызывали у тебя даже с первых секунд никаких проблем! жаль только что потоки это причина 95% багов в системе, но а так да, всё легко и просто. А если что не понятно - вон из профессии, быдло!
Аноним 29/10/23 Вск 22:36:15 2899479 720
Давно не был в треде, но тут залетаю на анальной тяге. Увидел я вот этот кал:
https://github.com/GaijinEntertainment/DagorEngine
И у меня возник вопрос - это серьёзно в рашке крестовики такое пишут или там просто аномалия? Я такой поеботы не видел даже и васянов на линуксе. Такой пиздец, что от одного статического анализатора каждые пять строк варнинги идут по коду, для Wall надо половину кода переписывать нахуй. Про стиль кода я вообще молчу, там даже в одном методе могут использовать NULL и nullptr, от имён глаза вытекают нахуй. Как вообще такое калище можно было в паблик выкладывать? И они ещё позиционируют это как удобный движок. Они серьёзно думают этот высер кто-то будет трогать?
Требую пояснений за это у работающих крестовиков. А то уже макаки-питонисты перестают казаться смешными после увиденного. Или это следствие того что крестовикам платят меньше всех?
Аноним 29/10/23 Вск 22:46:41 2899486 721
>>2899479
В геймдеве стандарты ниже, другие приоритеты.
Аноним 29/10/23 Вск 22:50:21 2899488 722
>>2899479
Я должен все это говно перерывать? Неси сюда, что конкретно не нравится, обоссым тебя.
Аноним 29/10/23 Вск 23:12:07 2899506 723
>>2899486
Но когда память выделяется то через new, то через malloc, а потом в деструкторе memfree, то я даже начинаю теряться на каком ЯП они пишут. Это вообще ни под какие стандарты не подходит.
Куча закомменченного кода и todo в комментах к строчкам - а эта хуета точно будет работать нормально?
Там вообще с каждого файла можно отдельно орать.
Аноним 29/10/23 Вск 23:20:13 2899517 724
>>2899479
Открыл рандомный файл, вроде пойдет.
Тащи что именно батхерт вызывает, вместе посмеемся.
Аноним 30/10/23 Пнд 00:59:33 2899600 725
image.png 116Кб, 402x315
402x315
>>2899479
Да допустим и говнокод, на нем вартандер написана, вон даже играет кто-то, а значит деньги зарабатывают - цель выполнена. Ты думаешь в геймдеве клинкод? Во всех играх/движках говнокод, абсолютно везде.
Аноним 30/10/23 Пнд 01:01:33 2899601 726
image.png 41Кб, 568x389
568x389
>>2899479
Там вон даже алгоритм чисто из книжки спиздили, но оно же ведь работает, почему бы и нет?
Аноним 30/10/23 Пнд 01:05:43 2899603 727
image.png 36Кб, 998x539
998x539
Аноним 30/10/23 Пнд 02:12:49 2899624 728
>>2899506
Что не так с маллоком и фри лол?
Аноним 30/10/23 Пнд 09:39:45 2899737 729
>>2899479
>И у меня возник вопрос - это серьёзно в рашке крестовики такое пишут или там просто аномалия?
Это плохой менеджмент, и он не зависит от страны и языка. Когда проект развивается в режиме постоянного аврала, технический долг в миллионы человекочасов, а текучка такая, что средний срок работы специалиста полгода-год, такой результат неизбежен. Они хотя бы сами все пишут, бывает, что проект делает цепочка отсорсеров (например, поляки берут проект и нанимают индусов в два раза дешевле, а те нанимают вообще дешевых филлипинцев) - вот там пиздец гораздо больший.
Аноним 30/10/23 Пнд 09:41:49 2899739 730
>>2899624
>Что не так с маллоком и фри лол?
Надо созданное маллоком удалять через фри, а нью - через делит, и не смешивать.
Аноним 30/10/23 Пнд 10:49:39 2899769 731
>>2899479
1. Это геймдев.
2. Это легаси с 20 летней историей.
Аноним 30/10/23 Пнд 12:44:40 2899915 732
>>2899506
Если проект задействует библиотеки си (а таких много), то без маллока не обойтись.

>точно будет работать нормально?
Ну не будет и не будет, чего бухтеть то? Патчами поправят, график релизов важнее.
Аноним 30/10/23 Пнд 13:18:07 2899957 733
image.png 7Кб, 280x156
280x156
?)
Аноним 30/10/23 Пнд 13:32:35 2899977 734
>>2899957
std::default_random-engine - это псевдоним, за которым чаще всего скрывается mersenne twister engine. А он требует относительно большого буфера.

Алсо, хз как на твоей картинке подсчитан размер, но в debug конфигурации всегда к коду добавляется туева хуча отладочной информации.
Аноним 30/10/23 Пнд 13:37:00 2899980 735
image.png 2Кб, 402x52
402x52
image.png 8Кб, 441x131
441x131
>>2899977
но 5к байт все равно слишком дохуя

> в debug конфигурации
это именно размер переменной
без разницы дебаг или релиз
Аноним 30/10/23 Пнд 13:48:08 2899998 736
>>2899980
>но 5к байт все равно слишком дохуя
Википедия пишет, что 2,5к нужно в сферической реализации в вакууме.
Порядок величин вобщем-то совпадает.

>без разницы дебаг или релиз
А вот хз, у тебя же из библиотеки подтягивается. Дебажный конфиг это фактически отдельная библиотека, другие файлы и они всегда больше весят. Может там оно на гвоздях прибито.
Аноним 30/10/23 Пнд 16:01:16 2900221 737
C++
Аноним 30/10/23 Пнд 18:39:22 2900481 738
да
Аноним 30/10/23 Пнд 21:32:39 2900750 739
изображение.png 271Кб, 476x717
476x717
Аноним 30/10/23 Пнд 21:35:11 2900755 740
с начала нулевых сидел по большей части ридонли на всех тематических форумах где были разделы с крестами, плюс где то с середины нулевых стал популярен живой журнал, почитывал и там посты, ну а потом имаджборды появились с тематикой, плюс еще в самом начале нулевых даже почитывал архивы фидошных гейтов в nntp накопленные с 90х
дак вот, общий вывод печален: полезной информации не было прочитано ни разу, все это было тупо проебыванием моего времени, прямо сказочка о потеряном времени, все это чтение нахуй не нужно
как я догадываюсь, сейчас вся эта болтология перекатилась по большей частью в телегу, где продолжается все та же болтовня и информационный мусор
Аноним 30/10/23 Пнд 23:25:40 2900916 741
ленин.webm 4663Кб, 640x480, 00:01:00
640x480
Пишу программу которая парсит выдачи трех разных программ. Так как в обработке выдач этих програм есть одинаковые действия, то написал класс BaseParser, от которого наследуются классы ProgramAParser, ProgramBParser и т.д. В наследующих классах переопределяются некоторые методы через override и добавляются новые поля.
Как в этом коде элегантно сделать так, чтобы не пересоздавать log? Или лучше писать отдельные парсеры для кажой программы и не ебать мозга общим классом?
int main() {
std::string workdir = "../test/";

std::vector<std::string> log_files = GetLogFilesInFolder(workdir);

std::cout << "Found logfiles:" << std::endl;
for (const auto& file : log_files) {

BaseParser log = new BaseParser(workdir, file);
log->PrintValues();

if (log->GetProgram() == "ProgramA") {

ProgramA
log = dynamic_cast<ProgramA>(log);

}
else if (log->GetProgram() == "ProgramB") {

ProgramA
log = dynamic_cast<ProgramB*>(log); //не фурычит

}

delete log;
}
Аноним 31/10/23 Втр 00:31:32 2901020 742
>>2900916
Вот это работать не будет:
BaseParser log = new BaseParser(workdir, file);
ProgramA log = dynamic_cast<ProgramA>(log);
Ты не понимаешь как ООП в принципе устроено. Даункаст не преобразует объект в наследника из родителя, а просто приводит тип из Parent в Child, если по ссылке на самом деле Child, которого апкастнули в Parent.
Аноним 31/10/23 Втр 06:24:23 2901098 743
>>2899980
>без разницы дебаг или релиз
Вобщето да.
Было бы стремно, если бы в дебаге sizeof() выдавал что-то другое, чем в релизе.
Аноним 31/10/23 Втр 10:15:25 2901200 744
>>2901020
Скажи как сделать по красоте чтобы было. Ты же понял суть что я хочу?
Аноним 31/10/23 Втр 11:01:21 2901262 745
>>2901200
Гугли паттерн фабрика
Аноним 31/10/23 Втр 13:55:52 2901504 746
>>2900916
>выдачи
мочу или говно?
Аноним 31/10/23 Втр 17:50:11 2901738 747
Аноним 31/10/23 Втр 17:55:53 2901744 748
1698764153005.jpg 29Кб, 735x730
735x730
Аноним 31/10/23 Втр 18:10:03 2901771 749
>>2901744
Главное НАЧАТЬ.
Комитет и Страус слов на ветер не бросают. Если сказано, что сделоют - значит сделоют.
Аноним 31/10/23 Втр 18:21:17 2901786 750
>>2901771
Ну и когда это будет реализовано хоть в каком то компиляторе? Лет через 6-9?

Мне бы хоть до компайлтайм рефлексии дожить
Аноним 31/10/23 Втр 18:24:35 2901790 751
>>2901738
Toward the end of the talk, Stroustrup went into more detail. “I’m suggesting that you have module-based controls.” The slide shows how it would work in code.
Найс троллит
Аноним 31/10/23 Втр 19:23:25 2901895 752
Аноним 31/10/23 Втр 19:47:28 2901911 753
>>2901786
Не доживёшь. Кругом дроны, люди тонут в коллекторах, новый штамм короны надвигается, а по весне на головы полетят сосули. Но ты можешь попробовать нормальный ЯП уже сейчас: выбери Rust, выбери жизнь в новом ржавом цвете.

ваши тоже у нас срут
Аноним 31/10/23 Втр 19:57:49 2901915 754
Корпоративный бот не палится >>2901911
Если не будет утечек в памяти, то как ломать неолиберальный кибергулаг, ммм?
Аноним 31/10/23 Втр 20:01:57 2901920 755
>>2901504
Ичо тебе не понравилось, хуйло?
Аноним 31/10/23 Втр 21:31:16 2902048 756
>>2901911
Не нравится борроу чеккер + хочу работу хоть какую то найти
Но спасибо за предложение!
Аноним 31/10/23 Втр 22:05:15 2902063 757
Нравится борроу чекер + РНН.
Аноним 31/10/23 Втр 22:48:16 2902091 758
Аноним 01/11/23 Срд 02:26:47 2902195 759
>>2901920
еще одно оскорбление с переходом на личности и улетишь в бан
Аноним 01/11/23 Срд 06:32:39 2902225 760
>>2902195
Твою мамулю трахал, обоссышь комнатный, ещё ножкой топни хуесосина

мимо проходил, не удержался

>>2902091
Проект кончено классный, но опять таки релилизнится через хзы сколько лет, а пригодным для использования ещё позже станет, а уж работу с ним найти...
К тому времени может и карбон уже появится
Или вообще все на Свифт перейдут
Аноним 01/11/23 Срд 06:43:52 2902226 761
Список всех альтернатив плюсам

- Раст
- переписать все на Свифт
- карбон от гугла
- цпп2/цппфронт

Кого ещё забыл?
Аноним 01/11/23 Срд 06:56:51 2902227 762
>>2902226
кого-то точно забыл. список "убийц крестов" регулярно пополняется с 98 года
Аноним 01/11/23 Срд 07:03:56 2902229 763
Аноним 01/11/23 Срд 08:01:12 2902252 764
>>2902226
Точнее
- Раст
- какая-то хуйня с безопасностью на полшишечки
Аноним 01/11/23 Срд 09:54:02 2902298 765
>>2902226
Val
Circle
Zig (точнее это замена Си)
>>2902252
Безопасность раста сильно переоценена. Да там есть микрописька дополнительная, но там так же куча UB, там unsafe в стандартной либе и так далее. Когда обмазываешь кресты анализаторами и ubsan-ами то разница не так уж велика. Раст это полшажочка вперед, а его выставляют как будто прыжок на 10 метров.
Аноним 01/11/23 Срд 10:34:33 2902331 766
>>2902298
С начал 2019 года пишу на расте, отладчик понадобился единственный раз - когда память потекла из-за бесконечно падающего форка. Собсно, это было в логе, но я не увидел, так как засрал его отладкой.

>Val
Его переименовали в хуйло. Всюду политика, как видишь. Посмотри ещё в сторону vale, у него схожий подход к безопасности.
>Circle
не вчитывался
>Zig (точнее это замена Си)
та самая безопасность на полшишечки. Типа, у них такая семантика, что безопасный код писать приятнее, но никаких гарантий, что конкретно вот этот код безопасен, нет.

Вообще, много их, но без ледокола в виде крупного проекта от корпорации, ни у одного шансов нет. Скажем, если гугл скажет "Всё, переписываем хром на хуитанейм", то все ринутся её учить. Тот же карбон, например, хоть он и тоже на полшишечки.
Аноним 01/11/23 Срд 13:55:18 2902606 767
>>2902331
> 2019 года пишу
> отладчик понадобился единственный раз
Дебажишь в голове свой код?
Или принтами в консольку?
Аноним 01/11/23 Срд 14:38:25 2902677 768
>>2901738
Страус поехавший евангелист, который нашел своё призвание в продаже приставки ++. Что он там пердит на реальность не влияет
Аноним 01/11/23 Срд 16:29:02 2902846 769
>>2902606
Принтами, а как жешь. Ещё на расте есть макрос dbg!, он тебе сразу рисует и значение переменной, и строку в исходнике - больше его юзаю.
Аноним 01/11/23 Срд 19:16:55 2903036 770
1628346084281.png 33Кб, 513x718
513x718
Почему указатель на временный объект остался валидным?
Аноним 01/11/23 Срд 19:24:08 2903048 771
1679509685604.png 35Кб, 745x707
745x707
>>2903036
Отвечаю сам себе. Скорее всего сработал SSO.
Как раз 16 символов скорраптились
Аноним 01/11/23 Срд 21:08:42 2903172 772
>>2902677
Тебе так кажется. Его зовут на все конференции, слушают его мнение и часто делают как он сказал.
Аноним 01/11/23 Срд 21:10:30 2903179 773
>>2902331
Прямой связи между "тебе не понадобился отладчик" и "язык безопасный" нет. Мне тащемта и в с++ редко требуется именно отладчик.
Аноним 01/11/23 Срд 21:10:55 2903180 774
Ну и в чём Страус не прав?
Аноним 01/11/23 Срд 21:20:22 2903193 775
>>2902331
>Circle
>не вчитывался
Почитай, там много полезной инфы на пару вечеров.
https://github.com/seanbaxter/circle/blob/master/new-circle/README.md
На практике мне не понравился правда, пользоваться я им не буду. Но сама идея конструктора языка где ты вкл-выкл фичи забавна.
Аноним 02/11/23 Чтв 15:30:23 2903849 776
Как лечить ООП головного мозга у людей?
Аноним 02/11/23 Чтв 15:46:00 2903873 777
>>2903849
Закрываешь в подвале, даёшь задачу на даймонд инхеритенц, через месяц даёшь учебник по хаскелю. Выпускать не стоит, да и они не захотят выходить.
Аноним 02/11/23 Чтв 16:33:49 2903945 778
>>2903873
Закрыть в подвале не получится. Нужно, чтобы человек сам понял, что структуры с методами решают абсолютно все задачи и перестал городить шаблонное говно с итераторами, виртуальными функциями и прочей шизой.
Аноним 02/11/23 Чтв 16:43:36 2903968 779
>>2903945
Сейчас бы писать 100500 вариантов одной функции для (int, int), (int, float), (int, long), (float, float), (float, short)...
Ахахахпххпхпха
Попустись шиз
Аноним 02/11/23 Чтв 16:55:50 2903995 780
> да ООП этот ваш легкотня ебал в рот его учить
> приходит на собес
> что такое protected
> ох блин, ну это, как там его, ну блин...
Аноним 02/11/23 Чтв 17:10:34 2904024 781
>>2903968
Про void* ты не слышал?
Аноним 02/11/23 Чтв 17:11:59 2904032 782
>>2903995
Меня такое не спрашивали. Да и в любом случае это все за вечер учится. Это же даже не программирование по-сути.
Аноним 02/11/23 Чтв 17:12:13 2904033 783
>>2904024
Ты сейчас серьезно сравниваешь void* с шаблонами?
мимо
Аноним 02/11/23 Чтв 17:17:56 2904043 784
>>2904032
>Это же даже не программирование
А что это?
> а и в любом случае это все за вечер учится
Вот именно, и не знать такое на собесе приговор
Аноним 02/11/23 Чтв 17:20:30 2904051 785
Аноним 02/11/23 Чтв 17:21:33 2904054 786
>>2904043
>А что это?
ООП != программирование. Просто описание какой-либо модели для удобства, можно и без всего этого писать программы работающие.
Аноним 02/11/23 Чтв 17:21:45 2904055 787
>>2903995
Чем отличается абстракция от полиморфизма?
Аноним 02/11/23 Чтв 17:23:02 2904058 788
>>2904043
>А что это?
Онтология. Философскиая наука о разделении сущного на частности и давание им названий.
Аноним 02/11/23 Чтв 17:23:43 2904061 789
>>2904054
С++ != программирование, просто описание какое то модели вычисления для удобства, можно и без всякого с++ писать программы работающие

ты сам то понимаешь вобще что пишешь?
мы вам перезвоним

>>2904055
значением
Аноним 02/11/23 Чтв 17:25:06 2904066 790
>>2904061
ООП не программирование.
Аноним 02/11/23 Чтв 17:25:55 2904067 791
Аноним 02/11/23 Чтв 17:26:28 2904068 792
>>2904066
>Объектно ориентированное программирование
>не программирование
Аноним 02/11/23 Чтв 17:27:03 2904069 793
>>2904061
Каким еще значением?
Аноним 02/11/23 Чтв 17:27:48 2904074 794
Аноним 02/11/23 Чтв 17:29:51 2904082 795
>>2904074
Ну так напиши эту разницу
Аноним 02/11/23 Чтв 17:32:47 2904091 796
Ебааать. Свидетелей полиморфизма полон тред. Вы в курсе, что самая популярная прошивка для роутеров Linoops написана на C и никто от этого не умер нахуй.
Аноним 02/11/23 Чтв 17:36:28 2904099 797
>>2904091
От этого буквально умерло много людей. Си убивает.
Аноним 02/11/23 Чтв 17:37:35 2904101 798
>>2904068
В функциональном программировании слово программирование тоже присутствует.
Аноним 02/11/23 Чтв 17:38:39 2904107 799
Опять троллинг от студентоты

>>2904091
> Свидетелей полиморфизма полон тред.
Полиморфизм преспокойно живет и без ООП

> Вы в курсе, что самая популярная прошивка для роутеров Linoops написана на C и никто от этого не умер нахуй.
А раньше эти прошивки преспокойно писали на ассемблере, получается С\С++ это не программирование?

>>2904101
и?
Аноним 02/11/23 Чтв 17:44:45 2904119 800
>>2904024
То есть ты послал нахуй типо безопасность и взял в руки дубину тайп эрейжур?
Даже несмотря на то, что чел сверху хуйню написал, шаблоны могут существовать и без объектов.
Аноним 02/11/23 Чтв 18:36:01 2904204 801
>>2904119
>То есть ты послал нахуй типо безопасность и взял в руки дубину тайп эрейжур?
Да ебать
Аноним 02/11/23 Чтв 19:50:45 2904314 802
>>2904107
>А раньше эти прошивки преспокойно писали на ассемблере, получается С\С++ это не программирование?
Не получается. Асм - это тоже пердолинг, как и цпп.Только другого рода.
Аноним 02/11/23 Чтв 20:54:13 2904415 803
C++ Primer, Primer Plus или книга от Страуструпа? Хочу выучить плюсы для себя, сделать то что начал ещё в школе начал хуево, с видосиков в ютубе, и в итоге бросил. Сам девопс, все что хотел знать в этой сфере уже вроде выучил, поэтому решил добить таки этот ЯП.

В программировании не совсем новичок, знаю Python и Go потому что надо, плюсы тоже в какой-то степени но только базис ООП, не глубже. Делал лабы на win32 в вузике и курсач на Qt. Хотя по большому счету на этом всё, на Питухоне я только скрипты пишу, Go в реальности так и не понадобился, так что я не сказать что прям программист. Но плюсы я слабо понимаю, стоит зайти и посмотреть на комплексный код как тут же приходит охуевание, да и в этом треде уже вижу много того чего не понимаю совсем. Хочу разобраться с языком поподробнее, чтобы понимать его как можно лучше, а не тупо знать как сделать какие-то базовые вещи. После того как освоюсь с ним, наверное, буду ковырять SDL. Писать игрульки было моей мечтой и пусть профессиональный гейдевом я не стану слава богу то хоть для себя буду что-то тыкать палкой, мб какое-то говноинди когда-то да выйдет.
Аноним 03/11/23 Птн 05:09:39 2904622 804
>>2904415
>C++ Primer, Primer Plus или книга от Страуструпа?
если
>хочу разобраться с языком поподробнее, чтобы понимать его как можно лучше
то Липпман онли.
Исчерпывающей книжки по плюсам вообще не существует, забудь про это. С++ - язык непознаваемый, чем раньше ты смиришься с этим фактом, тем лучше будешь в нем ориентироваться.
Тем не менее, из переводов на русский, книга Липпмана наиболее полна как по охвату материала, так и по глубине. Из минусов - высосанные из пальца, недоопределенные задачки и примеры, а так же муторный стиль оформления кода.
Время на нее ты потратишь больше, но это не будет зря потраченным временем. В дальнейшем ты будешь гораздо меньше тупить, читая другие книжки, статьи, гайды, справочники.

Прату ты прочитаешь быстрее, Прата объясняет хорошо, но рассказывает не про все. Эту простоту ты берешь в долг, тебе все равно придется как-то откуда-то доучивать то, о чем умолчал Прата.
Можешь попробовать решать из нее задачки читая Липпмана, они там поприятней.

В книжке "с гусями" Страуструп хочет тебе показать побольше, не особо вдаваясь в объяснения почему так, а не иначе.
Книжка с горами на обложке ее вроде как перевели совсем не для вкатунов.

>буду ковырять SDL. Писать игрульки
SDL, SFML есть и для питона, и для сисярпа. Тебе нужен для этого C++.

>плюсы я слабо понимаю, стоит зайти и посмотреть на комплексный код как тут же приходит охуевание
Вот только ради б-га не надо на это смотреть как на какой-то челлендж для твоего интеллекта. Нету в cpp чего-то действительно интеллектуального, чего нет в других языках.
Сложность С++ обусловлена историческим нагромождением инженерных решений, плохо согласованных между собой. Сложность С++ выражается том, что к почти любому правилу прилагается список оговорок, исключений и особых случаев, в разы превосходящий по объему само правило.
Аноним 03/11/23 Птн 05:10:36 2904623 805
>>2904622
>Тебе нужен для этого C++.
⚹ не нужен
Аноним 03/11/23 Птн 06:24:18 2904630 806
Аноним 03/11/23 Птн 10:59:11 2904768 807
>>2904622
>>2904630
Кстати да. Особенно удивило как про сложность рассказал. Давно такого не встречал и полностью согласен.
а вообще ето правило работает не только к плюсам, но вообще к большинству всей херни в жизни ящитаю
Аноним 03/11/23 Птн 13:25:29 2904982 808
>>2847323 (OP)
Нужно ли в плюсах чистить объекты типа vector или map после их использования?
Аноним 03/11/23 Птн 14:05:25 2905016 809
>>2904982
Это зависит. Хочешь чисти хочешь нет.
Аноним 03/11/23 Птн 15:08:31 2905067 810
>>2902225
>Твою мамулю трахал, обоссышь комнатный, ещё ножкой топни хуесосина
еще раз такое напишешь - репорт и ты в бане
Аноним 03/11/23 Птн 15:47:26 2905131 811
16450153374170.jpg 18Кб, 480x325
480x325
Аноним 03/11/23 Птн 16:17:33 2905191 812
>>2905067
Разве ты уже не делал последнее китайское предупреждение? Получается твои угрозы ничего не стоят..
Аноним 03/11/23 Птн 16:19:25 2905195 813
16654762758820.png 377Кб, 811x987
811x987
Аноним 03/11/23 Птн 17:54:25 2905305 814
>>2904091
>Вы в курсе, что самая популярная прошивка для роутеров Linoops написана на C и никто от этого не умер нахуй.
Да, а еще я в курсе, что ты никогда не открывал код этого самого Линупса, иначе бы знал, что там код написан в ООП стиле.
Аноним 03/11/23 Птн 19:09:00 2905481 815
есть разбирающиеся в QT? Создал в проекте класс MyGLWidget, наследующийся от OpenGLWidget, определил нужные функции, подключил хедеры и все такое. Потом через "Promote to..." промоутнул нужный объект до этого класса.
При компиляции выдает ошибку "myglwidget.h file not found". Этот хедер инклудится в (автоматически сгенерированном) ui_mainwindow.h, который находится хуй пойми где, и видимо поэтому не может найти этот хедер. Как пофиксить?
Аноним 03/11/23 Птн 20:28:39 2905567 816
>>2904091
Строго говоря Линукс написан не на Си, а на Си с GCC Extension, это другой язык с отличающимся от стандарта набором фич.
https://gcc.gnu.org/onlinedocs/gcc/C-Extensions.html
Была где-то паста, но я ее потерял.
Бросаются в глаза - массивы нулевой длины, пустые структуры, неконстантные инициализаторы, case ranges (case 1 ... 5), арифметика с *void указателями, вложенные функции, вложенные объявления внутри выражений, typeof, сокращенный тернарный оператор x?:z и тд
Аноним 03/11/23 Птн 21:06:46 2905606 817
>>2905481
Хз что за дичь, лет 5 как с работы ушел не ртсал на кути, но:
никогда не используй автогенерацию форм - пиши все руками, так и научишься лучше и лейаут ыорм будет в точности таким как хочешь.
Аноним 03/11/23 Птн 21:58:49 2905665 818
>>2905481
Хуй пойми что ты высрал и что тебе вообще надо, какой еще OpenGLWidget? Зачем тебе это? Вряд ли даже кто на кутах веслает пользуются этим говном.
А по описанной тобой проблеме дело скорее в файле сборки, смотри что у тебя там qmake, cmake и пропиши системе сборки где какой хедер лежит
Аноним 03/11/23 Птн 22:19:29 2905689 819
>>2905305
когда то давно мне дали такой совет: хочешь посмотреть как пишут на хорошем си, смотри исходники фряхи, а на ядро линукса забей
Аноним 03/11/23 Птн 23:46:34 2905775 820
>>2905481
Теневая сборка включена? Если да, то попробую офнуть или наоборот, не помню. Название файла точно совпадает? Он точно существует там где его ищет кумакя?
ui_zalupa файлы генерятся в папке билда.
Аноним 03/11/23 Птн 23:47:31 2905776 821
>>2905606
Если руки не из жопы и то и в дизайнере можно красоту делать, а главное в 50 раз быстрее, кабанчик визжит от радости
Аноним 04/11/23 Суб 03:19:04 2905826 822
image.png 5Кб, 490x87
490x87
image.png 62Кб, 698x550
698x550
>>2904622
> С++ - язык непознаваемый, чем раньше ты смиришься с этим фактом, тем лучше будешь в нем ориентироваться.
Я это и так знаю. Поэтому не написал "понять полностью" а "как можно лучше".
> Тем не менее, из переводов на русский
Инглиш онли. CS и всё что рядом должно быть на инглише, чтобы не охуеть потом от документации. Ладно там как совсем первую книгу совсем нюфагам, но я псина стрелянная.
> книга Липпмана наиболее полна как по охвату материала
Я приложил пару скринов из книги Страуструпа. Это в разделе про указатели, тут он затрагивается довольно таки поздно что модет даже хорошо для нешарящих ну совсем. Полистав я понял что он свой хэдер написал и там много чего упростил чтобы не приходилось разжёвывать то чего неокрепший ум пока не поймёт. У Липпмана никаких рисунков нет, только пара примеров. Оценка на глаз, однако структурно Страуструп явно более мягкий подход использует, Липпман просто проходится по фичам без подробных объяснений с примерами. Что как бы звоночек.
Ирония в том что ни один не показывает что, так как в конечном счёте память это 0 и 1 в большом количестве, то один и тот же кусок можно прочитать как совершенно разные вещи (int/float или long/double) и не почувствовать подвоха. Ну или я плохо искал.
> Время на нее ты потратишь больше, но это не будет зря потраченным временем.
Чисто по страницам +/- одинаково же.
> SDL, SFML есть и для питона, и для сисярпа.
> питон
Сам думал что писал?
> сисярп
В новой его версии можно добавлять поля в интерфейсы. ПОЛЯ. В. ИНТЕРФЕЙСЫ.
Лучше бы на Го уже советовал, хотя без ООП там будет сложновато делать что-то прям комплексное я правда не собирался.
> Сложность С++ обусловлена историческим нагромождением инженерных решений
Как по мне, скорее техническими нюансами работы компьютера. Динамических массивов нету не потому что хуёвое инженерное решение а потому что просить и возвращать память у аллокатора надо руками. Если оставить это дело на автоматику то оптимизаций под конкретно твой юзкейс не жди.

Короче, спасибо за совет, наверное буду пытаться обе чтобы сложить своё мнение по обоим. ХЗ, как у меня это выйдет, но попытка не пытка. Пока "книга с гусями" своими графическими презентациями привлекает больше просто потому что я ХЗ как без этого объяснять что такое память компьютера и почему именно от дауна за монитором зависит как она будет использоваться.
Аноним 04/11/23 Суб 03:22:46 2905828 823
Аноним 04/11/23 Суб 16:06:56 2906210 824
Iteration Revisited: A Safer Iteration Model for C++ - Tristan Brindle - CppNorth 2023 - YouTube
https://www.youtube.com/watch?v=l3AxYei17ls

1
Интересно на сколько весомы призывы NSA и на что они могут повлиять. В каждом видосе вспоминают про них, такой там у них переполох в курятнике.

2
>плюсобляди все еще разбираются как правильно итерировать коллекции
>шел 2023 год

>>2905826
>ПОЛЯ. В. ИНТЕРФЕЙСЫ.
промытая манька
Аноним 04/11/23 Суб 17:10:11 2906290 825
>>2906210
>Интересно на сколько весомы призывы NSA и на что они могут повлиять.
Ахуеть как много на что, на то они и АНБ
Но понятное дело это америкосов в 99% случаев касается

хотя все еще это происходит в рамках "эдвайся", а не запрета

> плюсобляди все еще разбираются как правильно итерировать коллекции
Там они еще и рейнджами умудрились дохуя всего поломать, что еще стандарта 3 чинить придется
Аноним 04/11/23 Суб 17:32:13 2906324 826
>>2906210
>Интересно на сколько весомы призывы NSA
Довольно таки сильно. Не забывай что ты живёшь в мире даунов. Для многих плюсы это сложно. Поэтому софт от этих многих на нём будет дырявым калом с утечками и UB на каждом ходу.
>промытая манька
А что хорошего в том чтобы иметь переменные в интерфейсах? Может тогда ещё глобальные переменные сделать чем-то обычным? Да и вообще, задача передавать что-то куда-то такая частая что нахуя локальные переменные, теперь все переменные объявляются в глобальном скоупе независимо от места.

Вот я рофлю а они реально могут такое выкинуть.
Аноним 04/11/23 Суб 17:56:48 2906364 827
>>2906324
>Для многих плюсы это сложно.
в реальности как будто это не так)
Аноним 04/11/23 Суб 18:01:01 2906380 828
>>2906324
>А что хорошего в том чтобы иметь переменные в интерфейсах?
А что плохого?

> Может тогда ещё глобальные переменные сделать чем-то обычным
А для тебя глобальные переменные это что необычное?
Да и при чем тут они вобще, какое отношение к интерфейсам и переменным в них имеют?
Аноним 04/11/23 Суб 20:28:18 2906695 829
>>2906380
>А что плохого?
Лол, в том что они порождают говнокод. Интерфейсы нужны ради композиции в основном в Шарпе. Знаю потому что у меня препод в шараге по нему был сеньйором. А так это считай то же самое что и абстрактный класс. Нахуя тогда он нужен вообще? Один можно убрать. Не говоря уже о том что при наследовании переменные по-своему работают в Шарпе.
>А для тебя глобальные переменные это что необычное?
Ну я их избегаю. Представь какой кал будет если все переменные станут глобальными.
>Да и при чем тут они вобще
Порождают такой же говнокод как и интерфейсы с переменными. Глобальные правда хоть чуть-чуть полезны, использовать можно где реально выгодно.
Аноним 04/11/23 Суб 20:38:13 2906717 830
>>2906695
> Знаю потому что у меня препод в шараге по нему был сеньйором.
Понятно, делать так нельзя, потому что злой преподаватель накричит и наругает
Аноним 04/11/23 Суб 21:47:19 2906916 831
>>2906717
Да нет, знаю потому что никто в здравом уме этого использовать не будет. Он говорил что если кто-то начал бы переменные в интерфейсы совать то в его проектах там половина кода поедет по пизде и это заебуться чинить. Ты нормальные контраргументы приводи, не буквоедство уровня двоща.
Аноним 04/11/23 Суб 21:56:21 2906943 832
>>2906695
Ты не думаешь что размышлять такими шаблонами в языке, который предоставляет тебе наибольшее количество контроля как программисту - порочная практика? На этом поле дозволено всё.
Да, в шарпах можно прикручивать какую-то идеологию и следования принципам конкретных людей, потому что сам по себе язык коммерчески направленный и заточен под определенные задачи.

А вообще, если ты хочешь привести какие то аргументы, то лучше это делать на примерах конкретных, иначе разговор совсем беспредметен. Я вот не вижу ничего такого в интерфейсной переменной, она может быть сильно связана с классом и наследниками, в чем проблема?

В каком-нибудь си ооп вообще только и основано на переменных, это всё просто средства языка, и да, в плюсах нет понятия интерфейса как категории как в шарпах например
Аноним 04/11/23 Суб 21:57:22 2906946 833
>>2906916
> никто в здравом уме этого использовать не будет
Ну раз ты так сказал...

> половина кода поедет по пизде
Не пойдет
Аноним 04/11/23 Суб 22:31:46 2906991 834
>>2906695
>Лол, в том что они порождают говнокод.
Интерфейс с полями и дефолтной реализацией методов - это один из вариантов миксина. Они широко используются в других языках и сами по себе говнокодом не являются, говна с помощью чего угодно навертеть можно.
Аноним 04/11/23 Суб 23:33:32 2907060 835
>>2906210
В каком то языке итераторы не инвалидируются если удалять прямо в цикле?
Аноним 05/11/23 Вск 00:32:31 2907129 836
>>2907060
Никакой язык не разосрется сегфолтами при этом или еще чего похуже. но это не точно
Аноним 05/11/23 Вск 00:42:28 2907137 837
>>2907129
Ну ты почитай все таки. Ну да где то будет nullpointerexception
Аноним 05/11/23 Вск 00:52:45 2907142 838
>>2907137
Чего мне почитать, клоунесса, я в отличии от тебя знаю разницу между nullpointerexception и сегфолтом.
Аноним 05/11/23 Вск 00:59:40 2907146 839
>>2907142
Ну расскажи же в чем разница, когда на Java или C# программа падает с окошечком. Пиздец первокурсники в треде растекаются.
Аноним 05/11/23 Вск 01:08:17 2907151 840
>>2907146
>Ну расскажи же в чем разница
Могу только хуем тебе по губам провести.
>Пиздец первокурсники в треде растекаются.
Ты сам откуда вылез такой умственно неполноценный? Свободное времечко выдалось посреди школьных каникул?
Аноним 05/11/23 Вск 06:14:10 2907181 841
>>2907060
Во многих языках итераторы могут иметь ссылку на сам контейнер, как раз для того чтобы такой хрени не было
Аноним 05/11/23 Вск 08:44:36 2907202 842
>>2907181
В Java и C# ты получишь IllegalStateException / InvalidOperationException
Правда там есть какие то коллекции, которые делают "снепшот" (наверное ленивую копию) и ты продолжаешь итерировать по старой коллекции
В питоне будет RuntimeError или порча коллекции
JS судя по всему не упадет, но может скипать элементы или зациклиться
В Го, не очень понял, судя по всему надо копировать коллекцию, что будет если менять не знаю.
В общем доеб до итераторов в с++ звучит мега странно.
Аноним 05/11/23 Вск 09:04:09 2907206 843
>>2907202
Ну получить эксепшен это уже отлично
Аноним 06/11/23 Пнд 00:27:12 2908446 844
Что делать с констатными полями класса, если я хочу сохранить для объекта мув оператор=?
Референсы я научился обходить, с помощью std::reference_wrapper<T>
Аноним 06/11/23 Пнд 10:47:50 2908625 845
16025693092500.png 131Кб, 447x478
447x478
Аноним 06/11/23 Пнд 11:50:22 2908697 846
>>2908446
Какой же охуенный язык, с которым тебе надо бороться, вместо того, чтобы писать код.
Аноним 06/11/23 Пнд 12:02:35 2908710 847
>>2908625
Не думаю что подходит в моем случае
Плюс я хочу оставить константность данных, чтобы я не могу изменить значение переменной


видимо самое верное решение забить хуй на конст, даже в guidelines сказано не использовать референсы\констность, значит так и буду делать

>>2908697
Есть такое
Аноним 06/11/23 Пнд 12:02:43 2908711 848
Аноним 06/11/23 Пнд 12:21:47 2908727 849
>>2908711
Да я это первым делом видел, но подумал может все таки есть надежда
Аноним 06/11/23 Пнд 15:06:59 2909034 850
1699272238336.jpg 26Кб, 415x331
415x331
>>2906943
>>2906946
>>2906991
Удачи вам работать с этим интерфейсом.

Если что то это вольная перепись вполне реального кода написанного каким-то дауном на стартапе, я просто попросил шарписта с работы передать суть с минимумом кода. Что тут делает sealed и нахуя вообще что-то подобное писать я не знаю, мне тоже интересно. Факт того что кто-то подобное высрал остаётся фактом.


Как же хорошо когда стартапчик новый и можно легко переходить даже на RC версии фреймворков. И слава богу я девопс и не мне потом разгребать такое.
Аноним 06/11/23 Пнд 16:14:07 2909201 851
>>2909034
Что сказать то хотел? Наговнокодить можно при помощи любых паттернов.
Аноним 06/11/23 Пнд 16:25:37 2909221 852
>>2909034
>Удачи вам работать с этим интерфейсом.
Ты в плюсотреде вообще, у нас тут множественное наследование, интерфейсов вообще нет. В итоге, кстати, шарп и джава к похожей модели пришли, потому что это практично.
Аноним 06/11/23 Пнд 17:14:03 2909314 853
>>2909034
Как сказали выше, ты в плюсо треде
ПРОСТО не пиши плохой код
Аноним 06/11/23 Пнд 17:17:06 2909318 854
>>2909201
В более старых шарпах это не было так легко. Ну хотя бы потому что переменные или sealed в интерфейсе кидали ошибку. Новые версии позволяют каком-то дауну просто положить нахуй всё на ровном месте. Да, так можно было сделать и раньше, просто сейчас способов стало больше. И это не понятно опытным шарпистам, так как в отличии от плюсов, шарп не системный язык и выдать возможность написания говнокода за оптимизирующую уловку не выйдет.
>>2909221
>Ты в плюсотреде вообще
Знаю, просто какой-то додик начал доказывать что шарп идёт в правильном направлении. Сеньор в геймдеве говорил что хуйня, мидлы на бэке говорят что хуйня, зато рандому с двача норм, забавно.
>у нас тут множественное наследование, интерфейсов вообще нет
Я в курсе. Интересно, в плюсах композицию вообще никак не сделать? Только наследование?
Аноним 06/11/23 Пнд 17:27:35 2909339 855
>>2909318
>Сеньор в геймдеве говорил что хуйня, мидлы на бэке говорят что хуйня
Потому что у них кругозор - только шарп, они ничего другого не видели, и не понимают, как новую возможность можно использовать, поэтому она их и пугает. А так в скале есть множественное наследование, в окамле есть множественное наследование, в плюсах кроме самого множественного наследования, миксины с CRTP - довольно частая идиома, в скриптовых языках можно вообще любую хрень сделать, и все едят и нахваливают.
Аноним 06/11/23 Пнд 17:28:44 2909342 856
>>2909318
>Интересно, в плюсах композицию вообще никак не сделать? Только наследование?
В смысле? В плюсах как везде: добавил поле в класс - вот тебе и композиция.
Аноним 06/11/23 Пнд 19:29:13 2909598 857
>>2909318
Какая разница что там в шарпах? Речь шла про плюсы. Язык не представляет собой коммерческую поделку для шлепанья, он задизайнен в ответственность программисту, и если ты высрал хуевый код, то это твоя вина.

Да, классно рассуждаешь, бро. Смотри я тоже так могу: авторы и разработчики языка развивают его в нужном им направлении, но вот аутсосным гребцам и гейдевелоперам из жопы мира где не высрали никакой внятной игры это не нравится, давайте ка пиздуйте всё по новой переделывать, не нравится, правда а че им не нравится то я высрать из себя не могу, да и сеньеры ебаные помидоры тоже не могут. Но вот чето не нравится, а стойте - код который они сами же и срут в редактор их не устраивает
Аноним 06/11/23 Пнд 21:06:11 2909816 858
>>2908697
Звучит как описание раста
Аноним 06/11/23 Пнд 21:10:10 2909824 859
>>2909318
>>2909342
Композиция это скорее если у тебя vector<baseobject>. Тогда их можно и на лету добавлять убирать, ну и обрабатывать их каким нибудь range for each.
Аноним 06/11/23 Пнд 21:23:42 2909837 860
>>2909318
стандартная библиотека шаблонов вообще то и является примером идеи композиционного программирования, в воспаленной голове создателя библиотеки вы все должны были бы объединять между собой стандартные и собственные операции (алгоритмы и объекты-функции) при помощи предикатов, связывателей, адаптеров, отрицателей, а далее уже применять их по отношению к контейнерам, широко использовались для этого к примеру возможность перегрузки операторов в языке, особенно возможность перегрузки оператора вызова ()
естественно подобный обскур си-макаки никак не могли уложить в свою головушку и продолжили дружно обходить контейнера в циклах высирая лесенки из ифов
Аноним 07/11/23 Втр 06:15:47 2910054 861
image.png 215Кб, 512x512
512x512
image.png 751Кб, 960x504
960x504
>>2909837
>обходить контейнера в циклах
>лесенки из ифов
Аноним 07/11/23 Втр 09:56:33 2910212 862
scale1200.jpg 87Кб, 1200x1200
1200x1200
Сап двач, есть функция, принимает двумерный вектор, возвращает новый вектор. Если вместо возврата вектора, просто редачить принятый вектор через указатель в памяти, меньше оперативы жрать будет?
Аноним 07/11/23 Втр 10:03:44 2910227 863
>>2910212
Да, будет жрать меньше.
laba1.cpp?
Аноним 07/11/23 Втр 12:45:52 2910394 864
>>2909837
>высирая лесенки из ифов
Ну так лесенка из ифов эргономичнее, чем залупа с итераторами из STL, где перед глазами нечитаемая стена из begin(), end().
Аноним 07/11/23 Втр 13:04:18 2910427 865
> лесенка из ифоф
> фуууууу
> лесенка из лямбд
> омномном
Аноним 07/11/23 Втр 15:11:13 2910695 866
Свитч кейс сына
Аноним 07/11/23 Втр 16:42:36 2910887 867
дафф девайс наху
Аноним 07/11/23 Втр 17:17:17 2910927 868
IMG1284.png 6Кб, 512x512
512x512
Доброго времени суток, уважаемым погромистам. Начал вкатываться в cpp и интересует, какую литературу стоит читать. Основываясь на вашем опыте, подскажите пж, чего взять.
Аноним 07/11/23 Втр 18:02:28 2910969 869
>>2910927
Майерс
И прогать. Много прогать
Аноним 07/11/23 Втр 18:25:02 2911000 870
>>2910212
твоя функция, прости господи, должна как минимум принимать диапазон выраженный в итераторной паре, а в идеале это должен быть обобщенный алгоритм работающий над любым контейнером, к которому подходит тип примененного итератора
пишите на си++ утырки ебаные
Аноним 07/11/23 Втр 18:46:03 2911035 871
>>2910927
вначале К&R
потом Страуструп "Язык программирования С++ Специальное издание" (это третье издание, 98 стандарт)
хуяришь упражнения в обеих, не хуяришь упражнения - идешь нахуй
тех кто будет советовать то что не нужно знать си перед изучением с++ (те как минимум не прочитать с проработкой упражнении К&R) можешь обоссать
тех кто будет утверждать что можно сразу начинать пердолить на космическом стандарте с++24 27 или какой там текущий, не читая старых книжек можешь так же обоссать
НЕ читай последних книг страуструпа, старик обленился, сидит в своем морган стенли получая лям в год и нихуя не делает, только бухает и попердывает иногда на конференциях
ПОТОМ уже читаешь охуительную книгу Майерса 2014 года "Эффективный и современный С++" по сути единственная книга которая может доходчиво сделать хотя бы введение в новые стандарты языка с11 и с14 и не охуевать при этом
Заполировать можешь все Вандервудом "Шаблоны с++" второе издание 18 года, ибо без шаблончиков никуда эта поебота теперь везде
Но это так, базовый минимум вообще то чтобы просто хотя бы на водичке держаться а не сразу камнем на дно
все я кончил
Аноним 07/11/23 Втр 18:52:27 2911043 872
>>2911035
Ахуенный гайд как НЕ вкатиться в плюсы
Вся эта хуйня нужна когда ты УЖЕ устроился и работаешь
Мимо имхо
Аноним 07/11/23 Втр 18:58:32 2911054 873
>>2910969
Чел сверху >>2911035
написал за мейерса браться в последнюю очередь. Че думаешь?
Аноним 07/11/23 Втр 18:59:43 2911059 874
>>2911043
Так а что нужно доя продолжения вката? Немного героина для бодрости духа
Аноним 07/11/23 Втр 19:01:13 2911061 875
Всё тот же >>2910927 чел
Мне тут про acmp сказали. Типо тренить. Норм идея?
Аноним 07/11/23 Втр 19:13:06 2911076 876
>>2911059
Зис чтобы осознать масштабы проблем
>>2904622
Затем прогать. Много прогать. И когда ты на практике повидаешь кучу хуев переходить к книгам выше. Будешь понимать что тебе конкретно нужно и что читать, таргетно.
Аноним 08/11/23 Срд 14:55:28 2912220 877
>>2911054
Мейерс это не учебники по плюсам. Это сборники советов для тех, кто уже знает язык и пишет программы.
У тебя должен быть под руками проект, над которым ты работаешь. Прямо по мере чтения Мейерса нужно примерять его советы к своему проекту, иначе у тебя в голове ничего конкретного не отложится кроме имени его собаки.

И вообще, дроч на Мейерса - это тема из нулевых годов, когда ни литературы толком не было, ни гайдов в интернетах. Пишет он доступно, читать приятно. Но когда ты до него созреешь, ты так или иначе уже примерно половину будешь знать из источников вроде хабры, stackooverlow и т. п.

Кроме книжек, пользуйся статическими анализаторами.
Аноним 08/11/23 Срд 15:03:51 2912232 878
>>2911000
Бля иди нахуй со своим сленгом, чтоб тебя лесенкой из ифов на легаси удивили
Аноним 08/11/23 Срд 23:11:47 2913272 879
image.png 329Кб, 805x1159
805x1159
image.png 333Кб, 824x1149
824x1149
image.png 279Кб, 783x1157
783x1157
>>2911000
>в идеале это должен быть обобщенный алгоритм работающий над любым контейнером
Аноним 09/11/23 Чтв 17:38:35 2914387 880
image.png 18Кб, 606x186
606x186
Господа помогите и подскажите пожалуйста
захотел добавить в проект библиотеку gli через cmake
( https://github.com/g-truc/gli/blob/master/manual.md )
я раньше просто устанавливал библиотеки через консоль и добовлял в команду target_link_libraries() cmake файла названия библиотек и все работало. Как я понял для них есть Find{libName}.cmake, которые это делают.
я скачал gli, вызвал cmake, далее build\make install и получил пик1.
Зачем мне нужны последние 3 файла и как мне добавить библиотеку в проект не прописывая полный путь к каждому хэдеру библиотеки?
Аноним 09/11/23 Чтв 18:27:54 2914466 881
>>2914387
Раз уж ты используешь симейк то и добавляй в СВой стмейк файл.
Аноним 09/11/23 Чтв 19:06:44 2914508 882
>>2914466
Ну я и хотел в cmake своего проекта добовлять,
но я не понимал что прописать туда надо.
но немного разобрался что надо было прописать :
list(APPEND CMAKE_MODULE_PATH "/usr/local/lib/x86_64-linux-gnu/cmake/gli")

find_package(gli REQUIRED)

то-есть путь к target файлу или find файлу. А предыдущем ответе я как раз спрашивал зачем там на пик1 targets.cmake. Ну я к нему путь и прописал и cmake нашел все файлы
Аноним 09/11/23 Чтв 20:01:04 2914574 883
>>2911035
Си вредно читать до Си++, у тебя случится Си головного мозга и ты будешь прибавлять голвые указатели и ехать UB через UB. Си конечно потом можно изучить чтобы знать подводные, но вкатываться с него - испортить себе всю жизнь.
Аноним 09/11/23 Чтв 21:01:41 2914645 884
>>2914574
> Си вредно читать до Си++
Самое тупое что я слышал в этом треде
Ты про си++ знать не будешь без си
А все что сможешь написать это всякие велосипеды на стл, причем даже не будешь знать что там творится внутри, потому что неожиданно окажется что внутри там:
> прибавляние голвых указателей и UB через UB
Аноним 09/11/23 Чтв 22:17:33 2914742 885
>>2914645
Понимаю, трудная мысль, но ее сам Страуструп преподает и это правильный подход.
Стл это не велосипеды, лол, это штатный способ писать на с++, велосипеды это как раз сишники начинают писать нихера не зная.
То что творится внутри для начала знать не обязательно, достаточно выполнять контракты стл, детали уже можно выяснить в процессе.
Аноним 09/11/23 Чтв 22:18:50 2914744 886
Аноним 09/11/23 Чтв 22:23:20 2914755 887
>>2914742
> То что творится внутри для начала знать не обязательно
Это имхо очень важная мысль.
Изначально ты можешь пользоваться технологией/возможностью как черным ящиком, и погружаться в нее только тогда, когда сам поймёшь что пришло время. Как студент ты должен попробовать максимальное количество кала за минимальное время, чтобы понять от какого тебя меньше всего воротит. Разбираясь в кишках СТЛ или в процессе написания собственного компилятора С ты прекрасно изучишь язык, но надо ли оно тебе пока твоя цель получить после диплома работу? Время - конечный ресурс.
Нет никакого стыда в том, чтобы не знать как РЕАЛЬНО устроена хеш мапа, достаточно знать сложности по времени и памяти.
Аноним 10/11/23 Птн 07:27:18 2915019 888
>>2914742
> Понимаю, трудная мысль, но ее сам Страуструп преподает и это правильный подход.
А сам Страуструп как учил?
Большинство тех кто такое пиздит как язык учили?

> Стл это не велосипеды, лол, это штатный способ писать на с++,
То то на их дохуя кто не использует

> То что творится внутри для начала знать не обязательно
Ахуенно звучит, зачем с основ учиться
В университете обычно так и делают, например матан просто скипают, похуй, потом изучат
Аноним 10/11/23 Птн 08:27:54 2915079 889
>>2914755
> Нет никакого стыда в том, чтобы не знать как РЕАЛЬНО устроена хеш мапа, достаточно знать сложности по времени и памяти.
Это не стыд, это необходимость
Ты обязан знать как там все устроено чтобы нормально работать с "абстракциями" из стл
Аноним 10/11/23 Птн 23:38:30 2916700 890
spektr (1).png 448Кб, 8000x8000
8000x8000
image.png 53Кб, 1280x379
1280x379
Вот иллюстрация того какие манипуляции мне приходится проводить со значениями точек, что бы найти их позиции в пиксельном пространстве. У меня будет рисоваться график, в котором значения по оси X почти что никогда не будут меняться, а вот значения по оси Y, будут меняться много раз в секунду. Так же значения по оси X будут идти в массиве с определённым известным шагом. Как вы можете заметить, в один пиксель изображения попадают множество точек. Следовательно можно придумать такую таблицу, в которой будут храниться индексы элементов массива vectorY которые попадают в конкретный столбец изображения. Это нужно для того что бы патом по этим индексам найти максимум из всех значений Y что попали в столбец изображения.

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

Так вот я сюда пришёл за тем что бы вы подсказали как такой алгоритм реализовать, и желательно что бы там не было в циклах if'ов
Аноним 11/11/23 Суб 01:26:33 2916889 891
>>2916700
Раз пиксельное пространстао то это рендер? Отправь координаты из вертексного шейдера в фрагмеетный и сравни с фрагкоордом. Заберешьна цпу через врайтонли буфер. Получишь максисум/минимум в одном такте.
Аноним 11/11/23 Суб 03:11:41 2916986 892
Аноны, пришел к вам за советом. Прогаю на плюсах на работке, но есть такое чувство, что не развиваюсь или развиваюсь медленно. Также, некоторые конструкции совершенно не использую и начинаю их забывать. Подскажите, что можно сделать, чтобы не регрессировать.
Аноним 11/11/23 Суб 08:14:00 2917129 893
Сколько примерно нужно времени чтобы разобраться в исходниках большого проекта (Krita), если с плюсами последний раз работал в вузике? Понятно, что это во многом от меня самого зависит, но в целом, сколько обычно это занимает?
Аноним 11/11/23 Суб 08:25:19 2917133 894
>>2917129
Смотря для чего. На большом проекте можно хоть несколько лет активно пилить какие-то определённые части проекта и так до конца не разобраться в других частях.
Аноним 11/11/23 Суб 08:31:33 2917136 895
>>2917133
>Смотря для чего.
Чтобы скопировать часть функционала
Аноним 11/11/23 Суб 08:36:29 2917138 896
Аноним 11/11/23 Суб 08:41:28 2917141 897
>>2917138
Столько мне никогда не согласуют, эх
Аноним 11/11/23 Суб 08:46:35 2917146 898
>>2917141
Сам же говоришь, что от тебя всё зависит, может, за пару вечеров под пивасик всё сделаешь.
Аноним 11/11/23 Суб 09:29:32 2917168 899
>>2915019
>сам Страуструп как учил?
У самого молодого Страуструпа тупо не было выбора. У нонешнего умудренного Страуструпа есть опыт преподавания.

>с основ учиться
>В университете обычно так и делают, например матан просто скипают, похуй, потом изучат
Именно так и делают. На инженерных специальностях никаких основ матана не дают, а знакомят с методами решения типовых задач.
Аноним 11/11/23 Суб 09:33:18 2917169 900
>>2917168
>На инженерных специальностях никаких основ матана не дают
Я вас услышал, если кто то еще в треде считает что в универах матан не нужен на ИНЖЕНЕРНЫХ СПЕЦИАЛЬНОСТЯХ, то можете начинать с плюсов сразу, удачи
Аноним 11/11/23 Суб 09:35:30 2917171 901
>Ты обязан знать как там все устроено чтобы нормально работать
А если не СТЛ, если в проекте используется десяток сторонних библиотек?

Просто покажи мне такого синьера, который вместо того чтобы включить свеженанятого миддла/юниора в полезную работу, посадит его изучать кишки библиотек.
Аноним 11/11/23 Суб 09:38:45 2917174 902
>>2917171
у тебя этот сеньор еще на собесе будет про кишочки спрашивать
Аноним 11/11/23 Суб 09:40:06 2917175 903
>>2917169
>матан не нужен на ИНЖЕНЕРНЫХ СПЕЦИАЛЬНОСТЯХ
Он не не нужен, а попросту невозможен. Технарям за год впихивают то, что на математических специальностях обстоятельно изучают 5-6 лет.
Аноним 11/11/23 Суб 09:42:39 2917177 904
>>2917174
>этот сеньор
Так ты покажи, где такое практикуется.
Аноним 11/11/23 Суб 09:46:53 2917179 905
>>2917177
на собеседованиях

>>2917175
>изучают 5-6 лет
5-6 лет я как понимаю чистый матан изучают, а не какие отдельные его области?

ладно, не пиши мне только больше
Аноним 11/11/23 Суб 09:53:18 2917185 906
>ладно, не пиши мне только больше
Ладно, буду писать не тебе.

>на собеседованиях
Разве что на собеседованиях тебя с твоим же внутренним юношей-максималистом.

>5-6 лет я как понимаю чистый матан изучают, а не какие отдельные его области?
5-6 лет изучают основы того, что технарям дают за один год. Основы технарям просто не влезут в рамках их учебного плана.
Аноним 11/11/23 Суб 10:48:00 2917201 907
>>2917179
Меня на собесе спросили только за:
Мьютексы, дедлоки
Авто и почему в строке Х будет предупреждение компилятора
Сколько раз будет вызвана функция хеширования в строке Х для анордеред мапы.
Это уже после прохождения нескольких секций решения задачек с литкода.
Аноним 11/11/23 Суб 12:15:28 2917280 908
Аноним 11/11/23 Суб 23:56:44 2918384 909
>>2917280
Я надеюсь что ты студент нюфаг, а не распиздяй с завода. Отвечаю в надежде на первое.

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

Но в любов случае даже на цпу сразу заводи буфер размерностью как минимум >= макс Х макс У
Раз значения есть вот и проверяй их по Х и пиши в соответсвующий У.

странная задача, проблему до конца не понял
Аноним 12/11/23 Вск 00:18:08 2918404 910
231241.mp4 15980Кб, 1280x720, 00:00:47
1280x720
>>2918384
Задача самая простая вместить в виджет точки. В зависимости от масштаба по оси X, в виджет может попасть или несколько точек из вектора точек или все. Хотелось бы что бы точки за пределами спектра не участвовали в растеризации. Хотелось бы что бы если в один столбец изображения попадает несколько точек, то выбиралась та точка, у которой по оси Y максимальное значение. Патом эти максимумы соединяются линиями.
То что я хочу сделать, я уже реализовал на видео, но это довольно таки кривой и очень не быстрый способ.
Дело в том что я пишу под Raspberry Pi 4, а она не очень шустрая, и хочется каждый процент процессорного времени экономить.
Аноним 12/11/23 Вск 02:45:04 2918470 911
>>2915079
В современной разработке это уже не необходимость. Добавлю от себя что это стыд скорее потому что это преподают в любой шараге.
Что касается абстракций из стл ты должен представлять что они из себя представляют, конечно, опять же потому что это база любой шараги. А вот насчет незнания реализаций стл - как бы похуй в большинстве случаев что они там понаписали, в тех что не похуй - ты просто идешь и смотришь и делаешь что тебе нужно.
А если ты дурачок который знает каждую реализацию стл, то вопрос что ты помимо этого еще знаешь? Потому что мне кажется что есть вещи в которых ты не добрал и потратил ресурсы своей головы впустую. Ты такой ходячий человек справочник вроде вассермана, ходишь чето говоришь, но цена твоим знаниям - на форуме что то высрать
Аноним 12/11/23 Вск 04:42:53 2918488 912
>>2916986
попробуй заняться кодогенерацией используя метапрограммирование на шаблонах, причем двумя подходами - используя методы рекурсивного программирования на старом 98 стандарте, и методы структурного программирования, ставшие доступные в новых стандартах языка
если по простому напиши какой нибудь парсер, сначала с использованием библиотек буста, а потом попробуй вручную
это как минимум забавно
Аноним 12/11/23 Вск 05:53:11 2918490 913
Как можно отловить событие клика мыши в winapi? Пока только нашел способ с бесконечным циклом и получением состояния левой кнопки, но это пиздец как не эффективно же. Как решают эту проблему в gui фреймворках?
Аноним 12/11/23 Вск 10:59:34 2918582 914
>>2918490
если ты про цикл с get message то это и есть нормальный способ
Аноним 12/11/23 Вск 19:20:37 2919236 915
>>2918490
не спрашивай как спрашивай почему
Аноним 12/11/23 Вск 20:39:45 2919310 916
>>2919236
Почему-то проорал с этого. WinApi это удивительная вещь, с помощью которой только так и пишутся вирусы/читы и другие непотребства, чего только с ним сделать нельзя.
Аноним 12/11/23 Вск 20:47:45 2919318 917
>>2918490
Фреймворки крутят за тебя всё тот же цикл и вызывают указанный тобой коллбек.
Аноним 13/11/23 Пнд 16:38:59 2920361 918
Сап, нужна хелпа с CMake, до этого ток под винду билдил .sln
Хорошая ли идея, чтобы CMake скачивал сам с помощью FetchContent или ExternalProject и билдить статик либу, чтобы потом юзать в моем проекте?
Мне нужно чтобы либа скачалась с репо и скомпилилась, а потом подключилась к проекту, как мне это сделать?
То что выдал гугл, хуйню какую то, и работает через раз хуй пойми как. Нужна либа libpqxx и openssl
Аноним 13/11/23 Пнд 16:57:06 2920406 919
>>2920361
Плохая, так как ты и сам сказал что работает через раз.
Пропиши реквайрментс, и пусть пользователь сам будет ответственнен за разрешение зависимостей.
или напиши деплой проекта на нормальном скриптовом языке
Аноним 13/11/23 Пнд 17:08:19 2920417 920
>>2920406
это на каком? есть что-то помимо cmake?
Аноним 13/11/23 Пнд 17:30:17 2920433 921
>>2920417
Блин, ну скачай все что нужно питоном и собери.
Какая разница, пользователю что так придется скачивать СМАКЕ и прочий кал что так придется ставить питон.
Аноним 13/11/23 Пнд 18:23:53 2920465 922
>>2920361
Необучаемые блин.
Клонируй все нужные репы сторонние себе в репу. И просто адд сабтиректори в своем симейке. Все. Никакие фетчконтенты и прочее питоно не ну ж но
Аноним 13/11/23 Пнд 21:03:09 2920644 923
>>2920465
ща памацаю, но как мне потом либу подключить? я не хочу чтобы весь сторонний проект был присоеденен в мою exe, понимаю что гуглится, но там каждый делает по разному.
Аноним 13/11/23 Пнд 21:08:25 2920653 924
Аноним 14/11/23 Втр 08:55:45 2920997 925
Аноним 14/11/23 Втр 10:31:29 2921049 926
>>2920997
мне статик либы нужны, чтобы один файл был для запуска.
.lib или .a
Аноним 14/11/23 Втр 13:49:55 2921412 927
>>2920644
Хоче статик либу
Не хочу весь проект
Пизьец у тебя в голове каша, анончик, ой пиздец.
>>2920465
Адд сабдиректори!!!

Или не используй чужие стмейки а напиши свой, если это что простое уровня гли.
Хотя в брльшинстве случаев оно нахер не надо. Достаточно готключить ненужное типа примеров/ тестов/инстал таргетов.
Аноним 14/11/23 Втр 14:22:13 2921481 928
>>2921412
вообще по хорошему я хотел юзать cpack.
просто полный пиздец когда на моей локалке дебиан 12, а на серваке дебиан 10, то хуй нормально прогу скинешь тупо без компилинга.
Еще для компилинга надо качать dev версию postgresql, где билдишь, а из него ток одна либа нужна, когда весь пакет весит под 500мб. Не хотелось бы качать 500мб на сервак ради того, чтобы скомпилить прогу.
Аноним 14/11/23 Втр 15:00:06 2921567 929
>>2921481
От цифры в твоем дебиане ничего не зависит если не древнее протухшее ядро . Зависит от компилятора и сорс кода.

Качай только то что по факту нужно, возможно мейк придется самому писать, если разраб модульность не предусмотрел.

Ну и раз ты ты под серв пишешь что то с бд связанное то почему бы раз не скачать фул и забыть?
Аноним 15/11/23 Срд 00:30:27 2922336 930
>собираешь в докер
>отдаешь админу
>идешь курить
Аноним 15/11/23 Срд 10:52:37 2922582 931
16763864664610.webp 59Кб, 1400x1203
1400x1203
Аноним 15/11/23 Срд 19:24:42 2923391 932
Сап аноны, нормально ли функции помещать в контейнеры, и далее их вызывать? Выглядит дико, но в реальностях boost::asio, когда пихаешь в сетевой сервис сообщения вместе с колбэком, использование контейнера функций выглядит единственно правильным решением.

Если так, какие следует соблюдать правила, типа стараться использовать move?
Аноним 15/11/23 Срд 19:50:36 2923404 933
Аноним 15/11/23 Срд 20:46:54 2923465 934
Аноним 15/11/23 Срд 21:16:36 2923505 935
>>2923391
>>2923465
Ну а ты название проекта гуглить пробовал?
Аноним 15/11/23 Срд 21:27:46 2923526 936
>>2923505
Что?

Анон >>2923404 попросил, видимо, показать пример такого использования, я скинул знакомый с гитхаба проект. Про какое название вопрос?

Я спрашивал, насколько корректно и безопасно складывать функции в контейнер, я такое не встречал, кроме проекта выше, хотя всё выглядит правильно
Аноним 15/11/23 Срд 22:07:10 2923566 937
>>2923526
Ну у тебя вопросы какие то странные, и не понятно что тебя смутило. Задал ты вопрос чисто по конкретной ситуации, но при этом в самой ситуации и зачем так сделано не разобрался, вот какое у меня сложилось впечатление.
Что касается того что ты спрашиваешь, то с этим проблем нет, функции такие же данные, ты можешь ими оперировать, нет с этим никаких проблем, тем более что в 11 версию языка как раз и завезли тебе лямды
Аноним 15/11/23 Срд 23:37:48 2923628 938
>>2923526
Складывай на здоровье.
Только если лямбды складываешь следи как ты туда ссылки захватываешь, чтоб ничего не подохло при вызове.
Аноним 16/11/23 Чтв 00:23:37 2923650 939
>>2923526
Функцию в контейнер не уложишь. Либо указатель на функцию, либо т. н. вызываемый объект.
Алсо, любой класс - это своего рода контейнер с указателями на функции.
Аноним 16/11/23 Чтв 07:32:58 2923711 940
>>2923566
Спасибо. Почему и зачем так сделано я понимаю, просто сколько я не видел чужого кода, хранение функций в контейнере в реальной либе вижу впервые.

>>2923628
Да, точно, спасибо, забыл про ссылки

>>2923650
std:: function ведь и есть вызываемый объект, разве нет? Или щас придирка к терминологии? Тем не менее, std::function прекрасно кладется в контейнер без ошибок и врапперов
Аноним 16/11/23 Чтв 18:24:36 2924376 941
Если я брошу исключение и поймаю его, то деструкторы вызываются. Если брошу исключение и его никто не поймает, то деструкторы не вызываются. Как же так, а если надо будет после истечения времени жизни объекта записать лог в файл или активировать самоуничтожение у беспилотника?
>>2892332
Чел, здесь исходики, а не билд...
Аноним 16/11/23 Чтв 18:46:45 2924436 942
>>2924376
> Если брошу исключение и его никто не поймает, то деструкторы не вызываются.
Каво, должны вызываться
Аноним 16/11/23 Чтв 18:48:12 2924439 943
>>2924376
> Чел, здесь исходики, а не билд...
Посмотри внимательнее
Аноним 16/11/23 Чтв 18:53:29 2924455 944
Аноним 16/11/23 Чтв 20:17:22 2924581 945
Аноны, как какать заюзать стороннюю dll либу, если нихера нет, ни хедера, никаких файлов к ней? Я знаю о loadlibrary, что надо писать свою простыню кода, и переопределять в своих типах функции, но может есть какой иной подход, менее геморройный?
Аноним 16/11/23 Чтв 20:27:14 2924589 946
>>2924581
никак
как минимум нужен хедер-файл, содержащий сигнатуры экспортируемых функций, но по-хорошему нужна документация где описано как пользоваться это библиотекой
есть еще путь реверс-инжиниринга, когда смотриться как используется данная библиотека в других приложениях, и на основе этого восстанавливается сигнатура экспортируемых функций, но раз ты задаешь такие вопросы, думаю что для тебя это более чем неактуально
Аноним 16/11/23 Чтв 20:34:38 2924599 947
Умные указатели - не очень удачное название, я бы их назвал умные оболочки для ресурсов.
Аноним 16/11/23 Чтв 20:51:52 2924618 948
>>2924589
да всё есть, документация тоже, в ида функции экспортируемые все вижу. Нужно именно подключение не через подгрузку вручную, а может есть что иное, чтобы оно само подгружало, а мне пару строчек написать? Не хочу писать кучу кода
Аноним 16/11/23 Чтв 20:53:23 2924621 949
>>2924589
можно еще собрать вручную, и подключать без геморроя, хоть статически, но это долго собирать, я просто в инете либу нашёл, кто собрал уже.
Аноним 16/11/23 Чтв 20:55:06 2924625 950
>>2924621
> Можно собрать вручную, не хочу
> Нашел собранную
Давай давай, потом окажется что у тебя УБ в половине кода из за разных версий неба, Аллаха, ГЦЦ
Аноним 16/11/23 Чтв 21:01:07 2924629 951
>>2924625
из-за разных версий чего?
я просто на .NET брал либу и юзал ее без проблем, а тут пол дня надо убить на сборку как пишут, ппц
вот тебе и натив
Аноним 16/11/23 Чтв 21:30:00 2924678 952
>>2924629
Конпеляторы разных версий?
И ты пишешь что нет хедеров, в чем проблема взять хедер из сурсов если они доступны?
Аноним 16/11/23 Чтв 21:53:14 2924713 953
>>2924678
Ну собиралось в VS. А какое это имеет значение? Там же двоичный код, который подгружает прога в процессе работы.
Есть хедер, но он не полный, и тянет еще один хедер, который не доступен, будет доступен после сборки.
Его надо править. Но как мне один хедер поможет решить проблему?
Аноним 16/11/23 Чтв 22:04:53 2924717 954
>>2924713
Перекрестился за тебя, чтоб работало.
АБИ может ломаться от версии к версии.
Аноним 16/11/23 Чтв 22:12:25 2924724 955
>>2924717
В .NET же работает, через маршаллинг. Там любую dll можешь подгрузить нативную.
Аноним 16/11/23 Чтв 23:21:10 2924790 956
>>2924724
У нас тут немного не дотнет.
У меня тут проект не компилился, который должен из примера копипастил. Я сменил настройки версии стандарта туда сюда и скомпилировался. Причем Кланг ошибку так и продолжил показывать но компилятор гцц. И вот что это было?
Аноним 16/11/23 Чтв 23:23:58 2924797 957
>>2924724
В .net для работы с нативными dll тебе тоже нужны сигнатуры функций, обмазанные аттрибутами pinvoke.
Если кто-то уже сделал за тебя нативную дотнетную обвязку - можешь через рефлексию достать все эти сигнатуры и сгенерить header-файл ручками.
Потом можешь сделать .def через dumpbin.exe и .lib через lib.exe
Версию компилятора можно узнать тем же dumpbin /headers
Аноним 17/11/23 Птн 00:09:14 2924825 958
Да я уже загрузил через LoadLibrary, пару функций попробовал, всё работает. Придется в класс упаковывать это всё и юзать уже в проге.
Аноним 17/11/23 Птн 00:12:54 2924830 959
>>2924790
Работает - не трогай))
Я так понял - здесь это актуальнее всего.
В .NET там как-то попроще всё. Ну ВМ хули.
Аноним 17/11/23 Птн 14:39:10 2925460 960
>>2924825
тут в замешательстве. ИДА показывает - что у функции нет передаваемых параметров, а в документации есть, тип double. Грешу - что документация для новейшей версии, чем есть у меня. Будем посмотреть.
Аноним 17/11/23 Птн 14:43:44 2925464 961
>>2925460
хорошо, что на гитхабе можно откатить "время назад". Посмотрел хедер файл к своей версии - есть передаваемый параметр double. Но ИДА показывает - что нет. Как так может быть? Ошибка декомпиляции?
Аноним 17/11/23 Птн 18:07:50 2925828 962
Оно работает, и работает функция с параметром, хоть IDA Pro показывает - что у нее нет параметров. Вот так и доверяй дизассемблерам. На ней только малварь гонять.
Аноним 17/11/23 Птн 18:12:53 2925833 963
Мужики, где посмотреть можно реализации разных структур данных?
Прям по правильному чтоб, с деструкторами и прочим.
В гугле шляпа одна.А на гитхабе больше решение задачек с литкода
Аноним 17/11/23 Птн 18:19:58 2925843 964
>>2925833
Реализации стл глянь
Там хоть и не для людей код пишут, но если поднатужится, то все получится
Аноним 17/11/23 Птн 18:25:18 2925845 965
>>2925833
Каких именно? В учебниках все есть.
>>2925843
Тут человек базы не знает, а ты ему рекомендуешь в стл залезть?
Аноним 17/11/23 Птн 18:27:06 2925847 966
>>2925845
> Тут человек базы не знает, а ты ему рекомендуешь в стл залезть?
А какая там база нужна?
Если чел хочет поглядеть эталонные реализации, то это первое место где поглядеть можно
Аноним 17/11/23 Птн 18:57:42 2925897 967
>>2925847
С точки зрения алгоритмов и архитектуры действительно эталонные, но чтобы их понять нужна нехилая экспертиза в языке. Именно понять, почему сделано так а не иначе.
А просто посмотреть как оно работает в теории проще в классических книгах.
Аноним 17/11/23 Птн 19:15:10 2925909 968
>>2925843
ахахаххах стл, туда если человек зайдёт, он даже не поверит что это такие же люди писали.
Аноним 17/11/23 Птн 23:34:53 2926191 969
>>2925909
хз, единственное что наверное может там удивить не очень опытного челика дак это активное использование placement new, но чутка потыкавшись понимаешь что это збс идея
ну а остальное все привычное будет, если ты до этого чутка разбирался как пишут классы в крестах ну и само собой в шаблончках разбирался
мимо безработный великовозрасный чмошка
Аноним 18/11/23 Суб 03:35:18 2926363 970
>>2926191
а имена типа __zalupa_2::___ptr_impl_ и табы пополам с пробелами неопытных челиков не удивят?
Аноним 18/11/23 Суб 07:40:34 2926400 971
Сап, аноны, недавно сьебал на винду после 8 лет прыщеблядикса. Чем у вас плюсы собирают кроме студии? От студии травмирующий опыт из прошлого остался.
Аноним 18/11/23 Суб 08:26:32 2926416 972
>>2926400
Да как и везде, cmake

Есть всякие альтернативы build2, premake, meson и тд
Аноним 18/11/23 Суб 13:33:30 2926630 973
>>2926400
qtcreator, cmake. Всё тоже самое что и на линупсе
Аноним 18/11/23 Суб 13:53:07 2926650 974
>>2926400
Студия очень удобная и крутая.
Аноним 18/11/23 Суб 13:56:34 2926652 975
>>2926650
> Студия очень удобная и крутая.
+15 дней лицензии виндовс
Аноним 18/11/23 Суб 14:05:38 2926661 976
>>2926400
MinGW. Да, его используют в проде.
Аноним 19/11/23 Вск 00:39:46 2927477 977
image.png 4Кб, 981x797
981x797
image.png 0Кб, 329x92
329x92
image.png 5Кб, 1561x626
1561x626
Стоит задача узнать какой max Y соответствует X при растеризации линии с помощью алгоритма брезенхема, как на 1 картинке, то есть найти самый высокие пиксели в столбце изображения. Проблема состоит в том что формула линии брезенхема из википедии
https://ru.wikipedia.org/wiki/Алгоритм_Брезенхэма
не совпадает с алгоритмом растеризации в той же статье, как на картинке 2.
Также из других источников я взял алгоритмы растеризации и там тоже не совпадает с математической формулой, как на картинке 3.
Есть ли способы точно найти Y для X, но при этом что бы он совпадал с алгоритмами
Аноним 19/11/23 Вск 10:06:08 2927664 978
>>2927477
Тебе шашечки или ехать?
Аноним 19/11/23 Вск 11:26:07 2927744 979
>>2927664
Мне спектр отрисовать.
В видео прикреплённом в этом посте >>2918404, верхние точки линий брезенхема запоминаются при растеризации линии брезенхема. То есть когда я линию провожу, я и запоминаю максимальный Y. Да, это рабочий вариант, но я хотел бы за одно действие найти maxY в столбце изображения, а не пробегаться в цикле.
Аноним 19/11/23 Вск 11:58:23 2927789 980
Сап, плюсаны. Порекомендуйте какой-нибудь способ распарсить плюсовый проект из какого-нибудь питона. Чтобы были все сущности вроде функций/классов/методов, плюс по инклюдам трэкалось, откуда что берётся.
Аноним 19/11/23 Вск 12:16:12 2927824 981
>>2927789
Хз насколько возможно это, особенно для всякого абстрактного кала.
Аноним 19/11/23 Вск 12:55:45 2927922 982
>>2927789
см питоньи обвязки для libclang
в зависимости от сложности плюсового проекта, собрать и протрекать сущности питоном займёт пара часов - неделя
Аноним 19/11/23 Вск 13:33:12 2928007 983
>>2927922
А ну кстати да, если только в сам тулчейн вклиниться и оттуда парсить.
Аноним 19/11/23 Вск 15:39:27 2928255 984
Зачем нужный shared_pointerы? Зачем ресурсом совместно владеть? Почему всегда не пользоваться unique_pointerом? Расскажите кейсы в которым они нужны?
Аноним 19/11/23 Вск 15:44:04 2928269 985
изображение.png 14Кб, 840x115
840x115
Хорошо, я понял. Тогда с какого языка начать?
Аноним 19/11/23 Вск 15:49:35 2928280 986
Аноним 19/11/23 Вск 15:50:36 2928283 987
>>2928280
Разве более низкоуровневые языки не должны быть сложнее для понимания?
Аноним 19/11/23 Вск 15:58:36 2928306 988
>>2928283
Это высокоуровневый язык. А начать тебе с него стоит, потому что большинство современных языков -сиподобные и повторяют элементы ситаксиса си.
Аноним 19/11/23 Вск 16:00:39 2928311 989
>>2928255
> Расскажите кейсы в которым они нужны?
Чтобы совместно пользоваться ресурсом
Аноним 19/11/23 Вск 16:04:12 2928326 990
>>2928269
> с какого языка начать?
python -> haskell -> c++
Аноним 19/11/23 Вск 16:04:42 2928329 991
>>2928311
Когда поле разных экземпляров класса ссылается на один и тот же ресурс. Я все без вас понял, мудаки.
Аноним 19/11/23 Вск 16:11:55 2928350 992
Аноним 19/11/23 Вск 16:17:29 2928364 993
вовомас живёт в[...].png 901Кб, 1309x978
1309x978
Аноним 19/11/23 Вск 17:26:13 2928478 994
>>2928329
У тебя есть К воркеров, и каждый хранит ссылку/шейредптр на очередь задач.
Тут у шейредптр преимущество, что его можно будет изменить, в отличие от ссылки.
Абсолютно абстрактный пример.
Аноним 19/11/23 Вск 17:28:42 2928481 995
>>2928283
Си очень простой язык в освоении, гораздо проще плюсов со всеми из подводными камнями.
А база у языков единая.
Аноним 19/11/23 Вск 17:49:14 2928504 996
>>2928478
> его можно будет изменить, в отличие от ссылки.
Создать другую очередь задач? но зочем?
Аноним 19/11/23 Вск 18:40:22 2928575 997
> писать на си с классами
А что собственно в этом плохого?
Аноним 19/11/23 Вск 19:05:46 2928615 998
>>2928575
Ничего. Но итт маньки не могут в указатели и малок/фри.
Аноним 19/11/23 Вск 19:19:45 2928642 999
>>2928504
Вдруг у тебя есть несколько очередей с разными задачами.
А так это абстрактный пример.
Аноним 19/11/23 Вск 21:49:13 2928921 1000
Консоль не пашет в многопотоке, че за хуйня? Думал это кривые руки у меня, а это ебучая консоль, только время убил от сука

#include <iostream>
#include <thread>
#include <fstream>

using namespace std;

int main()
{
thread thr([](){
fstream fs;
fs.open("out.txt", fstream::out | fstream::app);
for(int i=0; i<10;i++){
cout << i << endl;
fs << i << endl;
}
fs.close();

});
thr.join();



return 0;
}


это под виндой
Аноним 19/11/23 Вск 21:58:37 2928943 1001
>>2928921
Чем дальше в лес, тем больше дров.
Я в ахуе если честно.
Везде какие-то костыли.
Скажите еще - что я должен синхронизировать доступ к консоли, как в gui приложухе? Умора плять
Аноним 19/11/23 Вск 22:21:12 2928987 1002
>>2928943
>>2928921
У меня работает (под виндой)

даю подсказку, кажется дело в fs
Аноним 19/11/23 Вск 22:32:04 2929002 1003
>>2928987
в переменной fs?

эта хуйня тож не пашет:

#include <iostream>
#include <thread>

using namespace std;

int main()
{
thread thr([](){
for(int i=0; i<10;i++)
cout << i << endl;
});
thr.join();

system("pause");

return 0;
}

запись в файл там для теста, что поток отрабатывает, а то думал - что у меня вообще поток не запускался, потому что в консоли пусто.
Аноним 19/11/23 Вск 22:43:01 2929027 1004
Аноним 20/11/23 Пнд 19:39:07 2930093 1005
давеча был в /b тред о программировании на крестах, ушел в бамплимит
дак вот там был челик который искал кодеров на РАБоту, и тестовым у него было написать telnet-сервер, по его утверждению там работы на 4 часа
так чтож учтите что от вас требуется в 2к23
Аноним 20/11/23 Пнд 21:10:35 2930242 1006
>>2930093
Используя либы можно и быстрее.
Аноним 20/11/23 Пнд 22:14:36 2930345 1007
go нехт треад?!
Аноним 20/11/23 Пнд 22:53:29 2930377 1008
Аноним 20/11/23 Пнд 23:15:50 2930395 1009
Аноним 20/11/23 Пнд 23:27:51 2930403 1010
image.png 24Кб, 818x408
818x408
Зачем volatile?
Аноним 20/11/23 Пнд 23:42:11 2930408 1011
>>2930403
Чтоб компилятор не выебывался
волатайл отключает оптимизации над переменной
Аноним # OP 20/11/23 Пнд 23:48:10 2930410 1012
Аноним 20/11/23 Пнд 23:49:54 2930413 1013
>>2930403
У меня идея. Надо все переменные объявлять volatile. И тогда точно никакого UB не будет!
Аноним 21/11/23 Втр 01:58:05 2930436 1014
я знаю вы все тут эстеты
за последние лет пять появились какие нибудь прямо писк шрифты заточенные под код, само собой, причем которые учитывают особенности крестов само собой (типа звездочек, ну вы поняли), но и причем чтобы были русские буквы в шрифте
Аноним 21/11/23 Втр 03:31:22 2930442 1015
>>2930436
>писк шрифты заточенные под код,
Я использую Hack, раньше сидел на Iosevka(советую, на сайте есть конфигуратор своего варианта шрифта)
Аноним 21/11/23 Втр 05:31:59 2930457 1016
>>2927744
>То есть когда я линию провожу, я и запоминаю максимальный Y.
У тебя спектр только при рисовании линий существует что ли? Зачем там в принципе что-то сохранять при рисовании? Зачем Брезенхэм, если линии только вертикальные? Зачем в принципе Брезенхэм в 2023? Это алгоритм для всяких спектрумов, у которых аппаратного умножения не было.
Аноним 21/11/23 Втр 18:33:36 2931416 1017
Почему std::initializer_list такое говно и когда его починят?
Аноним 21/11/23 Втр 19:09:11 2931459 1018
Аноним 21/11/23 Втр 19:55:24 2931504 1019
>>2931459
не работает если у тебя объекты non-copyable
даже если ты муваешь

долбоёбы конст понапихали хуй знает зачем, и теперь неожиданно ломается мув семантика
Аноним 21/11/23 Втр 20:16:36 2931541 1020
>>2931504
>долбоёбы конст понапихали хуй знает зачем
Без конста видимо что-то другое ломается.
Аноним 21/11/23 Втр 22:07:15 2931769 1021
>>2931416
Делай обычным массивом.
Я так делал когда либу с плюсов на си переписывал зачем лучше ге спрашивай - все работало.
Аноним 21/11/23 Втр 22:14:56 2931779 1022
>>2931769
> зачем лучше ге спрашивай
ABI?
Аноним 22/11/23 Срд 05:54:49 2932080 1023
>>2931769
> Делай обычным массивом.
Размер в компайлтайме ее известен
Аноним 22/11/23 Срд 05:55:15 2932081 1024
Не*
Аноним 22/11/23 Срд 07:05:44 2932093 1025
Аноним 22/11/23 Срд 08:12:00 2932101 1026
Аноним 22/11/23 Срд 11:08:45 2932259 1027
5Converted.jpg 1190Кб, 1920x1080
1920x1080
image.png 397Кб, 1757x964
1757x964
Сап тред, написал месяца 2 назад ASCII конвертер на плюсах, вот такие приколы клепает.
Есть идеи, что ещё можно написать?
Аноним 22/11/23 Срд 11:17:10 2932273 1028
Этож
auto long double ld{2.7218};
вроде как не легально.

А чего оно тогда на визуал студии работает? Расширения отключены.
Аноним 22/11/23 Срд 11:18:34 2932275 1029
>>2932273
auto ld long double{2.7218};

фикс
Аноним 22/11/23 Срд 12:41:52 2932328 1030
>>2932101
А если ты сигнатуру поставишь vector<non_copy> а дальше мувнешь?
Аноним 22/11/23 Срд 12:45:49 2932334 1031
>>2932328
Тогда все еще нельзя будет что то подобное написать, так как вектор сам инициализируется с помощью std::initializer_list
Object obj { {non_copy{}, non_copy{}} };
Аноним 22/11/23 Срд 13:06:13 2932357 1032
>>2891674
Школьная математика хуйня. Качай конкретную математику Кнута и читай. Еще https://openlearninglibrary.mit.edu/courses/course-v1:OCW+6.042J+2T2019/about есть, там сильно с Кнутом пересекается. Если нужен анализ и общее что-то по вузовской инженерной программе, то основы можно быстро на mathprofi.ru выучить. Дрочи на здоровье пока стоит короче.
Аноним 22/11/23 Срд 13:21:52 2932364 1033
>>2932334
Ага, увидел.
Жопа, что уж...
Аноним 23/11/23 Чтв 04:28:11 2933332 1034
>>2931416
с ним все заебись, люди работают, люди при деле: уже приходиться писать целые трактаты на сотни страниц чтобы описать (почти) все тонкости инициализации в языке
так чтож нужные люди не остануться без работы
Аноним 23/11/23 Чтв 04:29:48 2933333 1035
>>2932259
пиши теперь чтобы было обратное преобразование!
Аноним 23/11/23 Чтв 11:02:56 2933458 1036
>>2932259
Движущиеся приколы может конвертировать? Если нет, то впреде
Аноним 23/11/23 Чтв 18:02:08 2934055 1037
image.png 126Кб, 290x425
290x425
Так вот откуда вся эта залупа пошла

Деды, оправдывайтесь зачем вы это придумали?

только m_ еще хоть куда то пойдет
Аноним 23/11/23 Чтв 18:21:47 2934073 1038
Братья, что почитать практичного такого?
Аноним 23/11/23 Чтв 18:33:28 2934078 1039
>>2934055
И не такое придумаешь, когда дохуя умных IDE ещё не придумали, есть только разновидности блокнота, а об ошибках типизации узнаёшь только при компиляции.
Аноним 23/11/23 Чтв 20:15:30 2934254 1040
>>2934055
ну, к примеру, указатель на char в си мог означать множество вещей - указатель на символ, указатель на строковую константу, указатель на байт, указатель на массив памяти, указатель на си-строку (с нулем в конце)
ну и для некоторых других типов та же история по аналогии
поэтому приходилось использовать дефайны и использовать префиксы при именовании переменных
или еще один пример, когда в сях эмулировались классы посредством запехивания указателей на функции в структурки, то приватные члены и члены-функции этих структурок клали в конец структурки, иногда после какого-нибудь паддинга чтобы подстраховаться, и чтобы самим не запутаться помечали их каким либо префиксом, само собой наружу либы торчали уже другие усеченые структуры которые получались накладыванием на внутренние структуры.. ну и все это опять сверху макросами обмазывалось
так чтож все это были практичные решения без которых не обойтись
НО потом культура программирования деградировала лол и появились всякие "рекомендательные" системы именования типа венгерской нотации, где уже было прописано че и как делать, без объяснения начинающим кодерам зачем вообще к этому пришли
Аноним 23/11/23 Чтв 20:27:31 2934278 1041
>>2934073
зачем что то читать, можешь попробовать сам подумать
к примеру, можно ли при помощи крестов написать либу с закрытой кодовой базой оформленную в виде динамически загружаемой библиотеки (нельзя), ну либо можно ли в крестах написать приложение с динамически расширяемой функциональностью при помощи плагинов (нельзя)
и как эти ограничения все же можно обойти, да, пойдя на определенные компромисы но все же
и тогда, возможно на тебя найдет озарение и понимание того в какой луже сидят все крестовики уже оче давно когда закрыли глазки на то у них до сих пор нету стандартизированного abi а все усилия комьюнити направлены на то чтобы ковыряться в шаблончиках и вводить новые закорючки в язык
Аноним 24/11/23 Птн 00:01:50 2934639 1042
>>2933458
Поидее, библиотека, которую я юзал, ещё и видео разных форматов воспринимает. Если подумать, то можно законвертить каждый кадр, а после объединить их в один видосик, думаю, вскоре займусь этим
Аноним 24/11/23 Птн 01:48:38 2934686 1043
>>2934254
Ну ты разошелся...
От сдвижки указателем по струтуре у молодых итт случится бабах.
Аноним 24/11/23 Птн 02:45:41 2934696 1044
15976471474880.jpg 29Кб, 300x303
300x303
Аноним 24/11/23 Птн 14:08:04 2934995 1045
Аноним 24/11/23 Птн 14:14:20 2935001 1046
>>2934686
Я молодой, бабах не случится, сам так делал, но не вижу смысла если нет задачи написать максимально производительно и нет лучших абстракций
Аноним 24/11/23 Птн 16:28:40 2935228 1047
>>2934696
ну вообще SAL annotations были офигенной задумкой у мелкомягких и оче активно у них использовались
смысл в том что эти макросы сворачивались в ничего, и компилятор их не видел, но они нужны были для статических анализаторов, а вот которые могли сделать гораздо больше полезных проверок
Аноним 24/11/23 Птн 16:49:44 2935253 1048
>>2935228
Кстати старый код стандарной либы майков мне прям нравится. Не то что гнутый говняк.
жаль что гцц все равно топ, а майки индусы
Аноним 24/11/23 Птн 19:20:55 2935467 1049
Аноним 26/11/23 Вск 23:26:43 2938602 1050
image.png 29Кб, 885x409
885x409
Блять, разбираюсь с лок фри стеком и не могу понять.
В CAS мы чекаем, равен ли текущий хед тому, что мы сохранили, и если равен( то есть никто не влез между нашим чтением и CAS), то мы заменяем на новый хед.
Отлично, все хорошо.
А ЕСЛИ КТО ТО ВЛЕЗ???
Какого хуя не берется новый поинтер на голову? Почему мы продолжаем долбиться со старым?
Аноним 27/11/23 Пнд 00:00:24 2938627 1051
>>2938602
А если влез, пытаемся повторить операцию, пока никто не влезет.
Аноним 27/11/23 Пнд 00:09:07 2938634 1052
>>2938627
Я уже понял.
Почему то сначала нигде не увидел, что compare_exchange меняет desired на текущее значение автоматом.
Даже в cppref об этом не написано, или я в глаза ебусь.
Аноним 27/11/23 Пнд 00:11:05 2938636 1053
>>2938634
Действительно в глаза ебусь, спать пора.
Аноним # OP 27/11/23 Пнд 00:44:35 2938655 1054
Да бля, опять я должен перекатывать что ли?
Аноним # OP 27/11/23 Пнд 00:55:29 2938660 1055
Аноним 28/11/23 Втр 23:12:11 2941657 1056
Молю, ананасы, помогите, я уже начинаю гореть. Как заставить ебаный clangd видеть ебучие стандартные плюсовые и не очень библиотеки? Что прописать этому еблану в compiler_commands? iostream не видит, string не видит, сука sdl2 зато видит.

Mac OS, neovim, сраный coc.nvim и coc-clangd

За мат извени ,третьи сутки потею уже над этим, подскажите как сделать, это пиздец.
Аноним 29/11/23 Срд 07:16:34 2941780 1057
>>2941657
ты если собираешься cmake, то он тебе должен compiler_commands.json сам генерить
тогда всё само и должно подхватиться

если на винде билдишь, выберай в генераторы ninja
Ответить в тред Ответить в тред

Check this out!

Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов