>>2080979 Когда у тебя книга, то ты гарантировано получишь инфу с 1 по последнюю страницы, а системы хелпов корявые, с запутанной системой навигации и вполне наверняка из-за этого ты упустишь большую часть инфы.
>>2081078 Да тут какой-то шизик во всех тредах срёт при одном упоминании пакта. Видать, попалась ему одна хуёвая книжка, он посмотрел на издателя и сделал выводы обо всех остальных книжках.
>>2081008 → Проприетарный компилятор, не поддерживающий в 2021 году C++11, скорее всего в принципе не может нормально в плюсы. Тогда лучше вообще на сях лучше писать и то дополнительно молиться, что не наткнёшься на ICE в лучшем случае или баг кодогенерации в худшем.
>>2080966 Книжки по винапи всегда были уровня вот так вот берем, рас рас и готово, рас рас и готово. Так что немного мы без них теряем, в доках все есть.
>>2081167 >Проприетарный компилятор, не поддерживающий в 2021 году C++11, скорее всего в принципе не может нормально в плюсы Как же у вас блядь все просто. СУКА ДЕВАЙС ОСОБЕННЫЙ И КОМПИЛЯТОР К НЕМУ ОСОБЕННЫЙ. Не я выбирал девайс, и я не в позиции продавливать кастомера переносить его парашу на другую платформу
>>2082050 Я и сказал - пиши на чистых сях в таком случае, потому что скорее всего плюсы там баганутые, STL (если вообще есть) тоже полный багов скорее всего.
>>2082050 > >>Проприетарный компилятор, не поддерживающий в 2021 году C++11, скорее всего в принципе не может нормально в плюсы >Как же у вас блядь все просто. СУКА ДЕВАЙС ОСОБЕННЫЙ И КОМПИЛЯТОР К НЕМУ ОСОБЕННЫЙ. Не я выбирал девайс, и я не в позиции продавливать кастомера переносить его парашу на другую платформу Ну юзай тогда стандарт C++ 98, в чем проблема-то?
>>2082590 >Ну юзай тогда стандарт C++ 98, в чем проблема-то? блядь. Есть два таргета: шланг под айос и пипириетарщина под кастомную платформу. В шланге 17 и выпилили auto_ptr, в пипитарщине 98 и unique_ptr не запилили. Твои действия?
>>2083271 У меня получается на Qt, книга Шлее бестолковая и по его описанию у меня даже проект не компилируется, потому что я не понимаю чего там наследовать и куда вставлять код. Вот нафига создавать такую библиотеку, если её освоить сложнее, чем язык С++? WPF же вроде только на C#. Остальные даже не слышал.
>>2083274 Но WinAPI-то осилить изи, да, не то что Qt? Не знаю, что там в Qt можно не осилить, когда впервые тыкал после дельфи, легко разобрался, как программировать мышкой и писать обработчики.
>>2083288 В WinAPI сложно принять его стандартную заготовку, а когда смиришься с этим говном, то остальное ложится просто. Хочешь рисовать? Добавляешь WM_PAINT. Хочешь клики мышкой? Добавляешь их обработчики и т.п. Всё линейно и можно изучать по мере надобности. В Qt же какое-то монструозное нагромождение классов, которые чёрт знает для чего нужны и что делают. Кроме самих разработчиков, наверняка никто не понимает этого говна. Книги призваны объяснить с какой стороны подступиться, но вместо этого они описывают набор классов без объяснения как ими пользоваться. И подход там не линейный. Хочешь этот класс? Тогда надо унаследоваться определенным образом и переопределить такие-то методы. Хочешь другой класс? В этом случае надо инициализировать такую-то залупу, про которую нигде не сказано.
>>2083294 Простые линейные функции винапи по мере роста проекта вскоре превращаются в неподдерживаемую процедурную парашу. Чтобы заставить говно перестать растекаться, начинают писать обёртки, классы, функции-утилиты и через некоторое время получают такой же Qt, но кривой и непереносимый. Не хеллоуворлдах может и не заметно, но дальше становится понятным, почему в Qt сделано именно так и не иначе.
>>2083294 Пиздец, я Qt осилил тупо по документации (по assistant'у) без книг и чего либо. Мои трейни тоже как-то спокойно асиливают, а ты видимо тупенький
>>2083274 Из-под винды иногда какие-то ошибки появляются непонятные, то ли в связи с правами, то ли ещё с чем, уже не помню. В линуксе по книге всё нормально собиралось. Попробуй создать не пустой проект, а какой-нибудь готовый, с пустым окном. Он должен сразу нормально собираться.
>>2083302 Qt это не архитектура плюсов, а самостоятельный говноязык DS, не работающий без своих говнотулзов и тормозящий как любая мультипараша. В общем очередная анальная дыра для рабов, чтобы если вляпался, то уже не смог вылезти.
>>2083851 Кстати да, там лицензионное соглашение напрягает. Скоро они ещё ужесточат, чтобы все покупали Qt. Раньше можно было просто скачать, а теперь там обязательная регистрация. А вот в VS 2019 наоборот отменили обязательную регистрацию.
>>2083934 "...чтобы вы не почувствовали себя профессионально и умственно неполноценными, если не все сразу поймете. Если вы раньше никогда не программировали в графической среде, то, естественно, Windows окажется непривычной для вас. Однако, в конце концов вы добьетесь своего." (с) Петзольд
Добрый день, аноны. Нужна хелпа в изучению плюсов. Сам перешёл на второй курс. Подскажите в каком направлении следует двигаться, что учить, чтобы можно было фрилансить/возможно работать за минималочку с обучением.
>>2084107 Это я понимаю, поэтому и хочу начать быстрее продвигаться в плане обучения, чтобы я мог из себя что-то представлять, например, не на 4 курсе, а уже на 3
Кто-нибудь пользуется связкой VS Code + clangd для автодополнения? Есть большой проект с кучей гугловских либ, сооответственно я пишу свой compile_commands.json где указываю инклюды через clang-cl.exe -ID:\\path Собственно трабла в том что он собирается своими билдсистемами и все нормально, а автодополнение обламывается, потому что где-то натывается на объявление метода в духе ClassName::min() и ругается на то, что макросу min не хватает параметров, как бы его настроить чтобы он так не делал?
>>2084160 Я решил программировать как мне нравится и не гнаться за всякими модными молодежными штуками. Старый подход к программированию мне понятен, я с ним на одной волне.
>>2084373 Короче это ошибка линковщика, а не компилятора. Ты только объявил, а надо еще определить (грубо говоря память выделить) Допиши перед мейном Dvacher Dvach::arr[10];
Сап двач, решил не терпеть унижений со стороны других программистов и начал учить с++(до этого пытался в фронт, в итоге забил, потом начал учить пайтон в нём +- разобрался). По классике зашёл на степик, открыл курс от Яндекса, скачал визуал студио, вывел Хелоу Ворлд, всё ок, а дальше... Я по 30 минут сижу с элементарными задачами по делению и вычеслению остатка и в итоге всё равно иду подглядывать в коменты решение. Неужели я так деградировал с python, или я изначально тупой? Каждый раз захожу, смотрю на задачу, сижу 15 минут, выхожу, иду смотреть сериальчики. Что советуете делать в такой ситуации, просто брать решения с коментов(типа само со временём придёт) или как?
>>2084354 >Прочие это какие? Ограничение какое-то шизоидное Ну очевидно, я хочу как на WinAPI, юзать системные вызовы для работы с окошками >>2084354 >ты случайно на ассемблере не пишешь Нет, просто обычные плюсы без фанатизма по последним стандартам >OpenGL можешь потрогать Да не, это другое
>>2084403 Попробуй для начала решать задачи на бумаге, чтобы понять решение. Нарисуй схемы там, как ты это у себя в уме представляешь. Почитай статьи для школьников по решению уравнений. Писать код в разы проще, когда ты понял, что и как нужно делать, и для чего нужен каждый шаг.
>>2084504 А, вспомнил, это если ещё constexpr вжарить, будет неявный inline. Не привык видеть не-constexpr статичные поля. Классический пример рамок мышления.
>>2084712 На самом деле всё логично. Какие приложения можно написать на С++? Либо консольное, либо графическое. Консольное приложение ни кому не нужно, потому что все привыкли работать с графическими приложениями. Как написать графическое приложение? Можно использовать одну из готовых библиотек типа Qt, но под Qt есть всего лишь одна современная книга Шлее, которая хвалится тем, что это суперкнига и прочитав её, ты станешь крутым разработчиком на Qt, но на деле книга пустая, ничего не объясняет. Мало того Шлее ни сколько не интересует психологическое состоянии читателя. А вот книга Петзольда хоть и старенькая, но основательная. Автор не хвалится, а прямо говорит, что WinAPI - это говно и если вы ничего не понимаете, то это нормально, но за 6 месяцев не мытьём дак катанием, можно изучить WinAPI.
Насколько надежно передавать указатель на функцию через границу DLL? Экзешник и DLL собираются разными билдсистемами и на флаги вобщем то влиять не могу. Сама функция экспортируется __declspec(dllexport) и загружается как typedef int(__stdcall fnPtr)(); fn = (fnPtr)GetProcAddress(...) Какие могут быть подводные? Дебаг/релиз влияет? На моем компе все работает, интересует в целом. Второй вопрос - то же, но про передачу указателя на буффер char. Память под него выделяю сам, он не может переместиться как-то неожиданно?
>>2084745 >Какие могут быть подводные Так сходу не придумал. Главное - случайно не выгрузить DLL (и такое видал). >Память под него выделяю сам, он не может переместиться как-то неожиданно? Нет. Как только DLL загрузилась в вирутальное пространство - она там останется навсегда в одном фиксированном положении. Но если удалять этот буфер тоже надо на другой стороне, то хорошим тоном является предоставление своих функций для удаления объектов, иначе могут быть большие проблемы со статическим рантаймом (см. https://devblogs.microsoft.com/oldnewthing/20161209-00/?p=94905)
>>2084293 >Правда от одного вида хеллоуворлда для них ты бросишь эту затею Только на вяленом это выглядит дико. В хЛибе вполне адекватный код на десяток строчек, компактнее чем на Винапи.
>>2084795 Спасибо, выгружать не буду ни DLL ни буфер, они существуют все время работы. >>2084778 Что-то конкретное? Разное ABI на параметры ф-ции? UB? Я не в рамках одного юнита смешиваю, а могу не уследить если собрана exe с одними флагами, а dll с другими.
>>2084822 Я не стал обмазываться этими твоими guidами, диспатчами, соклассами, анкнованами, регистри, маршаллингом, OLE, AWT, ATL и прочим калом. Ещё тогда я понимал, что технология тупиковая. Не так давно попадался кусок кода на DirectShow, который надо было перенести в проект. Такой мутной помойки я давненько не видел. Переписали начисто ибо нахер всё это.
>>2080946 (OP) что значит? using boost::property_tree::ptree; ptree pt; можно как то проще работу с файлом организовать? через fstream например то же самое переписать?
>>2084988 Тебе дебичу уже более 5 способов предложили. Через плеер в браузере, через gl/dx, через canvas в любой UI дрочильне, через графические движки, через winapi, через всё, что картинки показывает.
>>2085004 >более 5 способов На хабре был цикл статей как запилить свою рендерилку. Там чувак вообще все снуля делал, ни одной сторонней библиотеки: свои функции отрисовки треугольников, свои функции рисования прямых, своя растеризация, меши и т. п.
И, чтоб не ебать моск с выводом, он все это "рисовал" прямо в файл tga. Сохранялка в tga у него тоже своя была.
>>2085030 Так он не рендерилку просит, а натягивание кадра в виде массива байт на окно. И максимум что ему надо это написать фильтрацию, чтобы не хардкодить размер окна. Для натягивания есть масса способов, но он копротивляется.
>>2085108 Я разве говорил, что мне надо быстро? Я ещё со школы обдумываю эту идею. Сейчас просто появилось свободное время и решил позаниматься плотнее.
>>2085117 И что он будет делать со своей консольной поделкой? Реальный Коммодор 64 имел графический режим и в консоли он не сможет реализовать графику. Предвосхищая, ваши возражения скажу, что консольное приложение отличается от графического принципиально. Если консольное - это непрерывный поток инструкций самой программы, то графическое имеет событийный механизм.
>>2080946 (OP) Как можно сделать объединение, вычитание, пересечение трехмерных геометрических объектов. По сути нужно объединить через логические операторы их условия на ограничение геометрической области, но не понимаю как это реализовать в ООП. Например, имеем
>>2085477 Ну твои объекты это частный случай boundbox. Можешь не ебать мозг и дёрнуть готовую реализацию. Булевы операции являются частью интерфейса самого boundbox.
>>2085477 Constructive Solid Geometry же >как это реализовать в ООП Какой-нибудь паттерн Composite наверняка, но не думаю, что ляжет хорошо. Скорее всего для этого есть специализированные структуры данных, которые лучше применять.
>>2085647 А, и без православного сишного "замыкания для бедных" в виде void user_data, он же void opaque, он же void *handle, который должен передаваться в указатель на функцию.
>>2085646 Моё предположение, что это нужно, чтобы скрыть реализацию. Совсем скрыть. В либах можно оставить только голый интерфейс и фабричный метод, что внутри, вообще непонятно. Хорошо для пипиетарщины. Ну и полиморфизм без полиморфизма. Поведение можно изменить, а класс всегда остаётся один. Но я не очень уверен в своих выводах, поэтому запросил помощь экспертов. В любом случае, это не то, что я хотел бы сделать. Это уже сделано кем-то и для меня данность, а я только разбераюсь.
>>2085590 Точно, composite. В чем сомнения, что криво будет? >>2085616 так это полноценная САПР, то есть в проект потом переносить результат моделирования в виде структуры данных?
>>2085807 >Есть минимальная мультиплатформенная библиотека для создания окна и клава-мыши? OpenGL glut
>получение хендла окна с которым я уже и буду сам работаь Как ты будешь это делать кроссплатформенно-то?
Какие-то у тебя шизоидные запросы. Ты хочешь взять половину графического тулкита? Если тебе хочется попердолится вручную рисовать окошки, то получать события окна и клава-мыши сравнительно просто.
>>2085810 >Как ты будешь это делать кроссплатформенно-то? Во всех системах у окон есть хендл (на виндах который HWND)/ Вот например через SDL это можно так делать, как на пикче.
>OpenGL glut Обмазано говном OGL
>>Ты хочешь взять половину графического тулкита? Не понял вопроса.
Мне надо: - создание окна - получение сообщений о том что окно свернуто, развернуто, закрыто, активно и т.д - получений сообщений от клавы и мыши - мультиплатформа - отсутствие говна типа звуковых библиотек, впихнутых туда вулканов и созданий контекстов OGL, или вообще софтрендера на DX11 (как в SDL где 90% кода - это этот ебучий нахуй никому не нужный софтрендер)
Мне нужен минимализм, чтобы было минимальное. И еще, мне не нужен OGL/DX/Vulkan - я не игру делаю. У меня вообще другая задача не связанная с графикой
>>2085807 Просто не используй то, что не нужно. Или ты каждый байт экономишь? Зачем тогда юзать кресты, если сишка тоже тьюринг-полная и не засрана всяким говном?
>>2085815 SFML состоит из 5 модулей, физически - это отдельные библиотеки. Ставь какие надо. Плюс в пределах модуля есть куча более специализированных подзаголовков.
>Мне надо: SFML/Window для окон и SFML/System для клавомыши.
>отсутствие говна типа звуковых библиотек, впихнутых туда вулканов Просто не ставишь графический и аудио модули. Правда, текст и шрифты лежат все же графическом модуле. Но и их можно взять отдельно, если подключать не весь заголовок графики, а только нужные.
>>2085815 >Во всех системах у окон есть хендл (на виндах который HWND) Окно нужно чтобы туда что-то показывать. Как ты собираешься кроссплатформенно выводить что-то в окно?
>Мне нужен минимализм, чтобы было минимальное. Минимальное что? Пока ты предлагаешь переписать кучу библиотечного кода (т.е. доступного всем приложухам) на кучу своего. Не похоже на минимализм
>И еще, мне не нужен OGL/DX/Vulkan - я не игру делаю. Если ты уж захотел попердолится в кастомный тулкит, то хотя бы сделал бы это с пользой для себя. Брезенхамы и прочие эллипсы на ЦПУ уже никому не нужны, отрисовку даже UI пытаются вынести на ГПУ
Есть какая-нить простенькая либа для рендера всяких фигур и шрифта на GPU? Дело в том, что я работаю с видеопотокамии OpenCV и все операции с ними происходят на гпу от декодинга до процессинга, и чтобы мне вывести дебажную инфу в кадр мне приходится отгружать кадр на цпу и там рисоваться всякие коробки и текст.
>>2086168 >Есть какая-нить простенькая либа для рендера всяких фигур и шрифта на GPU? Если нужно сделать плюс-минус красиво и многоязычно, то проще отрендерить шревты на ЦПУ и потом загрузить текстурой. Если сойдет мноноширинная кириллица-латиница, то можно поебаться c битмапами (грузим весь шрифт как текстуру, а потом через UV координаты вытаскиваем нужные пиксели)
>>2086249 Да я все это понимаю что можно загрузить текстуру со шрифтами и реализовать свой рендеринг текста и фигурок, но хотелось бы избежать еботни, т.к. времени на это все нету совсем. Хотелось бы чтобы я написал sudo apt install libname-dev и потом в коде написал #include <libname> ... libname::Texture tex(width, height, &cudamem, stride, cudamemsize); libname::drawRectangel(tex, p1, p2) libname::drawText(tex, "Text");
>>2086256 Лучше сделай по-простому. Рендерни текст на cpu, залей на gpu и наложи в виде маски (это всяк дешевле, чем целый кадр с gpu тянуть). Потом уже рисёрчем занимайся. У NVIDIA есть под cuda рендерилка шрифтов. Есть возможность шарить кусок памяти между gl и cuda, чтобы рисовать произвольную геометрию. Но ты со всем этим вдоволь наебёшься, я тебе гарантирую.
>>2086168 >рендера всяких фигур и шрифта на GPU Я только про SLUG знаю про рендер шрифтов прямо в гпу, но он платный. Можешь в эту сторону копать. Капча, угомонись
Кста сделал свою тасочку с апаратной записью на ведре, оказалось на НДК это довольно просто сделать, надо было сразу за него браться, а не ебаться с ffmpeg
>>2086344 Это для смузихлебов. Вдруг мне надо что-то не стандартную либу подключить? Все используют cmake. К тому же логотип у vcpkg на порядки хуже чем у cmake
>>2086357 >Это для смузихлебов. Это для всех вменяемых людей. Нахуя что-то делать руками, когда есть автоматизация, которая все сделает за тебя и лучше? И да, как подметили - это все с симейком интегрируется без проблем.
В С++ есть конечно идея бесконечного NIH синдрома, и прочего карго-культа пердолькинга, но не надо так.
>>2086401 Согласен с тобой. В современном мире нет причин использовать неудобное и неэффективное, стоит отбросить NIH синдром и просто воспользоваться функционалом студии. Я так и сделал. Советую всем
>>2086409 >В современном мире нет причин использовать неудобное и неэффективное, стоит отбросить NIH синдром и просто воспользоваться функционалом студии. Какие же это мудрые слова
Как преодолеть свой страх перед плюсами? Я в вузе писал на адской фигне, которую преподы обозначали как C/C++, тогда я был молод и глуп, про многое не знал и наступал на сотни граблей, получил выученную беспомощность, уже планировал дропать ВУЗ, но тут нас пересадили на джаву и я наконец стал хоть что-то понимать. Прошло 8 лет, я уже 4 года как работаю Java-разработчиком, за это время писал на питоне, шарпе, даже на go пописать успел. Но при одной мысли о том, чтобы что-то написать на плюсах сложнее калькулятора - в дрожь бросает. Вот как с этим справиться? Что делать чтобы преодолеть этот психологический барьер и закрыть таки гештальт?
Начал вкат в с++ после Си, и назрел вопрос по поводу форматированного вывода: Возможно ли без особой ебли сделать это: printf("%3d %6.2f %-6d\n Hello World!",a,b,c); без си библиотеки?
>>2086419 >о при одной мысли о том, чтобы что-то написать на плюсах сложнее калькулятора - в дрожь бросает Не поверишь, у меня также. мимо почти шесть лет коммерческих крестов
>>2080946 (OP) Люблю использовать POCO https://pocoproject.org/ вместо буста (дома, на работе всё же буст везде). Я нормален? Нравится их кодстайл и какая-то ламповость, без диких шаблонных наворотов.
>>2086357 Как на счет conan? Помаленьку занимает нишу пакетника для крестов, хорошо интегрируется с cmake, даже свой репо пакетов держать не понадобиться - скорее всего, твой sfml есть на conan.io.
>>2086634 Петзольд старается успокоить читателя в своей книге, чтобы он не нервничал, когда обсуждаются сложные вещи. А Шлее в начале книге пиарит, какой Qt крутой, а потом просто перечисляет классы Qt. Типа, этот делает то-то, это другое. И читатель ничего не понимает из этого описания и чувствует себя профессионально и умственно не полноценным. Но на деле это Шлее хреновый писатель.
>>2086645 Мои профессиональные и умственные навыки на довольно высоком уровне, а если я чего-то не понимаю, то значит информация изложена плохо. Немаловажен фактор, что писатель старается подбодрить своего читателя, и тогда информация воспринимается лучше, чем скупое и бездушное описание библиотек как в книгах Шлее.
>>2080946 (OP) Я извиняюсь что вкатываюсь со своим дерьмом, но почему нигде не указаны книги Стефана р. Дэвиса? Дебилам оче помогает разобраться в языке.
>>2086831 В росо, как любом уважающем себя проекте, куча своих велосипедов, типа AutoPtr, Optional и т.п., что уже есть в STL - что-то давно, а что-то недавно. И на мой взгляд глупо разменивать вездесущие плюхи STL на какую-то маргинальщину. Ну а буст - это полигон для STL. Если что-то есть в STL и где-то ещё, то без веских причин я бы всегда отдавал предпочтение STL по соображениям переносимости, документированности и, возможно, но не факт, эффективности. Хотя у поки с переносимостью достаточно хорошо, не говоря о том, что там есть вещи, которых нет ни в бусте, ни тем более эстээлечке.
>>2086846 >C++ для чайников Потому что в этой книге "для чайников" только название и смехуечки автора, а содержательный материал если и отличается от любого другого учебника, то исключительно в худшую сторону?
>>2086928 потому что stl (standart template library) - это не более чем плод извращенной фантазии одного сходящего с ума ученого о обобщенных но сохраняющих типизацию структурах данных и алгоритмах, некая фантазия о многократной применимости единожды написанного кода
А что, в sfml такая плохая поддержка окон, что нельзя даже напрямую? выбрать создать ли мне дочернее окно или owned? Это как я понимаю через winapi надо пердолить?
>>2085132 В c64 событийное не нужно, графический режим там работает так - луч бежит по электронно-лучевому монитору, а процессор примерно каждые полтакта лочится и пересылает по видео каналу цвет текущего пикселя, это если очень упрощенно. Событийные там только прерывания, которые по сути срабатывают при совпадении текущей координаты луча с требуемой. Сам код можно писать абсолютно линейно, в духе - начался кадр, начинаем выводить пиксели, сколько успели нарисовать столько успели.
>>2087384 Мы обсуждаем эмулятор, а не реальный с64. Я знаю как устроены 8-разрядные ЭВМ, но их устройство ни как не влияет на написание графических приложений в современных ОС. Они не спрашивают чего ты хочешь, а ставят чёткое условие: хочешь графику - изволь писать по нашим правилам.
>>2087413 Я уже приводил в пример cv2, там тупо вызываешь отрисовку и все. В общем-то и в sdl2 так же, там же события системные и ввод, а вывод можно тупо в while ебошить.
>>2087129 Не надо тут. Именно STL и её модель итераторов - очень крутая штука. Степанов не зря старался, когда её делал. Но STL подводят две вещи: 1) Не очень удачные остальные части стандартной библиотеки 2) Многие вещи надо было всё-таки делать на уровне языка, а не как обычный код. Тогда бы возможно ушли километры сообщений об ошибках. Но Комитет считает иначе.
>>2085975 >Почему ты такой шиз? Все, что ты не будешь использовать в своем говне просто линкером вырежется из экзешника Голое окно на WinAPI занимает меньше 1мб оперативной памяти в релиз сборке Голое окно на SDL 2 занимает 60мб оперативы в релиз сборке
Что же там такое засирает память?
>>2085906 >SFML состоит из 5 модулей В SFML прибит OpenGL, его контекст там создается даже если нахуй не нужен
>>2087927 >В SFML прибит OpenGL Там прибит не весь опенгл, а только необходимый минимум. Чтобы пользоваться прелестями опенгл, его библиотеку нужно устанавливать дополнительно к сфмл.
>контекст там создается даже если нахуй не нужен Для рисования окна в любом случае какой-то контекст необходим. Если не опенгл, то будет какой-то другой.
Найти что-то легче сфмл - это надо очень постараться. При этом у сфмл есть хорошая документация и с ним ты пишешь на c++, а не на сях.
>>2087742 >остальные части стандартной библиотеки Расскажи поподробнее пожалуйтса какие части считаешь неудачными. Чем заменить неудачные части?
>Многие вещи надо было всё-таки делать на уровне языка На джаве исправили это и есть ли преимущества где-нибудь? И это не начала срача языков, сразу говорю. Множественное наследование например посчитали не нужным. Что еще?
Пиздец, этот Си как проклятье. От него не уйдешь. Он будет тебя преследовать везде. Уже при виде define на лбу проступает пот, страх заполняет мысли и хочется закрыть этот ссаный проект чтобы NE_VIDET_ETOGO_UGASA. Сеймы есть?
>>2088263 Говно решение - код превращается в помойку, в нем постоянно ломаются платформозависые куски кода
Лучшее решение (к которому многие с недавних пор и начали прибегать): WIN32параша.cpp POSIXпараша.cpp параша.h
В заголовке общий публичный интерфейс. В cpp конкретная платформозависимая часть, компилятор берет нужный cpp. Для каких-то специфичных платформенных полей классов юзать идиому pimpl, либо наследование (но мне больше pimpl нравится)
Вот смотри, анон. Ты же знаешь что такое WIF (биткоин)? Если знаешь, то вероятно ты знаешь и про то, что из WIF можно легко получить Bitcoin-адрес.
Задача следующая. Я хочу собрать в .txt файл список из 15000 Bitcoin-адресов с самым большим балансом.
Затем мне надо напогроммировать скрипт, который будет в многопоточном режиме, используя мощности видеокарты, подбирать совершенно рандомные WIF, на лету конвертировать их в Bitcoin-адреса, и искать каждый Bitcoin-адрес в txt файле. Если Bitcoin-адрес окажется в списке txt файла (я знаю, что он там никогда не окажется, можешь даже не писать, анон), скрипт скопирует Bitcoin-адрес и подходящий к нему WIF в отдельный txt-файл и уведомит меня о найденном ключе, продолжая искать соответствия без остановки.
Мне интересно, с какой скоростью (проверок / в секунду) эту работу будет выполнять RTX3090 и GTX1660Ti, по отдельности каждая. Т.е. подбор рандомного WIF, получение из этого WIF Bitcoin-адреса, поиск его в txt файле среди 15000 строк. Все это в многопотоке. Можно ли хотя бы ориентировочно рассчитать скорость?
Сопутствующие вопросы: Проц, я так понимаю, в данном случае будет простаивать без нагрузки и соответственно нет никакой разницы, какие у него вычислительные возможности?
Объем ОЗУ тоже не имеет значения? Иначе говоря будет ли нехватка ОЗУ (например, 16 Гб) тормозить работу скрипта?
Скрипт на чем писать, чтобы работал максимально быстро и стабильно? C или C++? Или вообще что-то другое?
Заодно хотелось бы узнать, во сколько вы бы оценили написание такого скрипта.
>>2088992 Это сложно для этого треда, анон. Сдешние способны только потролить ссылкой на студию когда просишь совета по еклипсу или еще какую ерунду написать
Я буду откровенен и скажу, что пришëл в си после более современных ЯП и даже смог вывести окно с помощью WinAPI, но я просто не понимаю зачем нужно всë это дерьмо с памятью, поинтеры, *, & и так далее. Я понимаю, что дело в оптимизации и сколько ОЗУ занимает прога (или я так думаю), но меня с моим маленьким опытом интересуют другие вещи. Лан, не знаю нахера это всë пишу в треде для задротов.
>>2089178 В более современных языках есть референсные типы (любые не примитивные) что по сути то же самое только с синтаксическим сахаром. Следовательно ты даже их не понял.
>>2089206 Я просто не понимаю почему нельзя просто пользоваться переменными, а нужно лезть в ячейки памяти и что-то там искать. Я очевидно новичëк, но для меня вся эта тема с использование поинтеров для получения данных напрямую из памяти иррациональна. Если тебе надо хранить информацию, то просто создай переменную, но я видимо чего-то не понимаю.
>>2089212 Представь огромный объект из 100500 полей, вложенныз массивов и других объектов. Каждый раз будешь это всё копировать, когда надо передать в другую функцию?
Сап двач. Поясните за рекрутинговые агенства зачем они нужны, стоит ли с ними связываться и какой профит работодателю от них? Постоянно спамят hr оттуда со сладкими предложениями особенно часто в Яндекс.
>>2089229 Дружище, никто тебе просто так не будет давать работу, скорее всего тебя хотят забрать в рабство или типо того. Ты реально думаешь, что кто-то будет пытаться дать тебе работу?
>>2089178 пойнтеры, сладенький, дают возможность косвенного обращения это фундаментальная особенность, реализованная почти во всех яп пойтеры, ссылки, срезы - все это одно и то же по назначению, отличается лишь семантикой и синтаксисом
>>2089229 >Поясните за рекрутинговые агенства зачем они нужны, стоит ли с ними связываться и какой профит работодателю от них? Поясняю по хардкору: рекрутессы закрывают вакансии галер за бабки. Т.е. за каждого нанятого гребца (после испыталки), рекрутесса получает 1000$-2000$-3000$ в зависимости от уровня и актуальности вакансии. В некоторых, особо сладких случаях, рекрутесса готова продать пизду пошарить часть премии лишь бы только устроился мне предлагали.
>>2089235 >никто тебе просто так не будет давать работу, скорее всего тебя хотят забрать в рабство или типо того Кекнул с этого рывалюционера
>>2084403 >c++ Земля тебе пухом, братишка. На нем пишут все и всё, в итоге тебе нужно будет знать не просто c++, а все его стандарты с тончайшими различиями, иначе грош цена будет всем твоим знаниям.
>>2089178 Почему бы тебе не прочесть книжку для новичков? Там не только написано, как всем этим добром пользоваться, но ещё и даются объяснения, что для чего нужно, и примеры задач.
Может я делаю велосипед, но в ходе изучения цпп я заметил, что существует два вида синтаксиса - синтаксис объявления и синтаксис использования. При чем написанное с помощью одного синтаксиса может совершенно не иметь смысла в рамках другого. Например 1. При объявлении указателей используется ⚹, которая их не разыменовывает, в отличие от обычного использования. 2. Запись a[5] при объявлении массива обозначает выделение памяти и вполне приемлема, но такая же запись для того же массива a[5] в контексте синтаксиса использования обозначает уже доступ к элементу массива и неприемлема, поскольку выходит за границы массива. Где может возникнуть проблема у новичка? Например, при использовании функций/методов. В параметрах функции используется синтаксис объявления, в аргументах вызова функции - синтаксис использования. Так в прототипе функции f1(int &value) знак & означает ссылку на тип int, в вызове функции f2(&value) знак & обозначает уже адрес переменной value. Может для вас и хуйня, но меня изрядно запутывала такая разница, пока я четко не уяснил, что есть два вида синтаксиса.
>>2089634 Всё нормально. Это префиксная и постфиксная формы использования лексемы. В объявлении f(int&) знак & сзади, у взятия адреса &int - спереди. Аналогично операторы инкремента A++ и ++A разные.
Хочу переехать в США и зарабатывать 400к/год+. Это позиция сеньора в ФААНГ.
Какой язык, если не С++, даст кратчайший путь к сеньорству в ФААНГ? Я знаю что язык лишь инструмент, нужно учить само программирование, но подскажите кратчайший путь. В интеренте так много видео-обучалок и гайдов, глаза разбегаются, не могу сонцентрировться.
>>2089599 Я умею учиться программированию только на практике, делая что-то, например окно с анимацией. В этих всех книжках всë очень теоретично и сложно понять как это использовать на практике.
Здравствуйте уважаемые, нужен совет. Я принимаю по комп порту инфу, парсю пакет дописываю в него что-нибудь и посылаю его назад. Сейчас мне нужно переехать за машину на которой нет ком порта. Адекватно ли будет работать какой-нибудь переходник com to usb ? Я так понимаю мне нужно будет накатить софтину чтобы система увидела мой usb - com как com. Кто-нибудь пользуется? Порты не висят? Пакеты не теряются? Брат жив?
>>2089759 >Адекватно ли будет работать какой-нибудь переходник com to usb ? Да. Программа видит его как обычный ком порт, только драйвера не забудь поставить. Постоянно пользуюсь.
>>2089899 Я понимаю, что прикольно издеваться на питоном и его фанатами, но я никогда не поверю, что любой человек, знающий базовый синтаксис любого языка программирования не напишет это.
>>2089704 Я именно по практической книжке и учился C по часу в день ака C за 21 день. Там учат, допустим, 2д массивы, дают упражнения и задания, что это, зачем, как использовать. Все знания из этой книги пригодились в будущем, вопросов уровня твоих у меня не возникало (кроме вопросов по энумерациям, про которые в книге не было, емнип). Наверняка в других книжках для полных новичков так же всё понятно рассказано.
>>2089984 >терпеть не могу питон, это отвратительное говнище почему?
Вообще моя мечта - большая красивая шикарно оптимизрованная ААА оупен ворлд игра, круче чем Ведьмак 3 и ГТА 3-ВС-СА-4-5. Я слышал что С++ для ААА геймдева но учить не хочу
>>2089993 > почему? Я не могу в динамически типизированные языки, а питон еще совсем не похож на то, к чему я привык, как минимум из-за этих рофлопробелов
> Вообще моя мечта - большая красивая шикарно оптимизрованная ААА оупен ворлд игра, круче чем Ведьмак 3 и ГТА 3-ВС-СА-4-5. Я слышал что С++ для ААА геймдева но учить не хочу Ну, собстно да. Но таких вакансий, типа девелоперов движка - раз два и обчелся. в РФ вообще этим 2 конторы занимаются. Unigine в Томске, и Saber в Питере. Ну мб мейлру еще какой конечно.
А если делать именно игры, а не писать двигло - то это вообще юнити, где С++ нахуй не сдался
>>2089998 WarGayMing ещё колупает BigWorld на с++. Но там вся работа это одно большое легаси, которое должно работать на древних пеках (dx12, vulkan, rtx и прочее там не практикуется). Saber как контора говно, Unigine под проекты для товарища майора, мейлру часть своего говнеца аутсорсит, так что всё совсем плохо.
>>2089891 Пускай у тебя в числе 3 биты выставлено. Тогда самое маленькое число: 0b00...0111, а самое большое: 0b111000...0. То есть numbits = popcnt(x) lowest = (numbits == 32) ? ~0 : (1 << numbits) - 1 // сдвиг ровно на 32 для uint32_t - UB нахрен, поэтому либо так, либо игрища с приведениями к uint64_t и обратно highest = (numbits == 0) ? 0 : (lowest << 32 - numbits)
>>2089680 >Хочу переехать в США и зарабатывать 400к/год+. Это позиция сеньора в ФААНГ
400к+ тебе особо платить никто и не будет. Уровнь сеньора на пикрилах. Еще учти налоги, страховки - получишь 250к - максимум 300к на руки в лучшем случае.
>Какой язык, если не С++, даст кратчайший путь к сеньорству в ФААНГ?
В фаангах предполагается что ты выучишь любую технологию. Там не используются стандартные для всех языков фремворки - в фаангах очень любят писать велосипеды. Но да, если что-то очень высоконагруженное писать, то С++ норм выбор.
Но скажу тебе, в фаанги очень большие очереди желающих со всего мира. С почти 100% вероятностью ты никогда не сможешь туда попасть. Если просто хочется много денег, то наверное проще замутить айти бизнес в России, если выстрелит, то будешь получать даже больше чем 400к долларов в год. Ну или родиться в следующей жизни в семье какого-нибудь нейрохирурга в США, который оплатит тебе медицинское образование и устроит в хорошую клинику, и ты сможешь получать по 500-600к+ в год как и твой батя. Да и в целом в российской медицине тоже есть варианты заработать, если есть бабки на образование и хоть какие-то связи.
>>2090418 Этот дело говорит. Население стареет что тут, что там. Бумеры скоро дружно начнут ходить по врачам и делать хорошую кассу. А потом ты просто будешь хорошо экономить на посещении врачей сам, имея связи и зная, куда дать на лапу и где сделают хорошо.
Все что ты вспомнил, и есть самое минимальное что существует из кросплатформенного.
Если действительно хочешь минимального, пиши сам, обмазайся ифдефами и вперед, это кстати не сильно сложно, сам писал минимальные запускалки на винапи и иксах, самое сложное наверное это мапинг всяких кодов с кулавиатуры. Ну или выдерни из glfw например то что тебе нужно и скомпиль.
>>2090418 > С почти 100% вероятностью ты никогда не сможешь туда попасть. Ну, кстати, нет. Полгода задрачивания литкода - и все, мидлом в фаанг ты попадешь. Сениором уже сложнее, там system design интервью
>>2090684 Строки заканчиваются /0. Если тебе надо сделать копию, то нужно скопировать текст и в конец добавить /0. Если в while не будет -1, то цикл скопирует последнюю букву, затем увидит /0 и завершится. При этом строка to останется без /0 на конце.
Само решение добавить таким способом в конец to /0 проблемное, потому что на первой итерации while происходит чтение за пределами блока from. А там может быть /0 и тогда вообще ничего не скопируется.
>>2091526 Насколько мне объясняли это вообще один язык. Классы возможно заменить на typedef, темплейты предополагаю перегрузкой а stl возможно чем-то другим не знаю чем и отличие будет только в библиотеках.
>>2091593 typedef не может заменить класс, так как содержит только данные. Перегрузки в Си нет странно кстати почему. stl может и можно заменить, но в стандартной либе нет. Вот разберись с си тут канал для начала не плох https://www.youtube.com/channel/UCz29nMCtFP5cuyuLR_0dFkw
>>2091659 > Перегрузки в Си нет странно кстати почему Потому что для его запливания пришлось бы делать name mangling, и все соглашения о вызовах пошли бы нахуй => никакого FFI. Его отсутствие тем и хорошо, что любой другой язык может подгрузить сишную либу и искать функции тупо ио их названиям без ебли с кодированием суффиксов в зависимости от сигнатуры.
>>2091659 Это всё сахар. Раньше писали вообще на ассемблере. С и так дофига упростил в программировании, но программисты обленились, что им лень даже написать лишнюю функции и хотят, чтобы компилятор за них писал. Скоро наверно вообще программирование сведут к кликанью по красивым картинкам.
>>2091669 щас бы быть анальной шлюхой синтаксического анализатора, наверное и sum(int a, b) выносишь за компилятор, ведь тебе известно все 200к строк в программе и ты можешь похожие функции просто вывести за границу классов и структур. >кликанью по красивым картинкам. и заебись, будут просто подбирать инструмент и юзать а не дрочить дебагер поставил написал ли я указатель или ссылку ебанул
>>2091669 >Раньше писали вообще на ассемблере Поридж, плез. 15 лет бейсико- и паскале-подобных полноценных языков 1954 FORTRAN 1958 ALGOL 1959 COBOL 1962 SIMULA 1964 BASIC И только 1969 C, основанный на CPL 1963 Алсо Simula 67 introduced objects, classes, inheritance and subclasses, virtual procedures, coroutines, and discrete event simulation, and features garbage collection.
>>2091818 На них писали прикладные программы, а системные на ассемблере. Да и порой ради эффективности приходилось всё равно переписывать программы с ЯВУ на ассемблер. И я знаю о чём говорю, потому что в детстве учился по старой литературе тех лет. Первым языком ВУ пригодного для системного программирования стал как раз С.
А зачем нужен с++, игры пишут на юнити, анрил энджин не особо к нему относится, для микроконтроллеров есть с, для веба ещё миллион штук разных, что на нём пишут вообще?
>>2091923 Что программизм, а что нет сразу выкинь из головы - это инфантилизм. Я например пишу для души игоры на UE, раньше работал джавистом, но перешел на React JS.
Пытаюсь получить url активной вкладки в хроме, код работает если поставить брейкпоинт на строку, которую я подписал, и нажать продолжить просто. Если запускаешь без брейкпоинта, то выводит пустую строку. Помогите, пожалуйста, я даже не знаю в какую сторону думать и гуглить https://pastebin.com/uTYz59Jx
>>2092538 > inline variable Бля, каждый раз захожу в крестотред и узнаю что-то новое, шизики из комитета совсем ебанулись? Пускай лучше стандартную либу пилят, сука.
>>2092593 >So, in practical terms the (now accepted) proposal allows you to use the inline keyword to define an external linkage const namespace scope variable, or any static class data member, in a header file, so that the multiple definitions that result when that header is included in multiple translation units are OK with the linker – it just chooses one of them.
>>2092701 Можно определить пару переменных и использовать их как регистры процессора. Если какая-то переменная свободна, то используешь её, а не заводишь новую. Во время оптимизации, компилятор заменит такие переменные на регистры и код будет сверхэффективным.
>>2092729 Я не понимаю, зачем определять переменную 10 раз в одной программе. Да и в G++ есть специальный флаг для этого безумия, насколько мне известно.
>>2091902 типа хаскелля или лиспа, типа прикольно но не более того, нет практических применений, бизнес не заинтересован поднимать программные системы основанные на с++ кодобазе, языком занимаеться кучка энтузиастов-нищебродов
>>2092983 Что в компиляторе, что в голове всё разматывается в SSA, так что вообще разницы никакой. Кроме убитой читаемости кода в силу только одного generic имени для переиспользуемой переменной, конечно же. Кончайте уже троллить, вкатыши же за чистую монету примут.
>>2093121 > Так же, как и исклчения от всех остальных функций\методов Я ж написал, что объект тогда станет локальным и мне придется тянуть в try блок вообще весь код, в котором я этот объект использую. С другой стороны можно сделать динамический объект, но это не путь самурая
>>2093122 >Я ж написал, что объект тогда станет локальным и мне придется тянуть в try блок вообще весь код, в котором я этот объект использую. В этом и идея использования эксепшенов как бы. У тебя все может кинуть, и пусть все будет внутри try блока.
Других вариантов особо нету, кроме хуиты с разделением создания\инициализации.
>>2093122 >объект тогда станет локальным Проверил твою теорию и нет - все объекты создались и стали глобальными. Конструктор это не просто функция, он создает объект.
>>2093115 Бросать можно. Нет способа поймать исключение от инициализатора глобальной переменной. Страуструп пишет, что это еще один повод не использовать глобальные переменные.
Я конечно дурачок, но - какого хуя cosf() 90 градусов мне какую-то хуиту возвращает? Мои знания двоишника говорят что косинус 90 градусов должен быть равен нулю.
Но вот я написал код в студии - а он мне какую-то хуиту вернул, написал коде в идеоне - и там мне тоже какую-то хуиту вернуло https://ideone.com/iKnDWw
Как тогда сделать правильно? (если что, тут все в радианах)
>>2093632 Ммм? не сравниваю (если надо, то больше-меньше), вопрос же про то почему там какое-то -4.37... выводится? Мне это код ломает так как умножаю на это значение и вместо ожидаемого нуля от косинуса 90 градусов получаю хуиту
>>2093684 >там какое-то -4.37... выводится Ты не туда смотришь. Надо смотреть на e-08
>вместо ожидаемого нуля от косинуса 90 градусов получаю хуиту Ты открыл для себя точность операций с плавающей точкой, поздравляю. Тут многие арифметические законы не выполняются + есть целая наука (вычислительная математика А МАТЕМАТИКА ДЕБИЛАМ НЕ НУЖНА) которая занимается вопросами точности и прочих приколов вычислений на компуктерах
>>2093862 Ох, эти вьетнамские флешбеки, когда я не смог сдать вычмат и меня нахуй выгнали из вуза. Я так и не понял что от меня надо, что это за эпсилон в сравнениях и тд.
>>2093877 >Я так и не понял что от меня надо Там нужно было тупо понять что 1010 + 10-10 = 1010, что 1 / (232) = 0 и что эти подводные камни нужно обходить.
>что это за эпсилон в сравнениях Тупо точность. У тебя вычисления с плавающей точкой никогда не дадут ноль (или любое точное значения), а потому сравнивать два плавающих числа можно только как fabs(a - b) < eps.
>>2093883 Щас я уже все это понимаю, сениорская лычка обязывает. Но когда я рассказываю, что в вузике не смог сдать С (а вычмат был на С) - это прям байка уже локальная
Что могут спросить на собесе, если в вакансии указанно знание Unix систем? Нихуя в них не понимаю, только линукс тыкал немного (какое же он гавно ебаное), а собес ирл будет, страшновато.
Здравствуй уважаемый анон. Так случилось, что мне нужно ковырять qt. Нужно постоянно принимать пакеты через ком порт. временами нужно собрать пакет и отправить его через ком порт обратно. Я планировал сделать два потока, один принимает пакеты и парсит их, второй просто ждет пока я соберу пакет и как только соберу - отправляет назад. Когда я зашел на русский qt forum там всех таких умников как я смачно поливают говном типа многопоточность в чтении и отправке при использовании qt не нужна и у меня нахер все упадет и неизвестно какие баги вылезут. Посылают всех в грубой форме читать про асинхронные вычисления, но async же мать его всеравно (potentially in a separate thread which might be a part of a thread pool). Полистал Шлее там про QSerialport пустота. Порекомендуйте может быть что почитать или как лучше сделать?
>>2094442 >про асинхронные вычисления Тебя послали не про асинхронные вычисления читать, а про асинхронное I/O (асинхр. ввод-вывод). И правильно сделали - треды и синхронизация обычно тяжелые для процессора штуки.
>Полистал Шлее там про QSerialport пустота Епт, читай документацию к Qt (в QtCreator можно F1 нажать например). Вкратце: 1. открыть-настроить порт (название правильное, скорость, все дела) 2. подключиться к сигналу QIODevice::readyRead (QSerialPort от него унаследован) и там вычитывать в обработчике (с помощью метода readAll) данные.
Не забывай, что readyRead может прилететь на середине пакета, твой парсер должен это уметь обрабатывать
>>2094449 Спасибо. Буду читать. Как считывать понятно, а как без второго потока отправить пакет, например, паралельно с парсингом не понятно. Ну чисто психологически:3. Ну парсишь ты входящий пакет, сумму контрольную проверяешь, байты перекладываешь, а тут херак - прилетает команда и нужно пакет отправить паралельно парсингу, не прекращая прием пакетов.
>>2094449 Спасибо. Буду читать. Как считывать понятно, а как без второго потока отправить пакет, например, паралельно с парсингом не понятно. Ну чисто психологически:3. Ну парсишь ты входящий пакет, сумму контрольную проверяешь, байты перекладываешь, а тут херак - прилетает команда и нужно пакет отправить паралельно парсингу, не прекращая прием пакетов.
>>2094456 >>2094457 >а тут херак - прилетает команда и нужно пакет отправить паралельно парсингу А не нужно параллельно. Отправишь после того как обработаешь прочитанный ранее кусок.
>2094470 Именно так. И я не знаю зачем мне после приема отправлять. Может сложиться такая ситуация, что приема вообще не будет. А отправить пакет нужно будет. Какой-нибудь датчик температуры отвалится, а мне нужно отправить команду на открытие арматуры. Например.
>>2094442 >умников как я смачно поливают говном хуй знает, я бы на такие вопросы даже реагировать бы не стал, ибо понятно и из вопроса что ты нулевой и что пользы с тебя не будет никакой, типа плавай сам в океане своего невежества дальше
>>2094449 нахуя ты ему это обьясняешь? надеюсь ты понимаешь что это твой (потенциальный) конкурент, который отберет у тебя миску баланды, а ты после 30ти отправишься на помойку догнивать или куда там пропадают кодеры после 30ти?
ладно бы челик спрашивал за какое-нибудь метапрограммирование на крестах, за кодогенерацию и прочие приколюхи ибо было бы понятно что это чисто для фана, тк бесполезная хуйня, типа лайт хаскелль
>>2094697 >надеюсь ты понимаешь что это твой (потенциальный) конкурент, который отберет у тебя миску баланды Это мой потенциальный подчиненный которому я мог бы скидывать унылые таски
>а ты после 30ти отправишься на помойку догнивать или куда там пропадают кодеры после 30ти? Мне 32, лалка
>а тут бля прямой конкурент Если этот челик для тебя апасны конкурент, то у меня для тебя плохие новоси
>>2094697 > пропадают кодеры после 30ти Я вот думаю, уволиться нахуй что-ли. А то я накопил на 20 лет жизни с нормальным доходом (100к\м) а хата в мухосрани у меня есть личная.
>>2094705 > А то я накопил на 20 лет жизни с нормальным доходом (100к\м) а хата в мухосрани у меня есть личная. Не, не увольняйся. Копи дальше на яхту, на пример. И сдохни от разрыва сердца в 45 лет лучше, чтобы прямо с рабочего места увезли на скорой в морг.
>>2094717 Так и не увидев красный закат над лесом стоя на высоком берегу дикой лесной реки, где на берегу будет разбита твоя палатка, в котле доваривалась бы уха и ни одной суки с ноутбуком за 300 километров.
>>2094755 Да, я скорее про общий опыт варения в технической литературе, учебниках и прочем. Теперь тебе нужно просто взять и решительно начать. Этот >>2094758 хочет тебя сдиванонить.
>>2094735 >автор вопроса про qSerialport мне 30 наши соболезнования! если ты бля в 30ку когда уже погроммист заканчивает сваю карьеру путаешь асинхронку в параллельных вычислиниях и асинхронку в вводе-выводе хаха признавайтся, ты же вкатыш да? вуз то заканчивал? инженер или говно?
>>2094803 ну, колись какой ты инженер? чому не пошел работать по специализации? а, сука страна 5 лет на тебя ресурсы тратила, выращивала нужного спеца а ты пошел в погроммисты? а, блядь?
>>2094865 >ну, колись какой ты инженер? чому не пошел работать по специализации? а, сука страна 5 лет на тебя ресурсы тратила, выращивала нужного спеца а ты пошел в погроммисты? а, блядь?
>>2080946 (OP) Всем привет. Нулевой вкатывальщик в треде.
Зачем переменным присваивают нулевые значения с программах калькуляторах? Что мешает просто оставить их неизвестными (пустым множеством) и задавать только после cin-а пользователя?
>>2094934 > Что мешает просто оставить их неизвестными Программирование не настолько абстрактно, как математика. Переменная не будет неизвестной, она будет содержать мусор, что иногда может привести к ошибке.
Операции с указателями (арифметика\дереференс\указатели-на-указатели) Как работает вектор\unordered_map Идея СТЛ Алгоритмов+Итераторов Дискуссия про эксепшены Дискуссия про ООП Отношение к виму (если тебе нравится - сразу нахуй no hire)
>>2095076 > Отношение к виму В один ряд ставятся те, кто почти всё делает в вижуалке и юзает вим изредка для всякой мелочи и те, кто не признаёт никаких других средств разработки кроме вима, так?
>>2080946 (OP) Основная проблема плюсов вовсе не в отсутствии работы, отсутствии сборщика мусора, токсичном комьюнити или устаревших лабах в вузах, как может показаться на первый взгляд. А в том, что под плюсы нет вменяемых IDE и компиляторов(инбифо гцц или шланг норм компиляторы). Проприетарная праша С++builder, "студия" мелкомягких и еще более ужасный Qt отбивают всякое желание учить язык.
>>2097469 + отсутствие нормальной системы сборки и менеджера пакетов. CMake и vcpkg/conan - наименьшее зло, созданное из-за попыток усидеть сразу на нескольких стульях.
Мне плюсы все больше напоминают тайные масонские знания. Помимо общеизвестных типов данный есть еще адресные типы (тип указатель на int, тип указатель на double и т.д.), о которых не говорится прямо, но упоминается вскользь (как и про "распад" массива ничего толком не объясняется). Еще оказывается массив int a[3] и int b[5] это разные типы данных из-за разной длины массива. Так вот, где можно найти истинные знания, в которых будут описаны все типы данных, откуда они и зачем?
>>2097469 >что под плюсы нет вменяемых IDE Вменяемые иде поддерживают все популярные языки, включая плюсы. Здесь все не хуже, чем у других.
>и компиляторов Си плюс плюс де факто - единственный компилируемый язык общего назначения среди живых. Так что у других языков вообще нет никакого компилятора.
>>2097969 >Си плюс плюс де факто - единственный компилируемый язык общего назначения среди живых Го и свифт тоже компилируемые же. Да, в код с нехилой поддержкой рантайма, но всё же не JIT.
>>2098048 И правильно, general-purpose языки не нужны. Даёшь подходящий под свою задачу. HPC? Изспользуй фортран. Сервера с IO-bound задачами? Используй го. И так далее.
>>2098199 > general-purpose языки не нужны Это хитрый план по раздутию бюджетов проектов. Вместо одного разраба на универсальном языке приходится нанимать целый штат калек с узкоспециализированным говном.
Аноны, открыл для себя ебанутый мир метапрограммирования. Как можно отработать всю эту дичь, где может понадобиться такое количество дичайших шаблонов?
Использую в C++ RegGetValue в простейшем консольном приложении, но он некоторые записи реестра просто игнорирует. Пробовал запускать от админа никакой разницы.
Создавал ключ в реестре такой же сам для проверки, но пох ему
Вообще я пытаюсь оттудова получить версию service pack, но на проверку выяснилось, что не все записи оно считывает, то есть явно наблюдается некая прослойка, которая решает что выдавать, а что нет.
С правами системы не пробовал запускать, да и не уверен, что норма для самописного консольнохо приложения.
>>2099621 В итоге сопротивляется из-за всех сил, всё равно выдаёт предъидущее значение, хотя буфер заново создаётся при каждом вызове функции, впрочем, оно и понятно, указатель туда смотрит.
Как часто можно менять работу? Норм через полгода уйти из хорошего места на х1.5? Что отвечать хрюшам на вопросы о причинах смены работы? Менял работу только один раз в жизни на первой работе 3 года веслал и думал что все крестовики так мало получают.
>>2080946 (OP) Что хотят увидеть интервьюеры когда решаешь простую задачу типа литкода? Знание структур данных или скорость? Разрываюсь между вариантом написать все на вложенных for лупах или примерить контейнры например map с какой-нибудь мудреной логикой для скорости. Кстати о скорости. Что лучше - STL или лупы? С одной стороны мне сказали что STL оптимизирована c другой стороны из за шаблонов там должен быть накладные расходы.
>>2103821 Здесь в треде говорили что мидл отличается самостоятельностью, поэтому похоже на джуна. ( Читал у Роберта Мартина что обычно год менторства достаточен, чтобы "ремесленники" взяли к себе новичка.) Поэтому похоже тебя компания не считает за профи. Но я сам не точно не знаю потому что новичок.
>>2103776 Хотят увидеть, что ты умеешь думать логически и не обсираешься в том, что ты пишешь (на stl или без - не принципиально). Естественно, что если задача с stl решается в 2 строчки, то попросят писать без него.
>>2103821 Новый сотрудник это всегда источник багов и велосипедов, так что за ним пару месяцев приглядывают и вводят в курс дела (если есть кому). А про мидлов, ждунов и сеньёров просто забудь.
>>2104092 Да обычные деньги для ДС-ов. Если проект большой, то сегодня ты фичу напишешь, а через неделю найдёшь какой-то код, с которым она пишется в три строчки. Через две недели поймёшь, что делать надо было совсем не так (интеграционные баги, архитектурные проблемы, производительность).
>>2106639 1. Используй R-строки, если много чего экранируешь 2. Квадратные скобки не нужны, просто "\d{1,2}\.\d{1,2}". Для захвата нужны круглые скобки. 3. Может ещё окружить с "\b" чтобы не матчились строки типа "a51.23b", но я не спец. 4. Используй https://regex101.com/
Я погулил, но так и не понял. Я знаю, что порядок выполнения выражений аргументов при вызове функции неопределён, имплементейшен дефайнд, вроде бы. Типа foo(bar(), baz()), что выполнится первым bar() или baz() неопределено. А вот с операторами как? Кроме логических. Например auto i = bar() + baz() + bas();? Операторы это же тоже функции в каком-то смысле. Для них тоже не определено или как?
Вот есть сишная библиотека (в данном случае GLFW). В ней есть калбек на функцию для логирования (да там дохрена такого). Но у меня лог - это класс. Как блядь сделать чтобы не говно было?
Понятно что можно заебошить синглтон или вообще глобальную переменную вляпать - но это же хуита. Если в одном месте наебошил глобальных переменных - но и в другом они насрутся - тут полностью нарушается принцип инкапсуляции - потому что потом хуй знает кто изменил данные в этом классе (в логе такого нет, а например в системе инпута есть)
Неужели нет более лучшего способа передать туда ебучий лог как объект? Ладно, в некоторых либах есть возможность передать юзердату в виде воида. А где такого нет?
Как мастера с такой хуитой справляются? Ебошат синглтоны и глобальные переменные?
Или может есть какой-нибудь паттерн или идиома на этот случай?
В жизнь не поверю что Мейерс и ко никогда не связывали сишные либы со своими ооп-проектами.
>>2109198 > Как раз таки Мейерс про логи и инпут и писал, что для них синглтон - самое то. Но можно обосраться, если хочешь логировать в деструкторах глобальных либо статик объектов. Поэтому делай не просто синглтон лога, а синглтон shared_ptr на лог. И храни эти указатели в таких объектах либо в cpp объявляй их перед глобальным объектом.
>>2097947 >о которых не говорится прямо, но упоминается вскользь это еще что. вот когда ты поймешь что тебе никто ничего не сказал о том как эти переменные хранятся.... где хранятся статики, как функции выделяют под себя стак....
>>2097969 >Вменяемые иде поддерживают все популярные языки, включая плюсы. Это говно поддерживает кучу языков. А IDE должна быть заточена под один - чтобы я блядь не ебался пытаясь ее настроить.
Пробовал visual studio code - какое это блядь блядьбство, чтобы ее полностью настроить на работу с языком, нужно дохера посидеть, постоянно решая возникшие с ней проблемы, вместо того чтобы код писать. А ведь в ней хотя бы попытались сделать все на уровне клика мыши. В других надо вообще с консолями ебаться
Собственно не я один так думаю, вроде появилась тема брать эту VSC и собирать сборку под конкретный язык чтобы оно сразу все работало
>>2112608 Да нету уже проектов, которые на одном языке написаны. Обычно 2-3 языка и 3-4 devops инструмента, которые тоже в IDE надо через плагины встраивать. Если хочешь писать laba.cpp или proof_of_cocept.cpp, то бери студию. Если что-то современное молодёжное, то модульную IDE типа vscode или clion.