Вместо шапки — https://github.com/sosachbot/cppthreadhat/wikiОтветы на все вопросы:- http://en.cppreference.com/w/- http://www.cplusplus.com/reference/Прошлый:- https://2ch.hk/pr/res/1110566.html
Может #66?
>>1119766А, я долбоеб, забейте.
>>1119750 (OP)Обязательно читать Эффективное использование C++ и потом Эффективный и современный C++? Или можно только последнюю?
>>1119878вообще это говно не надо читатьбыли давно-давно назад куплены обе и прочитаныненужно
>>1119899А что надо читать?
>>1119899Лел.>>1119913Стандарт. Или двач. На твой выбор.
>>1119913>А что надо читать?K&R штудируешь, прочитывая пару раз, делаешь упражнения, добиваешься чтобы каждая фраза в приложении где формально описан язык была тебе понятнапотом берешь страуструпа "с++ специальное издание" и оттуда зубришь ТОЛЬКо главы относящиеся непосредственно к языку (это будет около 150 страниц), остальное нахуй не нужно, тк страуструп любит лить воду, выполняешь несколько упражнений, потому что опять же страуструп любит в своих книгах давать дохуя упражнений, которые все хуй переделаешь если ты не ноулайфер ебаныйну а дальше уже кодишь, время от времени почитываешь доки-статейки по тем аспектам языка что тебе непонятны и понадобились при решении практических задач
>>1119916>k&rя забыл, мы ща в каком треде
>>1119916>K&R штудируешьПроштрудировал года 3 назад. Не впечатлило. Нужно еще разок? >берешь страуструпа "с++ специальное издание" и оттуда зубришь ТОЛЬКо главы относящиеся непосредственно к языку (это будет около 150 страниц)Спасибо, так и поступлю.И почему те книги не нужно читать? Вот интересно просто. Везде советуют, а тут наоборот.
>>1119878Начни с последней
>>1119921Тут у людей своё видение.
Что почитать про WinAPI,чтобы быстро вникнуть в тему?
>>1119973http://pubs.opengroup.org/onlinepubs/9699919799/
>>1120000а что-нибудь на русском?
Сап, плюсач. Как использовать Qt в VS2017? Хочу сделать GUI, а QTCreator ставить не хочу
>>1120015Qt assistant. И креатор понадобится
>>1119973если совсем нулевой - то рихтера "windows для профессионалов", 4е изданиену а дальше уже ебашишь по msdn или грызешь более специализированные книги, статьиа вообще конечно, лучше не начинать - работу ты щас на крестах да еще и на винде хуй найдешь если новичек, искренне не советую в общем
>>1120020Так уже долго висит...
>>1120034Ну хер знает, у меня не висело.
>>1120040В общем, онлайн инсталлер не работает. Скачал оффлайн отсюда http://download.qt.io/official_releases/qt/5.10/5.10.0/
j = Array.Length <= i ? 0 : Array;Зашквар или нет?
>>1120092Не сработает. В тернарном операторе обе ветки должны быть одного типа
>>1119750 (OP)Подскажите книгу для новичка. Желательно с большим кол-ом примеров.
>>1120032>и совсем нулевой - то рихтера "windows для профессионалов", 4е издание>ну а дальше уже ебашишь по msdn или грызешь более специализированные книги, статьи>а вообще конечно, лучше не начинать - работу ты щас на крестах да еще и на винде хуй найдешь если новСори, я уже нашёл, я раньше под Linux-ом прогал, а теперь мне надо будет копаться в тоннах legacy windows говна.
>>1120190И переписывать его на сисярпе
Аночик, помоги. Пишу курсач на с++. В задние написано: реализовать оконный интерфейс с помощью ассемблеровских вставок. Вставки могут быть на другом языке, например:си,с#. Вопрос в том как это все сделать? И что вообще за вставки, в гугле видел только про ассемблеровсктекие ? Пишу все в vs.
>>1120245Лабы идут на хуй
>>1120377Почему?
>>1120032>а вообще конечно, лучше не начинать - работу ты щас на крестах да еще и на винде хуй найдешь если новичек, искренне не советую в общемЛОЛ, а я тут в C++ усиленно вкатываюсь
>>1120391Очевидно, иди на хуй
>>1119916K&R это что?
>>1120427мммм, какой ты дерзкий)
>>1120415если ты молод то, блядь, вкат в кресты будет одним из самых твоих хуевых выборов в жизни
>>112047325 лет считается за молодость?
>>1120473Вкатился в кресты в 26 лет, сейчас 29 и зарплата 4500 долларов по курсу ЦБ РФ (Контора в баксах все считает).Это было лучшим решением в моей жизни.
>>1120182>Подскажите книгу для новичка. Желательно с большим кол-ом примеров. http://deti-knigi.ru/3000-примеров-по-математике-1-класс
>>1120502ты это пиши в зарплата-тредах в /b, тогда к 35 будешь гарантировано выкинут на помойку и заменен молодым мясом
>>1120473А если я стар?
>>1120506каким молодым мясом, артист?молодые вокруг все ангуляр-программисты, и прочий веб. Чувак в моей команде, которому в районе 45 - получает больше 400к в месяц чистыми.
Почитал тред, вообще стоит вкатываться в с++, если тебе 18?
>>1120516Да причём тут возраст-то блядь
>>1120508Какой лвл?
>>1120528Ну блять, потому что молодой (или нет) человек сверху написал, что это учить кресты - хуёвое решение
>>1120531Я бы поинтересовался аргументами. Затем послушал других, не ограничиваясь имиджбордами.
>>1120532Ну ты можешь что-нибудь сказать про кресты и почему их стоит учить первым языком пездюку, как я?
>>1120533Учи лисп.
>>1120516Если тебе 18 лет, то вкатываться надо в то, что тебе интересно, будь это стоматологшия, С++, сьем видосов на ютубе и прочая хуйня. Только то, что тебе правда интересно может принести тебе доход и счастье в жизни. Если тебе похуй вообще все - вкатывайся в ангуляр, будешь ангуляр программистом
>>1120537>Только то, что тебе правда интересно может принести тебе доход и счастье в жизни.Тащемта опасное и вредное рассуждение
>>1120538да, я в курсе что у пидорах принято страдать всю жизнь. БОХАТО НЕ ЖИЛИ, НЕЧА И НАЧИНАТЬ.
>>1120540Не, из книжки профессора из мит почерпнул.
>>112053030
>>1120546Образование?
хоспаде как же хочется модули
>>1120548Ну че ты вот про плохое сразу?
>>1120533делать-то чего хочешь
>>1120550Да расслабься, я тоже старый дебил без образования. Оцениваю шансы.
>>1120553Ебашить на лиспе.
В линуксе какую иде лучше использовать? а какой текстовый вы используете? естественно в линуксе, мне нано нравится, ну к примеру, а иде какое?
>>1120511>>1120502окей, просто скажи предметную областьфинтех? hft?просто говоришь про бешеные деньги для крестобляди если речь про россию
>>1120561GNU Emacs Lisp.
>>1120564А иде? нужен или нет? если просто в текстовом пилить без подсветок? для больших работ обязательна иде?
>>1120563Известная фирма-производитель пекажелеза.
>>1120564Для C++ есть ровно 1 IDE - это Visual Studio, все остальное - полурабочее дерьмо. Так что ставь шиндошс десять и ебашь.
>>1120561Clion
>>1120575мдэ..Чот я в финтехе с опытом 7+ меньше получаю.
>>1120473я уже вкатился в инженеры и я не думаю, что кресты будут сильно хуже. хотя бы по хх.ру там стабильный рейт х2. сука. знал бы прикуп, уже б давно постелил для переезда в сочи.
Вы тёлок трахаете вообще?)
>>1120717неа, строго мужиков. строго в сракотан
>>1120653Ну, если честно - мне очень сильно повезло, что я нашел вакансию, за которую давали дохуя денег, и у меня по требованиям, даже рекомендованным было 100%ное попадание.
>>1120723>и у меня по требованиям, даже рекомендованным было 100%ное попаданиеА что за требования примерно были? Опыт работы с winapi?
>>1120735Скажем так, требования были охренительно специфические, но они у меня были по счастливой случайности (с нужной областью на удаленке немного работал).
>>1120245 >>1120391Потому что у тебя ест препод, которому зарплату платят, уёбок.
>>1120554Умеешь поддержать, сразу видно.>>1120561КутэКреатор. Что для меня важно в нём:- умное автодополнение (не как в нотпад++)- поиск определений/объявлений в инклудах- проекты (компиляция без ебли с мейкфайлами, остаётся ебля с либами)- подсветка структуры вложенности блоков кодаПолезные излишества:- статический анализатор (включается в "плагинах")- подсветка всего и вся, а не только базовых понятий>>1120564Он IDE просил, а не OS.>>1120577Съеби.
>>1120723попробую пованговать что это nvidia а из специфических требований - perl в качестве второго языка
>>1120749> Съеби.Просто поставь студию 2017 и решарпер С++ - и сам увидишь, каким говном ты обмазывался все это время. Но да, культикреатор сильно лучше, чем остальные ИДЕ под луникс, типа ЭКЛИПСА, там такой пиздец, что я лучше в виме писать буду.
>>1120764а как же божественный и минималистичный Code::Blocks?
>>1120765Который вообще ничего не умеет?
>>1120764>Просто поставь студию 2017 и решарпер С++ - и сам увидишь, каким говном ты обмазывался все это время.Всё это время - это студии 2010, 2012, 2013? В какой там студии вернули возможность отключить MRU при ктрл-табе без плагинов? Ты падения МСВС-компилятора не видел - зато я видел. У тебя манагед-код летает, а у меня нет. Ты баги студии не видел, зато я видел. Студия твоя ставится хуй знает куда, занимает гигов 10 (ЕМНИП), прошу поставить на Е - один хуй куча дерьма влетает на корневой диск. Поддержку других компиляторов там когда добавили хоть? Два года назад? (инбифо Интел ИЦЦ) Про встраивание блоба от майков в скомпилированный код коммунити-2015 ты не знаешь или забыл? Совместимость статических либ там уже проверяется или до сих пор нечитаемые сообщения компилятора или ошибки рантайма? В 2013 (или в какой там) не мог настроить цвет столбца номеров строк - всё тёмное, слева белая блямба. Редактор цветовых схем там в каком году завезли или нет его до сих пор? Вызов оффлайн-документации по нажатию кнопки там появился уже или нет?Автодополнение в 2015 на моём E8500 работает секунды полторы на мало мальски значительном проекте. В QtCreator - доли секунды.Что в ней такого охуительного, что всё остальное мусор - одному тебе известно. Ни одно положительное качество студии (я разве говорил, что их нет?) для меня не перевешивает недостатки.
>>1120782> Автодополнение в 2015 на моём E8500 работает секунды полторы на мало мальски значительном проекте. В QtCreator - доли секунды.Вопросов более не имею.
>>1120785Зато я имею, отвечай.
>>1120782>Поддержку других компиляторов там когда добавили хоть? Два года назад? (инбифо Интел ИЦЦ)Сlang и gcchttps://blogs.msdn.microsoft.com/vcblog/2017/03/07/use-any-c-compiler-with-visual-studio/
>>1120782> ты падения МСВС-компилятора не видел - зато я виделЯ их два зарепортил майкрософту.> Ты баги студии не видел, зато я видел.Сама студия работает близко к идеальному. Но мне нравится твоя уверенность в твоем, что твоя красноглазая параша без багов.> Студия твоя ставится хуй знает куда, занимает гигов 10 (ЕМНИП), прошу поставить на Е - один хуй куча дерьма влетает на корневой диск.Это вообще не проблема, а высосанная из пальца хуйня. Если у тебя винт на 80гб - ну, попробуй найти работу.> Поддержку других компиляторов там когда добавили хоть? Два года назад? (инбифо Интел ИЦЦ)Шланг есть, гцц ремоутно умеет.> Про встраивание блоба от майков в скомпилированный код коммунити-2015 ты не знаешь или забыл?Знаю, вообще ничего страшного.> Совместимость статических либ там уже проверяется или до сих пор нечитаемые сообщения компилятора или ошибки рантайма?Не сталкивался, но плохо представляю, как у тебя IDE разные ABI сама проверяет лул.> Редактор цветовых схем там в каком году завезли или нет его до сих пор?В 2015 был точно.> Автодополнение в 2015 на моём E8500 работает секунды полторы на мало мальски значительном проекте. В QtCreator - доли секунды.Тут самый главный кейс, что ты студентик-хеллоуворлдщик, который настоящую разработку не видел, а уже что-то придумывает. Давай, напиши мне в культекреаторе драйвер под винду. Или подебажь без пердолинга.
Здарова кореша, пытаюсь откомпилить вот этот пример в VS2017 http://paste.org.ru/?mwscgeОно пишет: Ошибка (активно) E0513 значение типа "const char *" нельзя присвоить сущности типа "LPSTR" Погуглив, выяснил, что это что-то связанное с кодировкой, в свойствах проекта провбовал другие кодировки - не помогло.
>>1120809LPSTR это char, у тебя const char. Компилятор корректно тебя бреет, т.к. ты пытаешься убрать константность.
>>1120813 А как можно это исправить, чтобы откомпилировалось?С++ только начал изучать, прошел "Hello World"
>>1120815https://ru.wikipedia.org/wiki/Strdup
>>1120782> встраивание блоба от майковА можно поподробнее?
>>1120816Вместо pe.szObjectName = "Processor";поставилpe.szObjectName = _strdup("Processor");Вродебы откомпилировалось, но не работает как надо, ошибок нет.
>>1120819https://www.reddit.com/r/cpp/comments/4ibauu/visual_studio_adding_telemetry_function_calls_to/
Верно ли, что перед сборкой GUI проекта на QT нужно каждый раз вызывать qmake? Или только первый раз?
>>1120577Неистово двачую! На работке сами сначала всё пишем в студии+кутя. В линукс залазим только чтобы релиз компильнуть и выкатить.>>1120799Дополню, что в студии охуенный конфигуратор проектов. Не надо зубрить флаги и в маны лазить на каждый чих.
>>1120815>С++ только начал изучатьты точно осознаешь, зачем это делаешь? с какой целью?
>>1120809>Здарова корешатут нет твоих корешей, уебоктот только наивные лупогразые кодерки готовые отвечать на вопросы вкатывальщико-ньюфагом, и тем самым пилящие сук, на котором сидят
>>1120799>Но мне нравится твоя уверенность в твоем, что твоя красноглазая параша без багов.Мне не нравится твоя уверенность в моей уверенности. Это не я сравнивал все ИДЕ с визуалстудией, как говно с божьим даром, а ты.>Шланг есть, гцц ремоутно умеет.Я не спросил, что оно умеет, я спросил "когда". Правильный ответ - год назад, когда индустрия к стенке припёрла.>Не сталкивался, но плохо представляю, как у тебя IDE разные ABI сама проверяет лул.У меня IDE и компилятор разными организациями написаны, с IDE спрос невелик.>Тут самый главный кейс, что ты студентик-хеллоуворлдщик, который настоящую разработку не видел, а уже что-то придумывает.Адхоминем (правдивость суждений разбирать не буду). Олсо, обрати внимание на то, что я не тебе, напористому драйверописателю, советовал Креатор, а ньюфренду.>Давай, напиши мне в культекреаторе драйвер под винду.Надо будет - напишу.>Или подебажь без пердолинга.Есть разные подходы к дебагу, не только кнопочки в окошке тыкать.>>1120824Хуёво быть тобой.>>1120850Нет и нет. Я помню, что у меня были какие-то траблы в 4.0.3, иногда он не вызывался, хотя должен был бы. Вот прямо сейчас проверил в Qt Creator 4.4.0 - нет, не надо его вызывать сразу после создания.https://stackoverflow.com/questions/12873437/force-qtcreator-to-run-qmake-when-buildingВ QT5.8 даже в этом случае надо вызывать его, например, тоже проверил.
>>1120930> Надо будет - напишу.Ох, я бы на эти мучения посмотрел
>>1120934Как будто написание драйвера под винду в креаторе это намного большее мучение, чем написание драйвера под винду в студии, в самом деле.
>>1120946Ты не поверишь
>>1119921Тут это где? Ебанутый шизик который скорее всего ниразу в жизни не писал комершал код и не сталкивался с говно-решениями от коллег высрал свое дохуя важное мнение касательно того что стоит читать ньюфагу, а что не стоит? Тогда да
>>1121007UPD: я блять уже молчу про то что человек на вопрос про С++ отвечает книгой по совершенно другому ЯП который ебучему ньюфагу мало того что не всрался на стадии "ебать где я", так еще и отобьет нахуй желание делать что-либо (что хорошо, тут ему респект)
>>1119899Шизан, иди-ка нахуй. Саттер и Майерс топовые мужики и в книгах обоих разобраны тонкие моменты стандартов и лайфхаки, которые предотвращают десяток ошибок, которые ты мог допустить просто прочитав Стауструпа
>>1120799>Знаю, вообще ничего страшного.гыыыы ну че там ептеть степашка нахо оно надо то сука хуйня ета ебать я кнопку жамкаю у меня билдит ептель я сука ему гвоорю РАБОТАИ ПАДЛА оно и работает то епта мне че надо нахуй сиську в рот пифко на столе мне аще похуй ептсель мопсель)))))))
>>1121010если ты не будешь городить абстракции, а просто тупо писать приплюснутый структурный код (как и делают в большинстве коммерческих проектов по сути), то книги саттера и майерса - нахуй не нужны, тк они посвящены как раз решению проблем возникающих при проектировании "воздушных" замковтипа обсуждения на десятках страниц у майерса подводных камней, когда вы получаете наследование ромбиком, ну или вдруг решаете сделать функции, полиморфные ко множественным классам а не одному и прочую поеботуи по молодости я прошуровал и саттера, и обе книжки майерса и прочие подобные книгивсе это было лишь потерей времени
Есть текстовый файл с вопросами по тесту такого вида:$que$вопрос?$ans$ответКоличество $ans$ может быть разным для каждого вопроса. Скажем, мне надо или оставить только первый вариант, или видоизменить формат, например, в-1-вопрос?ответ-2-вопрос?ответКак ньюфажику реализовать что-то подобное? Надоело ручками всё делать.
>>1121018тащемта это тонкости и очень нужны все эти вещи, если ты архитектуру разрабатываешь всего. Даже типичные патерны проектирования стоит прочесть для образования.
>>1121018>а просто тупо писать приплюснутый структурный код (как и делают в большинстве коммерческих проектов по сути)Смотрите сюда зеленые нюфани желающие вкатиться в АЙТИ - это ваше будущее. Вы - это он. Бесконечный цикл мусора в природе, радует глаз и пугает своими масштабами одновременно.
>>1121019на awk такое делается влет
>>1121026>>1121024да, дав этом и реальность: откройте на гитхабе выстрелившие проекты на крестах - внутри у них будет приплюснутая сишкаэто реальностьи да, там может быть с++14, с++11, похуй, будут юзать только чисто потому что там полно удобного синтаксического сахара, объем кода реально сокращается
>>1121024>патерны проектированияо, да, еще и "банду четырех" штудировал в свое времякаким же дураком был
>>1121029Я тебе больше того скажу - ты все еще не особо умный, не надо себе льстить, тем более на убогой анонимной борде.Я очень надеюсь что в новом году ты наконец понял что выбрал не ту дорогу и начал верстать лучшие в Подзалупинске одностраничники с рекламой пикап тренингов. Ведь самое главное - это счастье и внутренний баланс, а уже потом эта хуйня для задротов тупорылых со своими паттернами, кодинг-стайлами и советами.
>>1121035вырезал бы тебе пару ребер, запек бы и сьелты бы смотрел
>>1121037Моя маленькая, глупая, наивная обезьянка. Когда-нибудь ты поймешь что угрозы в интернете выглядят также глупо, как и ты в попытках высрать свои новые мысли.
>>1121028Чем больше ты знаешь - тем лучше. И майерсы и банда 4 маст рид. Знания тебе не мешают писать процедурный код, но ведь будут разные задачи с разными решениями. Я волбще сфинае хуярю в кернельный код, и мне норм. А в соседнем файле у меня си с классами. Все от задачи зависит
>>1121042>майерсы и банда 4 маст ридnopкак и талмуды от страуструпа, тащем-такоторые я тоже прочиталдизайн и эволюцию, язык программирования с++ спец издание, плюс последнюю "принципы и практика"чтиво уровня аластера рейнольдса, если вы читаете фантастику, такая же графомания и куча воды
>>1121019Как угодно, только не на плюсах. Спроси в прикреплённом.
Двач, зачем нужен std::allocator? Я что-то понять не могу, в чём его отличие от new и delete (особенно после C++17)?
Плюсач, поясни за qmake, cmake, nmake и иже с ними. Что это такое и зачем оно надо? Алсо интересует инфа о генерируемых при компиляции файлах, (.lib, .o и т.п.)Расскажи или кинь ссылку где прочитать.
>>1121096cmake хорош. Потому что без него в вижуал студии управлять проектом, состоящим из нескольких либ с зависимостями между собой - ад.
>>1121070Не все хотят постоянно дергать тормозной malloc
>>1121112Месье, не охуели ли Вы?Почему вы считаете, что malloc тормозной?Почему вы считаете, что allocator сделан не через malloc или его эквивалент?
>>1121070Отличие в том, что аллокаторы - это концепт, типы, соответствующие которому, принимают контейнеры, и написать свой аллокатор ты можешь, а написать свой new/delete - нет.
>>1121102я для себя открыл кнопочку add reference, и студия сама все подключает теперь>>1121132На каждый чих дергать syscall'ы, когда ты можешь сразу выделить N мегабайт, и раздавать\считать их прям в юзермоде - вот зачем нужен аллокатор.
>>1121147>На каждый чих дергать syscall'ыМесье, Вы, верно, охуели. Извольте показать описание malloc в докуентации к ядру винды или линукса, я настаиваю.
Почему всё так тупо в visual studio?
>>1121134>а написать свой new/delete - нет.Я могу их перегрузить.
>>1121348О, точно, забыл. Но перегрузка будет одна на весь тип,и в шаблон ты её не передашь (инбифо пердолинг с ICS).
>>1121365>(инбифо пердолинг с ICS).Хер знает, о чём я подумал (implicit conversion sequence), не уверен, что это возможно.
привет программисты. Можете подсказать, как создать динамический глобальный массив, который бы изменял размер во время работы программы?
>>1121369Ты хоть секунду в гугле провёл, блядина? Тряси препода.
>>1121371Я нашел ток глобальные динамические массивы, но я не понимаю, как их увеличивать не пересоздавая.
>>1121373> как их увеличивать не пересоздаваяНикак.
Пацаны научите писать аллокатор.Я чет бегло гугл посмотрел англоязычный чет картинв не сформировалось.Где allocator_traits, когда отн создается, если он по умолчанию, какие та и там функции должны быть тид?Я даун просто. Ткните еблом в туториал нормальный или в доку плез.
>>1121407Начинай с Таненбаума, потом постепенно читай книги по алгоритмам, там поймёшь, какой тебе нужен аллокатор и т.д.Google, how free knows memory size — расскажет кое-что об устройстве кучи в большинстве современных я/п.
>>1121369Это называется std::vector.
>>1120575Интел что ли?
>>1121414Не, это я знаю все +- ибо на чистых сях писал мемори пулл. Я не могу синтакическое оформление в С++11 понять .
>>1120809Я помогу, ибо я человек а не красноглазик.Заходишь в propereties и меняешь кодировку на многобайтовую
>>1121420Тогда тебе нужен Стенли Липпман. У него показаны все указатели: shared, unique, weak и т.д.Правило, если кратко, такое: исчезает указатель — исчезает область памяти. Аллокатор там какой угодно может быть.
Собственно задали задачу, на С, аноны помогите решить, за помощь скину копеечкуПрименяя прямую запись в видеопамять получить на экране оригинальный динамический видеоэффект «пламя».
>>1121415Спасибо
>>11214565k
>>1121415А если мне нужен трёхмерный вектор, но в нём нужно изменять только два размера, как мне уточнять это? Не очень понимаю, как он объявляется, как вектор с элементами векторами?
>>1121456кекя даже знаю кто задал, при случае расскажу, что ты постишь
>>1120877> Дополню, что в студии охуенный конфигуратор проектов. Не надо зубрить флаги и в маны лазить на каждый чих.Полное дерьмо, ИМХО. Конфигурации вперемешку блять, больше ебешься, чем делаешь. Лучше иметь генератор проектов, чем студийными проектами пользоваться.> Не надо зубрить флаги и в маны лазить на каждый чих.Зато надо как ебалас сидеть и мышкой тыкать часами в поисках того, что нужно. > На работке сами сначала всё пишем в студии+кутя.Ну че там, завезли UTF-8 для файлов по-умолчанию или все в Windows-1251 сохранеяете, что аж потом ни один редмайн не может нормально диффы показатьАлсо. Все IDE под кресты сейчас - сорта говна. MSVS становится еще более менее вменяемой, если накатить решарпер или Visual Assist X, но в первом случае, она становится пиздец какой медленной, а во втором мы имеем устаревшие фичи, которыми пользоваться не очень-то и удобно.
>>1119750 (OP)Нужна помощь.В общем есть один проект, который пилили на VS2017, и есть второй проект, для которого нужен Intel Parallel Studio. Второй проект нужно заюзать в первом.Проблема такая, что для VS2017 не могу накатить расширение от Parallel Studio. Уже заебался разные версии качать и устанавливать по часу.Но для VS2012 нормально встал Parallel Studio 2013, но на ней не запускается первый проект, который требует Platform Toolset v141.Как подружить 2017 студию с параллел студио?Или как легко даунгрейднуть проект под platform toolset v110?Или какие еще есть пути решения проблемы?
>>1121551>Конфигурации вперемешку блять>Зато надо как ебалас сидеть и мышкой тыкать часами в поисках того, что нужно.Ай не пизди, всё там разбито по вкладочкам и найти не проблема. Ты точно студией пользовался?>Лучше иметь генератор проектовГенераторы проектов это заебись, я согласен, особенно если всё уже за тебя написано. Но лично меня просто воротит если надо писать всю поеботу вручную.>Ну че там, завезли UTF-8 для файлов по-умолчаниюДа печалька, не завезли. Скачай экстеншн делов-то.Кстати, чтобы компилер воспринимал сорцы как utf-8, можно добавить флаг /utf-8. Может антуанам эта инфа пригодитсяИМХО, решающими преимуществами студии является юзер-френди интерфейс и заебатый автокомплит. За это можно простить всё остальное.
>>1121488Иди на хуй, первокур ебаный
>>1121407cppreference.com - вот твой гугл.http://en.cppreference.com/w/cpp/memory/allocator_traitsallocator_traits - это то, что должно быть в области видимости на момент использования аллокатора. Делаешь это так:namespace std{template<> //потому что аллокатор_трейтс - это шаблон, который ты доопределяешь для своего аллокатораstruct allocator_traits<moiALlocatttttor>{}}
>>1121553как бы те сказать..вот если ты работаешь на фирме где уже не достаточно производительности компилера от майков и где юзают компилер и инфраструктуру от интеллто твоей квалификации, очевидно же, должно быть достаточно для решения таких текущих задач что описано в твоем постеследовательно, можно сделать вывод, что ты просто занимаешь чье-то место, ты не тянешь на это место по знаниямв идеальном мире ты должен быть уволен, выкинут на помойку и сдохнуть от голода
только начинаю свой путь в программирование , посоветуйте может курсы какие , книги .
>>1121769>начинаю свой путь в программированиеспециализироваться на крестах в 2018 - самая гиблая затея для вкатывальщика, закрой этот тред и больше никогда сюда не заходиява, веб - иди туда
>>1121729Я не работаю, лол. В универе задание по предмету дали такое. Вручную все-таки получилось перенастроить проект под v110, но вылезла куча всяких синтаксических ошибок, возможно из-за неполной поддержки фич новых версий С++.Сегодня подумал, что можно было бы наверное скомпилить проект на 2012 студии как библиотеку, и подключить ее в проекте на 2017 студии, но не уверен, что все прокатит.Да и уже начал ставить 2015 студию, параллел студио накатилась туда, но всплыли снова проблемы с Windows SDK 10.
>>1121597у меня просто профиль не программирование.
>>1121666Я видел, спасибо.Примеров бы использования. не обоссывай плез
Привет плюсаны. А существует ли на плюсах УДАЛЕНКА на заграничного дядю?
>>1122103Нет. Я даже удаленщика-хаскеллиста знаю. А вот плюсовиков - не одного. Сам удаленил на 30к в месяц 10 часов в неделю по приколу, и все.
Хочу писать игры на vulkan или directx. Что выбрать? Какие учебники прочитать? C++ практически не знаю.
>>1122137Начни с Unity3d
>>1122151Он же на c#
>>1122154ты все равно не знаешь C++. Ты игры писать хочешь, или С++ учить?
>>1121950v110 120 140 - это версия компилятора, грубо говоря.>>1121967А преподу твоему за что платят, блядь? Подай в суд на шаражку за плохое преподавание.
>>1122195>v110 120 140 - это версия компилятора, грубо говоря.А, не, нифига.
>>1122137>Хочу писать игрыunityunreal engine
Есть такой код. Вапрос: какого хуя это работает?Указывать рамер массива можно же только константойЧто происходит?
>>1122518>Лабы нахуй
>>1122522Ты долбаеб?Я не прошу сделать за меняУ меня чисто технический вопрос
Как это работает? Как получить _env?inline Env::Env(napi_env env) : _env(env) {}inline Env::operator napi_env() const { return _env;}
>>1122518google: VLA, variable length arrayи съеби в си-петушатню-тред, эта фича оттуда
>>1122103для тебя нет
Какой в плюсах аналог define?
>>1122545Да вы заебали, книжки почитайте умные const
>>1122518Происходит то же самое, что происходит при входе в любой блок кода - сдвигается граница стека на любое заданное значение, внутри создаются переменные, массив этот, например. Причём статическим он быть не может.Не по станарту эта хуйня.
>>1122545#define hui pizda? constexpr - почти полный аналог.
>>1122546тебе стоит самому почитать, лол
>>1122545темплейты и constexpr позволяют "закрыть" почти все применения defineна долю define остается, по сути, только управление тем, какие куски кода будут включены-исключены при различных сборках
>>1122538Так я тебе по скилам на голову нассу
>>1122583Ссать на голову - хороший навык, но на удаленке этот навык не нужен
купил толстенного страуструпа c++ специальное издание 2017 года. а там сука поясняют за стандарт 2003 года. РРЯ. РУССКОГО ЧЕЛОВЕКА ОБМАНУЛИ
>>1121807бля, а я сижу как даун вкатываюсь. лол.
>>1122158Пусть тогда в UE4 вкатывается. Там и C++ есть. Приятное с полезным будет совмещать.
>>1122137поставь UE4, а там уже если надо будет и сишечку учить будешь.может вообще в редакторе поклацаешь полдня и поймешь, что оно тебе НАХУЙ НЕ НУЖНО программирование ваше. и пойдешь в слесаря. кек
Хочу запилить WebSockets сервер. Читаю стандарт (https://tools.ietf.org/html/rfc6455#section-1.3), и в самом начале 8 страницы более конкретно объяснено, что я должен сделать с ключом, приходящим от клиента. И все хорошо до того момента, когда они кодируют закодированную через sha1 строчку в base64. У меня получается вообще другое, а именно: YjM3YTRmMmNjMDYyNGYxNjkwZjY0NjA2Y2YzODU5NDViMmJlYzRlYQ==У них же: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=, что вообще есть что-то другое. Мне нужно что-то с полученной строкой после кодировки в sha1?
>>1122796https://tools.ietf.org/html/rfc6455#section-1.3
>>1122796Ты по-моему в глазки долбишься или просто недосыпаешь. xxd -r -p <<< "b3 7a 4f 2c c0 62 4f 16 90 f6 46 06 cf 38 59 45 b2 be c4 ea" | base64s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
>>1122804Я дебил. Проблема в том, что я строку преобразую, а не hex числа. А вот как блять сделать правильно я не ебу. В php помню была функция pack которая hex строку (b37a4f2c...) упаковывает в бинарную строку (или как то так). Как это сделать не подскажешь?
>>1122816В плюсах ничего такого нет, ищи либы или пиши сам по RFC (ссылка есть в той же статье).https://github.com/fffaraz/awesome-cpp
>>1122583нет
>>1122843ты че ск, а ну быстро поясняй как удаленку с 3 годами опыта серверной разработки под линукс на с/с++ искать
Кто-нибудь может объяснить работу QtWebEngine? Хочу симпл парсер написать, а доки рот ебал
>>1122878поссал на тя qt/examples
>>1122892Был бы там пример парсера
>>1122878Мой русский язык плохой. Я лучше пишу на английский:Qt WebEngine provides functionality for rendering regions of dynamic web content.
>>1122914Use google translatorМой английский не лучше твоего русского.Можешь ли ты привести пример получения схемы сайта и её парсинга?
string *stringArray = new string[number];Объясните, каким образом так получается динамический массив?
>>1122941Совсем ебанутый? Прочитай про operator new в стандарте, вот таким образом и получается.eel.is/c++draft
>>1122943Мне указатель перед stringArray непонятен.
>>1122946Мне непонятна твоя непонятность. Книги про плюсы ищи в шапке.
>>1122948Спасибо.Тебе так сложно дать частичку своих знаний?
Почему С++ не назвали С = С + 1?
>>1122954number++ != number = number + 1.Во втором случае будет приведение типов к int.
>>1122952Зачем писать о том, что разжевано в 100% для ньюфагов?
>>1122961Нихуя! Если C имеет числовой тип большего ранга/приоритета/вотевер, то приводится будет к нему. Это я уже не говорю о том, что оператор+ может быть перегружен.>>1122954Потому что у второго варианта два операнда. Ещё лучше было бы ++C, но любая практическая разница между ++C и C++ может быть уничтожена после инлайнинга.
>>1120799> Или подебажь без пердолинга.Что ты имел ввиду, кстати?
Доброе утро. Потихоньку осваиваю Enbercadero Rad Studio C++ Builder.Для строки Edit1->GetTextBuf(Buffer, Size); выдаёт ошибки - Cannot convert 'char ' to 'wchar_t ' - Type mistmatch in parameter 'Buffer' (wanted 'wchar_t *', got 'char'Гугл выдал уот такое https://stackoverflow.com/questions/26073814/cannot-convert-const-char-to-wchar-in-argument-passing Собсна вопрос от глупого меня тем, кто с этим билдером работал - где и что там нужно поменять в настройках?
>>1123165>Embercadero
>>1123165Чем тебе ответ со стака не устраивает? Хуйню с настройками иде игнорируй.
>>1123165Нет кода - идёшь нахуй.https://stackoverflow.com/help/mcve
>>1123165Олсо:https://msdn.microsoft.com/en-us/library/windows/desktop/dd374089(v=vs.85).aspxhttps://msdn.microsoft.com/en-us/library/windows/desktop/dd317766(v=vs.85).aspx
Сап. Тут в одной книжке такая строка кода:String names = static_cast<String >(::operator new( BUFSIZ ));Как понимать выделенное болдом?inb4: как std::operator new(), который выделяет памяти в размере BUFSIZ байт.
>>1123588А какой ответ ты еще ждешь, мудила блять?
>>1123588Без контекста идёшь нахуй.
Все доброго времени суток. Можете объяснить, почему при использовании MinGW и Clion мне выдаёт ошибку Visual Studio Just-in-time debugger?
>>1123943Привет. Да, могу. Это происходит потому что ты черт ебаный.
>>1123945Спасибо за конструктивную критику, ваше мнение очень важно
>>1123947Да потому что нечего ныть. Просто перекатывайся в JS, там нет таких проблем.
>>1123950Да блядь, у меня программа при увеличении массива перестаёт работать, а увеличении стака не помогает
>>1123952Вот-вот, блядь! Я тебе и говорю. В ЖС то нет таких проблем, понимаешь, какая зуевина-то? Вот и перепиши все на нем, нахуй. Понимаешь о чем я толкую?
>>1123958Если бы там скорость была такая же, то перешел бы на ЖС
>>1123952На JavaScript ты можешь увеличивать массив и все будет работать.
>>1123960И ждать два месяца, пока досчитает?
>>1123964Для тяжелых вычислений можно дернуть по FFI либу, или использовать модуль написанный нативно, или IPC к программе, написанной на низкоуровневом языке.
>>1123969А С++ глобальные массивы же в куче, а не стеке хранятся, или для этого нужно через указатели ебаться?
>>1123975под них свой отдельный сегмент памяти
Двач, как я понял теперь аллокаторы нужно использовать через allocator_traits, может кто пример привести как это делать? Я что-то не пойму, а примера найти не могу...
>>1124068http://en.cppreference.com/w/cpp/concept/Allocator
Если объявлен [code]vector< vector <vector<double>> > A(N)(M)(K)[/code], то как добавить элементов в М?
>>1124130Проиндексируй блять operator[] для кого придумали то
>>1124139т.е. A[N][M][K]?
>>1124159Да, только сначала убедись, что элементы с указанными индексами существуют
>>1124252А как снять ограничение на количество элементов в глобальном массиве? Или его нужно по другому объявлять, а потом использовать указатели?
>>1124353Просто пишут, что он не ограничен, но у меня при увеличении количества элементов он перестает работать.
>>1124068сверху писали>>1124130>vector< vector <vector<double>> > A(N)(M)(K)Блядь, кому ты пиздишь? Нахуя пиздеть так нагло?
А вы говорите си-плюс-плюс или си-плас-плас?
>>1124619Кресты
Привет.1) Можете мне рассказать, как вообще писать на плюсах нормальный и современный код? Ну, я использую пару классов из стл, использую смартпойнтеры почти везде. Использую по максимуму всякие штуки, типа инициализации списком.На что мне еще нужно обратить вниманию? Что почитать? Надоело писать на си с классами, как в первый раз.И еще вопрос, схожий с первым.2)Как правильно дизайнить классы/наследовать?Например, я стараюсь всегда явно указывать оператор присваивания/конструктор копирования/деструктор с помощью default/delete. Потом стараюсь везде делать конструкторы explicit.Как нормальные разработчики пишут классы?А то иногда смотришь какой-нибудь проект на гитхабе и там темплейты, лямбда-выражения кругом, мув-семантикс кругом, в самом коде какие-нибудь ассёрты еще стоят. И я как-то даже не знаю, хорошо это или нет.
Подскажите какое применение shared_ptr и weak_ptr.
>>1124751Подскажите какое применение человека неспособного открыть гугл и шапку треда.
>>1124779Писать хуйню на дваче как это делаешь ты?
>>1124782Там в конце предложения точка, это не вопрос был.
Аноны, можно ли сделать так, чтобы map не выделяла память в куче во время работы с ней? То бишь, создал map на n элементов и больше бы она кучу не трогала.
>>1124823Нахуя мапу трогать кучу, если ты в него ничего не вставляешь? Если тебе нужна проверка наличия ключа, напиши сам.
>>1124788Предложение которое начинается со слова "подскажите" само по себе является вопросом, то что ты безграмотный и тупой это объясняет твоё применение.
Добры день, ребят ситуация такая. В пятницу общался с работодателем и пришлось закрыть комп и уехать по делам на выходные (да я у родителей сейчас и помогаю им). В понедельник приехал и увидел что он в пятницу на email отправил тестовое задание. Вчера приступил к его выполнению. Что стоит написать работодателю и стоит ли что либо писать? Хотел написать следующее :"Здравствуйте, хотел бы уточнить сроки выполнения тестового задания. Приступил к выполнению задания вчера, в связи с личными обстоятельствами." Или просто написать про сроки выполнения? Задачки не сложные, я на джуна претендую.Как быть анонимы? Как он отреагирует на это? Стоит ли ему сообщать что вчера только начал выполнять и в нагрузку намекуть почему? Или просто спросить по срокам выполнения? Как быть...
>>1124842>тестовое задание>детский лепет>сипласплас
Где обосрался?
>>1124887Тему перепутал
Выучил кресты за час и прямо сейчас еду в Америку работать за $120k, ваши оправдания?
>>1124841Такие предложения, в котором кроме слова подскажите присутствует вопросительное слово без вопросительного знака, безграмотны в первую очередь, поэтому сдохни.>>1124842>Или просто написать про сроки выполнения?This.>>1124887Кодировку в редакторе настрой, блядь.
>>1124924> в которых
Сап. Есть такой код из книги Дьюхерст. "С++. Священные знания"class State { public: //... int population() const; float aveTempF() const; //...};inline bool popLess( const State &a, const State &b ) { return a.population() < b.population(); }State states[50];//.../std::sort( states, states+50, popLess ); // по населению/struct PopLess : public std::binary_function <State,State,bool> { bool operator ()( const State &a, const State &b ) const { return popLess( a, b ); }};sort( states, states+50, PopLess() );Там такой текст:>Положительный эффект применения объекта-функции в качестве компаратора в том, что сравнение будет подставлено в строку, тогда как в случае применения указателя на функцию этого сделать нельзя. Не могу понять, в какую такую строку?
>>1124924спасибо, так и сделаю>>1124872что такое? ЧТо случилось?
>>1125016Я не хочу разбираться в твоей параше, но с первого взгляда я там вижу inline. Это и имелось ввиду, скорее всего.
>>1125028Так вроде же и указатели на инлайн-функции превращаются в процессе конпеляции в тупо переписанный код этой функции, не?
>>1125016>тогда как в случае применения указателя на функцию этого сделать нельзя. Нагло пиздит.https://godbolt.org/g/zrskMvНазывается это "встраивание функций", а вовсе не "подстановка в строку". Читайте оригиналы!>>1125057Именно.
>>1125057> указатели на От ситуации зависит. В общем случае указатель нельзя заинлайнить, потому что он может указывать на разные функции. Инлайн возможен только если компилятор в состоянии доказать что конкретный указатель всегда указывает на одну и туже функцию.В том примере важным моментом являетсято что инлайн (возможно) происходит в шаблонном коде. std::sort принимает в качестве одного из параметров шаблона тип компаратора. В случае использования функциональных объектов этим типом будет имя класса. Тоесть, если использовать три разных (по типу) компаратора будет сгенерировано три разных варианта шаблонной функции - каждая со своим шаблонным параметром соотвествующим имени класса компаратора. При чем в каждом конретном случае будет четко определен код компаратора - тоесть у компилятора будет возможность его заинлайнить. Если же использовать указатели на функции, то не смотря на то что функции будут иметь разные имена - эти имена будут именами указателей. А тип у этих указателей будет одинаков. Тоесть если использовать три разных функции, будет три разных указателя, но будет сгенерирован только один вариант шаблона std::sort где шаблонным параметром компаратора будет "указатель на функциию с двумя аргуменами типа Т" - так как имя функции не является частью типа указателя на эту функцию. В таком случае компилятор заинлайнить не сможет.Обратноже, все зависит от ситуации. В примере из поста >>1125016 я в общемта не вижу причин почему бы дохуя хитрожопый компилятор не смог бы заиланить и в случае с указателем на функцию, так как там можно доказать что указатель всегда указывает на одну функцию. Но именно в общем случае тот хуй из книги скорее всего прав. Если у тебя в одном юните трансляции генерится std::sort для указателей на разные функции то заинлайнить не получится.
>>1125124>Но именно в общем случае тот хуй из книги скорее всего прав. Хуй из книги немногословен и в этом неправ. Заинлайнить вызов функции через указатель можно во ВСЕХ случаях, в которых он получается напрямую из идентификатора функции, и во многих других тоже.Нахуя писать книгу, если не знать того, что вызов по указателю тоже можно инлайнить?>В том примере важным моментом являетсято что инлайн (возможно) происходит в шаблонном коде.В том примере важно не то, что код шаблонный, а то, что он в заголовке определён. Такая же сишная функция чаще всего находится в динамической либе, например, и инлайнить там некуда.>Тоесть если использовать три разных функции, будет три разных указателя, но будет сгенерирован только один вариант шаблона std::sort где шаблонным параметром компаратора будет "указатель на функциию с двумя аргуменами типа Т" - так как имя функции не является частью типа указателя на эту функцию. В таком случае компилятор заинлайнить не сможет.Хуйня полная. Никакая часть стандарта не мешает компилятору зайнлайнить хоть аллаха, даже если аллахов три штуки, и инлайнить их невыгодно.
>>1121525>>1122772>кек............/´¯/)...............(\¯`\.........../...//....ЗДОХНИ..\\...\........../...//......МУСОР.\\...\...../´¯/..../´¯\.ЕБАНЫй../¯` \....\¯`\.././.../..../..../.|_......._|.\....\....\...\.\(.(....(....(..../..)..)…...(..(.\....)....)....).).\................\/.../......\...\/................/..\.................. /.........\................../
Я сделал крестики-нолики в консольке на 400 строк и скомпилировал это дело. Какого хуя экзешник получился на 2,7 мегабайт?
>>1122137> Хочу писать игры на vulkan или directx. Что выбрать? Если хочешь делать именно игры, а не пердолить байты и изучать GAPI - то бери готовые движки. > Какие учебники прочитать? C++ практически не знаю. Если тебе нужно именно пердолиться с GAPI и ты хочешь стать вторым кармаком (в ирл геймдеве - это на самом деле быть такой хардкорной байтомакакой, которую заставляютс ебаться со всеми GAPI (включая мобильные и консольные) одновременно и и которую долбят шипастой дилдой чтобы на всех платформах графическая подсистема работала одинаково), то:Для начала страуструп (или шилдт). Затем https://vulkan-tutorial.com/ и https://msdn.microsoft.com/ru-ru/library/windows/desktop/dn899121(v=vs.85)Если нужны примеры, как это все ИРЛ применяется, то вот исходники круйзис энжина на гитхабе:https://github.com/CRYTEK/CRYENGINE/tree/release/Code
>>1125337> Я сделал крестики-нолики в консольке на 400 строк и скомпилировал это дело. Какого хуя экзешник получился на 2,7 мегабайт? Потому что в таргете Debug стоит, наверное? Поменяй на Release и скомпилируй снова.
>>1125136>Заинлайнить вызов функции через указатель можно во ВСЕХ случаях, в которых он получается напрямую из идентификатора функцииНу, когда тело обоих функций доступно, ясен хуй. А ещё там LTO есть (не разбирался ещё с этим).
Самый простой (и достаточно быстрый) способ определить, входит ли целочисленное значение в заданный диапазон?Проверка будет происходить миллионы раз в секунду, поэтому надо спешить.
>>1125420Самая примитивная функция определения принадлежности числа отрезку - две инструкции на АРМ и три инструкции на x86 после встраивания, на гигагерцовых процессорах это производительность порядка миллиарда раз в секунду.Если у тебя там такая жопа, что ты написал эту примитивную функцию, и она недостаточно быстрая, то ты криворучка.
>>1125424Я пока не написал.
>>1125424>на гигагерцовых процессорах это производительность порядка миллиарда раз в секундуНу так, блядь, это ж не единственное, что мне нужно делать.
>>1125427 >>1125426Так ты покажи хоть какой-то код, блядь! Дрочка на производительность без ТЗ бесполезна. У меня есть идеи того, как можно сделать ещё быстрее, но ты же не дал никакого контекста.
Для любителей ебать байты ассемблера еще раз напомню (надо бы в шапку вынести):https://godbolt.org/Учимся писать эффктивный код без ебли байтов на асемблере/интринсиках.
>>1125439О, классная штука.
>>1125357Да, спасибо я уже передумал, лучше возьму unreal engine
>>1125439Что-то я ахуел.
>>1125577Беббис фёрст ассембли листинг? Оптимизацию включи.
template <typename T> T length(T example){ sizeof(example) / example[0];}Это быдлокодец?
>>1125582Спасибо. Сократилось на 5 строк.
>>1125644рофл
>>1125644Чёто вообще странное. У тебя же example может передаваться по значению и не обязательно там будет ссылка.А если будет нулевая ссылка, то вообще ud получится.
>>1125644Скажем так: я не знаю, что этот код вообще может делать полезного.
>>1125651Я проверил, ты пиздишь.
>>1125679>ссылкапойнтер*
>>1125680Находит длину строкиsizeof(string andron) / sizeof(andron[0]
>>1125682Ты прости меня, Но не поменятьМне фразы лжитой роковой,Что как ножирезало рассудок твой...
>>1120751Или какой нибудь фортран
>>1125686Ты нагло пиздишь, сучий выродок, не шути с нами. Этот код не находит длину строки.
>>1124898слишком толсто, плес
>>1125698Приятно встретить мыслящего человека на харкаче, вселяет надежду. Остальные проглотили молча.Мы готовы предложить Вам вакансию синиор-С++-разработчика с окладом $17400 и релокейтом в Америку, вы согласны?
>>1125700Мсье я еще слишком тупой, я сделаю только хуже, давайте начнем с уборщика в отделе разработки на С++
Вечер в хату, погромисты.Существует ли вообще приличная удаленка на С++? Так, чтоб на $8к+. Какие технологии для этого надо шарить?Занимался системными вещами, пилил веб-серверы, бэкэнды, алгоритмические либы. В сцаном яндексе два года тоже отпахал. Общий стаж (не считая студенчество, интернатуру) приличного кодинга чуть больше 5 лет. Топовое образование, вся хуйня. Ну и обширная системная экспертиза, зачатки машинлернига и какое-никакое знание еще парочки языков.Уперся в 200к в ДС онсайт. Ну, максимум 250 может выпрошу. В принципе, готов двигаться в тимлидство, но по з/п разницы нету по сути, а работа куда менее интересная.Валить в европку невыгодно, в штаты (гугл, фейсбук и прочие) - долго хайриться, делать визы - пару лет займет. Ну и наслышан, что там будет не весело, хоть и илитно.Бесят жс макаки, которым удаленку найти все равно, что поссать сходить.Че, тоже на жс перейти, или может чего подскажете, братки-браточки?
>>1125695Проиграл.
>>1125773ебать как я тебе завидую.35к-3года-кун
>>1125838Почему так мало зарплаты? Мимовкатывающийся
>>1125695Почему нет?sizeof(batja) / sizeof(batja[0] - 1
>>1125842Ты молодой, шутливый, тебе все по плечу. Но не стоит вскрывать эту тему...
>>1125841Маленький провинциальный город, и у компании дела идут неважно (что не мешает принимать новых людей иногда). Вот и получается, что несмотря на то, что я делаю коммерческие проекты, зарплата такая, и не растет.
>>1125577И чего ты со служебного кода инициализации стекфрейма и прочего ос-специфик байтоблудства так охуел?
>>1125847На удаленку или в другу. контору не пробовал уйти?На плюсах есть работа вообще? Или лучше что-то более high-level учить?
>>1125855Ох, ну ты и выебнулся.
>>1125855> ос-специфик байтоблудства так охуел? штдлиб-специфик точнее.
>>1125858>На плюсах есть работа вообще? Из мейнштрима - геймдев (Уеч, хотя и здесь юнька с сисярпом долю отжирают), куте-быдлоформочки, ну и легасня.
>>1125864>куте-быдлоформочкиКак они конкурируют с WPF и WindowsForms?
>>1125864>Уеч, хотя и здесь юнька с сисярпом долю отжираютВ чем плюсы у каждого из них?
>>1125864На Уече ты пишешь не на плюсах, а на Уече. Со сборкой мусора, интроспекцией, собственной системой сборки и прочими костыльными велосипедами.
>>1125869Уеч - программируешь мышкой на визуальной хуете или на плюсах (на плюсах в лучших традициях MFC-ATL 90х в вижуал студии, если помнишь - class huitka{ GLOBAL_UE4_PIZDULINA_MACRO void Hui(); void Pizda(); void Jigurda();})Дают исходники зареганым быдлокодерам.Юнька - более популярна, кодится на сисярпе, исходники не дают в сторе больше готовых хуиток для даунов чем в сторе уеча.
>>1125858В Фейсбуке бэкэнд написан на плюсах, соответственно плюсовики там нужны тысячами.Их подразделения Oculus, Oculus Research - тоже почти одни плюсы.
>>1125773Я это почти ты. 200к потолок для погромиста. Профессия такая. Либо перекатываться, либо смириться.
>>1125873>В Фейсбуке бэкэнд написан на плюсах, соответственно плюсовики там нужны тысячами.>Их подразделения Oculus, Oculus Research - тоже почти одни плюсы. И там наверняка одни 30-летние шевелюны усами требуются с опытом в сложных проектах овер 9000 и ньюфаней туда не возьмут.
>>1125876В основном да, люди с опытом. Но выпускников тоже берут толковых. Они даже по университетам ездят (правда, только американским).Знаю одного человека, который сразу после Бауманки уехал в Майкрософт в США.Усы сейчас не носят, на западном побержье США принято одеваться, как бомж и носить мерзкую бородку.
>>1125872>на плюсах в лучших традициях MFC-ATL 90х в вижуал студии>// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.>#pragma once>#include "GameFramework/Actor.h">#include "FloatingActor.generated.h"> UCLASS()> class QUICKSTART_API AFloatingActor : public AActor> {> GENERATED_BODY()> public: > // Sets default values for this actor's properties> AFloatingActor();> protected:> // Called when the game starts or when spawned> virtual void BeginPlay() override;> public:> // Called every frame> virtual void Tick( float DeltaSeconds ) override;> float RunningTime;> };Я думал ты шутишь, это ж пиздец.
Почему не работает?
>>1125913Потому что строку не возвращаешь, а функция заявлена как возвращающая string.
>>1125914Нет, я про то что getline не определен.
>>1125913>std::getline
>>1125917Не работает все равно.
>>1125913Потому что ты в шары долбишься и в список ошибок не смотришь, не смотришь на соседние строчки, и вообще код не твой, иначе ты бы знал, зачем там в начале using.
>>1125919Using вначале я запилил, чтобы каждый раз не писать std::string.А код мой, мамой клянусть.
Антоны, какой управляющий символ означает конец текстового файла?
>>1125919>>1125917>>1125914Блять, сорян аноны. Я #include <string> забыл.
>>1125920cppreference.comНайди там getline. И препода своего тягай.
>>1125926Cхуяли вы думаете, что у меня лаба.
Пишу библиотеку за еду.
>>1125921Нет такого символа, уёбок. В файле могут быть любые символы в любых количествах.
>>1125928Это я один думаю. Тут часто бывают уродцы, которым уже ссылку на докуменацию даёшь, а они всё "нет ты скажи где ошибка". Раз ты сам допедрил, то, быть может, у тебя не лаба.
>>1125933>Нет такого символа, уёбокЧто сразу разгорячилась, сука ты ебливая?
>>1125933>>1125938>>1125932Бля, типичный крестотред.
Есть ли в STL массив, который можно создать с максимальным размером, но чтобы он возвращал размер реальных данных? Пример: создаем буффер на 1000 байт, реальный размер - 0. Пишем туда n байт и size возвращает n, а не 1000. Знаю, что можно самому написать, но не хочу плодить велосипедов.
>>1125943vectorСначала используешь reserve().Потому используешь resize() туда-сюда в рамках capacity(), при этом размер не меняется.
>>1125945Ну и pop_back() и push_back() тоже можно использовать.
Братииишки! Я вам покушать принес:https://github.com/electronicarts/EASTL
>>1125945ок спс
Хочу написать функцию, которая бы печатала содержимое любого контейнера STL,но почему-то VS не понимает такого шаблона, помогите, плизtemplate<typename A, typename T>void PrintContainer(const A<T>& a) { A::iterator it = l.begin(); for (; it != l.end(); ++it) { output << *it << endl; } }
>>1125978и вместо output cout
>>1125978http://www.cplusplus.com/forum/beginner/58978/А вообще, тебе достаточно получать 1 аргумент и использовать auto it = container.begin();Или вообще, использовать range-based loop
>>1125984Написал так, но всё равно неверноя не очень понимаю как здесь можно обойтись одним параметром в шаблоне
>>1125978>typename A>A<T>У типа не может быть аргументов, и тимплейт - это не тип. В плюсах 11+ можно передават тимплейт в тимплейт.
>>1125991Номера строк где, уёбок?
>>1125994Тьфу ты...>>1125991Хули ты там передаёшь в него? Контейнер с векторами?
Блять, аноны, помогите! Какую часть цивилизации установить?
>>1126003Свали в /v/.
>>1126005На дваче только /b есть, ты тупой что ли?
>>1125993и как это написать?template<typename T template<typename В>> void Info_vec(const Т<В>& container)>>1125995>Хули ты там передаёшь в него? Контейнер с векторами?да, на примере вектора,но мне нужна функция, которая будет выводить любой последовательный контейнер на печать, то есть и вектор и список и аррей и декнапишите хоть кто-нибудь хоть строчку кода ((
Будет ли работать такая запись?int k = 5;string s;s+=k
>>1126018Нет, не будет.
>>1126019спс
Блять, как же меня заебали шаблоны и библиотека STL,какой же это кусок дерьма,вот у меня выскочила ошибка'vector': undeclared identifier сначала на одной функции с шаблоном, хоть на то не было ни одной объективной причины, я везде включил#include <vector>потом я вынес все функции в отдельный .h,создал новый пустой проект и загрузил теда заново все исходники и хедеры,но та же самая ошибка сработала уже на другой функциипочему так я не могу понять
>>1126028>Блять, как же меня заебали шаблоны и библиотека STLЭто все плюсы такие.
>>1126029И куда вкатываться? Какой топ язык?
>>1126033>И куда вкатываться? Какой топ язык? Связка хацкель-си
>>1126008>и как это написатьТы уже написал, поздравляю тебя. Со всеми остальными вопросами - к преподу и в гугл.>да, на примере вектора,Отлично, теперь напиши operator<< для вектора. Ты думал, что от того, что ты напишешь cout<<vector у твоего вектора появится operator<<?>напишите хоть кто-нибудь хоть строчку кода ((Препода еби.>>1126028Скатертью дорога, нам конкуренция не нужна.
>>1126036Зелёный, уйди
Есть ли разница в производительности междуa = b + cИa = a + ba = a + cКомпилятор достаточно умный (умней меня) чтоб такое оптимизировать?
>>1126133Насколько я вижу, есть разница в результате
>>1126139Я имел ввиду, при a = 0
>>1126033Сам С++ всегда будет востребован, но как язык он сам очень коряв. Вкатись в Java, С#, Python если немного гей
>>1126019Будет, если переопределить оператор +=
Правильно ли я понимаю, что кэшировать простые вычисления нет смысла, т.к. чтение из памяти может быть намного медленнее, чем пара циклов процессора?
Ребята, помогити, я тут QT скачал, нужно вкатиться в него на сисях (который инкремент). Но что то не так пошло...Скачал@с оффффициального сайта@МАКСИМАЛЬНО оффффициального из официальных сайтов@...Сайтов QT@Установил@Максимально установил@везде комплекты ставил, даже на ёкарный бабай Ведро@ну просто на ВСЕ галочки при выборе довнлоадинга нажал@началась установка@прошло пол дня, но ни хуя@при самой лёгкой сонсольной программы на вывод приведа МЕДВЕДА, компилироваться компилируется, но нажимая кнопку запуск, никакая сонсоль не появляется@пробовал много раз@даже другие компиляторы@помогите пжлс, сдавать скоро, а я нихуя не сделал
>>1126133Есть сайт который компилирует с++ код и сразу показывает ассемблерных код для него, посмотри сам. Название не помню.
>>1125359Да, стоял дебаг. Но я поменял на Релиз и вес конечной программы почти не изменился - стал 2,5 вместо 2,6 мегабайт.Зато появилась странная хуйня - в режиме релиза программа стала работать неправильно - игра выдает ничью после первого хода.Это что за нахуй и почему?
>>1126198> Но я поменял на Релиз и вес конечной программы почти не изменился - стал 2,5 вместо 2,6 мегабайт.Скорее всего, виновата статическая линковка. Хотя я диванный, но у меня хелловорлд с ней весит 2 Мб, а без нее десятки Кб, не помню точно.>Зато появилась странная хуйня - в режиме релиза программа стала работать неправильно - игра выдает ничью после первого хода.Это что за нахуй и почему?Хуй знает, что ты там наговнокодил, но на скрине явно не крестики-нолики, либо я что-то не понимаю.
>>1126133Конкретный код в студию или иди нахуй.>>1126173Ты ещё про индексирование этого кэша и поиск в нём забыл.Простые насколько? Твой вопрос порождает больше вопросов, чем ответов.>>1126177Вывод ошибок из нижних панелек в студию.>>1126198Это UB, он изнасилует и убьёт твою мать.
>>1126209>Скорее всего, виновата статическая линковка.Что это такое и как ее убрать?>Хуй знает, что ты там наговнокодил, но на скрине явно не крестики-нолики, либо я что-то не понимаю.Используй воображение. 9 - это ходы игрока, 8 - ходы компьютера. И экзешник в режиме дебага работает как надо, а в режиме релиза - нихуя не работает как надо. Из-за чего так?>>1126213>Это UB, он изнасилует и убьёт твою мать.Что такое UB и что с ним не так?
>>1126214>Что такое UB и что с ним не так?Undefined BehaviorПоказывай код.
>>1126215>Undefined BehaviorИ что это значит?Там аж 400 строк говнокода. И причем тут мой код, если он в режиме дебага работает как надо? Да и в с4droid на телефоне он работает как надо.
>>1126214>Что это такоеГугл>как ее убрать?Хз, чем ты компилируешь, если minwg, то она по умолчанию выключена, а включается "-static". Но скажи нахуя? Тебе жалко ссаные 2 Мб? Все равно придется вместе с программой тащить либы типа libstdc++.dll.
>>1126219Вот что Codelite выдает в консольке при компиляции:C:\WINDOWS\system32\cmd.exe /C C:/TDM-GCC-64/bin/mingw32-make.exe -j12 SHELL=cmd.exe -e -f "Prog_1.mk" MakeIntermediateDirs && C:/TDM-GCC-64/bin/mingw32-make.exe -j12 SHELL=cmd.exe -e -f "Prog_1.mk" ./Release/TIC-TAC.cpp.o----------Building project:[ Prog_1 - Release ] (Single File Build)----------mingw32-make.exe: 'Release/TIC-TAC.cpp.o' is up to date.====0 errors, 0 warnings====> Но скажи нахуя? Тебе жалко ссаные 2 Мб? Все равно придется вместе с программой тащить либы типа libstdc++.dll.Мне не жалко, просто знакомые сказали что весит программа слишком уж дохуя для своего функционала.
>>1126216>И причем тут мой код, если он в режиме дебага работает как надо? Правильный код работает одинаково. Можешь попробовать доказать ошибку в компиляторе, но ты не сможешь.400 строк говнокода? Можешь не постить, я всё равно читать не буду.
>>1126222Компиляции не было (читай около слов "up to date"), команды компилятора здесь нет.
>>1126223>400 строк говнокода? Можешь не постить, я всё равно читать не буду.А нахуя тогда просил, раз читать не собирался? Я С++ изучаю по книжке пару дней, это моя первая программа, которая делает что-то нормальное и посложнее хэловорлда.
>>1126225А файл Prog_1.exe в папке Release тогда что, если компиляции не было?
>>1126222Хм, я Codelite'ом не пользовался, а только CodeBlock'ом, но подозреваю, что в нем такая же хрень: MinGW, который идет в комплекте, по умолчанию, линкует статически, как отключить это, я не знаю, я просто поменял сам компилятор, т.е. скачал с офсайта MinGW отдельно.
Как сделать функцию, которая будет принимать и возвращать массивы с фикс. длинной?(тут 2 нужно)Гуглил, но находил инфу только про массивы, заданные указателем и длинной.
>>1126253Указатели или обретка над массивом (std::array).
>>1126213всё делал по этому "образцу"http://cppstudio.com/post/9273/
>>1126226Ты обознался, я не просил. Могу тебе посоветовать лучше структурировать свою программу (сделать больше маленьких функций, правильность которых ты можешь проверить). Отлаживать релизный код дебуггером будет сложно, лучше всего делать это с помощью вывода текста в stderr и перенаправлять его в файл (если в stdout не хочешь выводить).Могу провести с тобой сеанс отладки за деньги, вместе доведём твою лапшу до читаемого и проверяемого состояния.>>1126229В твоём логе компиляции нет, для проверки настроек компилятора он бесполезен. Удаляешь экзешник, компилируешь - можешь постить лог заново.>>1126253Функции не возвращают массивы с квадратными скобками. std::array - твой бро.>>1126259Рад за тебя. Во всех программах, которые ты будешь использовать в разработке, есть вывод ошибок. Когда ты дёргаешь таких добрых людей, как мы, пошевели мозгами и найди вывод ошибок в интерфейсе или найди, как его включить.
>>1126280Экзешник появляется если выбирать Build projectC:\WINDOWS\system32\cmd.exe /C C:/TDM-GCC-64/bin/mingw32-make.exe -j12 SHELL=cmd.exe -e -f Makefile"----------Building project:[ Prog_1 - Release ]----------"mingw32-make.exe[1]: Entering directory 'F:/C++/MySpace/Prog_1'C:/TDM-GCC-64/bin/g++.exe -o ./Release/Prog_1 @"Prog_1.txt" -L.mingw32-make.exe[1]: Leaving directory 'F:/C++/MySpace/Prog_1'====0 errors, 0 warnings====
>>1126285Ну, вообще охуеть, у тебя даже оптимизация выключена.Ищешь свойства проекта, ищешь опции/аргументы компилятора, дописываешь туда:-shared-libgcc -shared-libstdc++ -OsИ у тебя будут маленькие экзешники.
Только тогда тебе ещу придётся добавить C:\TDM-GCC-64\binв свою переменную PATH в винде, так как либы будут отуда грузиться.
>>1126288Да пока срать на оптимизацию. Почему релизная программа не работает? В дебаге же все работает как надо.
>>1126291Потому что твой код содержит ошибки. Плати бабки, вместе исправим.
>>1126292Как же он тогда в дебаге правильно работает, если в нем ошибки есть?
>>1126295Ты можешь перебежать дорогу на красный и остаться в живых.
>>1126298К чему ты это сказал? В дебагге программа ВСЕГДА работает как положено и на все ходы. В релизе же она выдает ничью сразу же на первом ходе, что даже физически невозможно.
>>1126301Ты торгуешься со мной?https://www.google.ru/search?q=stackoverflow+why+my+program+works+in+debug
>>1126306Моя программа не крашится. Она выдает ничью после 1 хода. Хотя такого быть не может. Вот код, отвечающий за проверку условия ничьи://Проверка условия ничьи if (a[0][0]!=0 && a[0][1]!=0 && a[0][2]!=0 && a[1][0]!=0 && a[1][1]!=0 && a[1][2]!=0 && a[2][0]!=0 && a[2][1]!=0 && a[2][2]!=0 && x==0) { x=1; draw=1;}
>>1126280в том то и прикол, что нихуя не выводит
>>1126309А теперь добавь к флагам компилятора -Wall -Wextraи изучи каждое предупреждение.>>1126314Compile output, блядь.
>>1126316русский, ёБтвоюмать
>>1126316в общем, теперь как то помучался, погуглил, теперь другая проблема.файл .pro он не правильно воспринимает, и не добавляет .cppпока делаю на тыртернетах, так что можете не отвечать
>>1126319Да уж нет, ёб ТВОЮ мать. Пиздуй в гугл, найди там то, что я сказал, и найди такую же кнопку у себя на том же месте.
>>1126322гхы
>>1126322во всяком случае, спасибо за активность)
Чтобы шарить, нужно учить библиотеки функций?
>>1126373Попробуй другой язык. Чтобы хорошо писать на С++ нужно помнить дохуища всего, не только библиотеки функций.
>>1126402Вопрос в тему. Есть такой код (Дьюхерст, Священные знания с++):class X { public: X operator %( const X & ) const; // бинарный оператор нахождения модуля X memFunc1( const X & ); void memFunc2(); //...};X operator %( const X &, int ); // оператор-нечлен//...void X::memFunc2() { this % 12; // вызывает оператор-нечлен} operator %( this, 12 ); // ошибка! слишком много аргументовДальше он пишет:>Для вызова инфиксного оператора компилятор рассмотрит обе функции, и член и нечлен (см. также тему 25 «Поиск, зависимый от типов аргументов»). Таким образом, первый инфиксный вызов operator % будет соответствовать нечлену. Это не экземпляр перегрузки, просто компиляторпроводит поиск функций в двух разных местах. Далее неинфиксный вызов подчиняется стандартным правилам поиска функций и выявляет функцию член.Вот этот нюанс "инфиксные операторы - так, обычные - этак" - его тоже только запоминать или можно как-то (при случае) объяснить, зная "механику" языка?
>>1126425Скажу максимально честно, я программирую за деньги на С++ больше трех лет, сменил несколько работ, и такой хуйни, как перегрузка одного и того же оператора вне и внутри класса - не видел ниразу. И никогда, надеюсь, не увижу
>>1126466Двачую этого КОЛЛЕГУ, тоже ни разу не встречал.7лет-опыта
>>1126309Проверь инициализацию переменных. Может быть такое что ты где-то читаешь неинициализованую переменную. При этом в дебаг версии она всегда попадает в (к примеру) заполненую нулями память. А в релиз версии нет.
Ребят подскажите как решать это, нихера не могу понятьС меня что нить, нужно хотя бы мат аппарат под это дело заточить, а я уже третий день голову ломаю и нихера сообразить не могу.Кубик, грани которого помечены цифрами от 1 до 6, бросают N раз. Найти вероятность того, что сумма выпавших чисел будет равна Q.Ограничения: 1 <= N <= 500, 1 <= Q <= 3000.Входные данныеВ первой строке находятся числа N и Q через пробел.Выходные данныеВероятность того, что сумма выпавших чисел будет равна Q.ПримерыВходные данные1 1Выходные данные 1.66666666666667E-0001Входные данные2 2Выходные данные 2.77777777777778E-0002
>>1126538Элементарная задачка из комбинаторики и даже не про плюсы, иди нахуй.
>>1126518Но игровое поле и есть нули. Когда рисуется поле - вся матрица забивается нулями. Так что каким хуем выполняется условие проверки ничьи, где все поля! =0 - я хуй знает.
>>1125337Почему так много строк?
>>1126564Чудес не бывает. Ищи хуйню.
>>1126564Рисуй поле точками, игрока иском, а компьютер буквой О.
ВЫ ЗВЕБАЛИ СО СВОИМИ ЛАБАМИ, СТУДЕНТЫ ЕБАНЫЕКРЕСТАНЫ, ИГНОРИРУЙТЕ ИХ, НЕ ОТВЕЧАЙТЕ ИМВЕДЬ ТАКОЕ ДЕРЬМО, КОТОРОЕ НЕ МОЖЕТ НИ В ГУГЛ, НИ В КНИГИ, НИ В ОДНОГРУППНИКОВ ЛЕЗЕТ В ПРОФЕССИЮ, ДЛЯ КОТОРОЙ ОНИ СЛИШКОМ ТУПЫ И ЛЕНИВЫ, А ВАМ ПОТОМ С НИМИ РАБОТАТЬ, ОСТАНОВИТЕСЬ
>>1126575А за сколько строк ты напишешь ТТТ с игрой против компьютера? >>1126578Я хуй знает где искать. Это нелогично что ничья получается. Клетки же не заняты. >>1126583Это еще зачем?
>>1126627Друг, я отсобесил больше 20 джунов. Поверь мне - ребята с лабами не устроются никогда.
>>1126633В два раза меньше точно.Хотя проблема не в этом, а в том, что ты чот не очень хочешь разбираться. Тебе уже ВСЁ сказали по делу.>>1126280
Сап, тут в соседнем треде кидали ссылку с динамикой % употребления кода не помню, как они ее считали на разных языках. У С++ употребление уменьшается с 2005. Из каких "ниш" его вытеснили другие языки?
>>1126648Из всего, где скорость разработки > производительности.
Уже в который раз наслаждаюсь бугуртом байтоеба из дрейкфейс компани:https://macton.smugmug.com/Other/2008-07-15-by-Eye-Fi/n-xmKDH/i-Zb7vTpP
>>1126538P(N,Q) = Sum1<=i<=6p(i)P(N-1,Q-i), где p(i) = 1/6В простонародье это хуйня известна как формула свёртки и задача о размене монет.
>>11266661<=i<=6
>>1126664Вот этот обмудок:https://www.youtube.com/watch?v=rX0ItVEVjHcПодумать только, целая религия байтоблядства из-за одной сраной соснули от сосони.
>>1126213>Простые насколько? Твой вопрос порождает больше вопросов, чем ответов.Например перевод строкового hex-байта ("1F") в uint8. Можно их все замапить и читать из массива, либо же каждый раз делать несколько простых вычислений.
>>1126732А нахуя он приходит строкой?
>>1126732Зависит от частоты использования, от размера таблицы, от сложности вычислений. Вычисления могут быть сложными относительно размера входных даных. Ответ на твой вопрос:>Правильно ли я понимаю, что кэшировать простые вычисления нет смысла, т.к. чтение из памяти может быть намного медленнее, чем пара циклов процессора? Нет, ты понял неправильно.
>>1126548Элементарная задача? Ну намекни анон плс, какая это элементарная задача ПОЖАЛУЙСТА
>>1126548или хотя бы название этой элементарной задачи, с возможным решением, а дальше решив эту задачу, я смело пойду куда ты просишь. Пожалуйста
>>1126785Найди препода, спроси у препода.
>>1126841нету препода, ну ты хотя бы намекни как решать то, ну или пруфани а
>>1126748Есть протоколы, где нулевой байт означает конец данных. Если тебе надо передать строку с нулевыми байтами, запрос просто обрежется после первого нуля.>>1126764Ну почему же, если я точно знаю, что вычисление займет 3 цикла, а чтение из памяти - как минимум 10, можно быть уверенным, что кэширование бесполезно.
>>1126900Попробуй, для начала, в глазки не долбиться, тебе ответили уже.>>1126962>Ну почему же, если я точно знаю, что вычисление займет 3 цикла, а чтение из памяти - как минимум 10, можно быть уверенным, что кэширование бесполезноЯ это и имел ввиду, написав сообщение, на которое ты отвечаешь. Если ты такой умный и всё знаешь, зачем спрашивал?
>>1126979>Я это и имел ввиду, написав сообщение, на которое ты отвечаешь. Если ты такой умный и всё знаешь, зачем спрашивал?Вообще я ожидал какого-нибудь интересного ответа, например, можно ли заставить прогу хранить эти данные в L1-кэше, чтение из которого - 2-3 цикла, что явно лучше любых вычислений, либо что этого нельзя гарантировать и я прав.
>>1127006Ты бы для начала почитал как работает кэш процессора, да и вообще процессор, прежде чем писать такую хуиту.
>>1127006Можно попробовать механическим путем разорвать контакт на пластинке полупроводника процессора, тем самым приведя его кэш 3 уровня в нерабочее состояние. При обращении к нему, процессор будет обнаруживать кэш-промахи, и, таким образом, будет использоваться только кэш первого уровня, что тебе и нужно. Можешь спасибо не говорить, и не показывай это производителям процессоров, они поставят тебя на посмешище, потому что им нужно впаривать кэш третьего уровня всяким лохам, чтобы грести с них бабло.
Я так понел, что для гарантии расположения полей объекта в памяти точно так, как пользователь указал, надо, чтобы объект был POD. А если не POD, там расположение полей может меняться только от компилятора к компилятору или же даже в (конкретной) работающей программе у нескольких объектов одного класса расположение полей в памяти может быть разным?
>>1126643Я уже разобрался. Проблема была в том, что я в начале обьявил переменную draw, но значения ей не указал. Из-за этого и получалась ничья на каждом ходу
>>1127187>Я так понел, что для гарантии расположения полей объекта в памяти точно так, как пользователь указал, надо, чтобы объект был POD.Нэт. POD - это отсутствие конструктора/деструктора/оператора присвоения копии/оператора присвоения перемещением/конструктора перемещения (rule of zero).То, о чём ты спрашиваешь, это: http://eel.is/c++draft/basic.types#def:layout-compatibleИ в частности это: http://en.cppreference.com/w/cpp/concept/StandardLayoutType>у нескольких объектов одного класса расположение полей в памяти может быть разным?Штоблядь.
>>1127207>POD - это отсутствие конструктора/деструктора/оператора присвоения копии/оператора присвоения перемещением/конструктора перемещения (rule of zero).Это я напиздел.http://en.cppreference.com/w/cpp/concept/PODType
Пацаны, вот открываем мы сокет. Он один, а клиентов много. Как данные не перемешиваются, когда туда что-то записывается? И как происходит перезапись данных? Например, мы прочитали 100 байт, потом счет идет опять с нуля, а как оно в памяти хранится? На ум приходит только по кругу поинтер водить.
>>1127452> Как данные не перемешиваютсяДля обычного программиста это не имеет значения. Если теб чисто для себя то читай компьютерные сети таненбаума.
>>1127452Либо по кругу (циклическая дорожка), либо как односвязный список (сообщение, сообщение, сообщение и т.д.)А не перемешиваются они просто из-за того, что хранятся с заголовками. Там же записано кто был отправителем, длина и т.д.
>>1127454Я просто думал, что нужно самому эту кучу разгребать, чтобы обрабатывать множество клиентов, а там оказывается апи есть.>>1127455Понятно, под капотом много происходит.
Я тут сделал какую то хрень на qt и с++, раньше никогда не писал на этом языке и с этим фреймворком, зацените...
Давненько не захаживал.Реально перекатиться в кресты после веба? Есть истории?Сам выкатился с крестов на пыху после года работы, но иногда скучаю. Да и чувствую, что было ещё что изучить, но донная работа не давала возможности.Тут скорее вопрос более общий. Насколько силён барьер между разными сферами/языками в программировании?
>>1127558Я щитаю, что барьер силён ровно настолько, насколько ты туп. Всякие объебосенные особенности языков ты можешь познавать долго, но вернуться в плюсы с пыхи, однажды уже писав на них, ты вполне сможешь.
Суп. Есть такой вот код:[code]String &String::operator =( const char str ) { if( !str ) str = ""; char tmp = strcpy( new char[ strlen(str)+1 ], str ); delete [] s_; s_ = tmp; return *this;}[/code]Вот это выделенное болдом присваивание указателю на const char - это тип особо оговоренная запись такой последовательности "Сделать пустую строку и сделать str указателем на неё"?
>>1127622Да. Насколько я знаю, память под строку ещё на этапе сборки выделяется.
>>1119750 (OP)Какую из 3 книжек брать новичку? От автора c++?
>>1127695C++ Primer
Допустим, у нас есть цикл for (size_t i = 0; i <= value; ++i). Нужно ли учесть случай, когда value равно SIZE_MAX и цикл получится бесконечным, если мы знаем, что это нереально в нашей программе?
Если у нас функция принимает поинтеры, всегда ли нужно проверять их на 0?
>>1127956Скасти value к size_t - все равно какой-то каст там будет. И скорее всего будет каст size_t к более крупному типу - и операции с ним получатся (возможно) дороже.>>1127961Да.
>>1127961Нет, это просаживает производительность. С другой стороны, если ты точно знаешь, что 0 прилетать не должен, можно заменить на референсы.
>>1127969Не просаживает, предсказатель переходов будет почти всегда правильно выбирать верную ветку.Я обычно всегда ассерты ставлю и пишу тесты, брат жив
>>1127973>предсказатель переходовЕго отключили уже везде после Мелтдауна/Спектра.
>>1127980Ага, разогнался.
>>1127980Без предиктора производительность снизится в РАЗЫ, если не в десятки раз.
>>1127961Передавай по ссылке, хули ты как дурак
Прошу не обоссывать, а пояснить дауничу за "магию программирования".Есть функция сериализации двусвязного списка:struct ListNode { ListNode prev; ListNode next; ListNode rand; // указатель на произвольный элемент данного списка std::string data;};class List {public: void Serialize(std::ostream& stream) { assert(stream.good()); stream << count << std::endl; if (IsEmpty()) { return; } int offset = 0; for (auto node = head; node != nullptr; node = node->next) { reinterpret_cast<int>(&(node->prev)) = offset; ++offset; stream << node->data << std::endl; } for (auto node = head; node != nullptr; node = node->next) { offset = reinterpret_cast<int>(&(node->rand->prev)); stream << offset << std::endl; } ListNode prev = nullptr; for (auto node = head; node != nullptr; node = node->next) { node->prev = prev; prev = node; } assert(stream); } ListNode head; ListNode tail; int count;}Как я понял сериализация это запись структуры обьекта скажем в фаил. Почему просто не записать всю структуру? Слишком большие затраты по ресурсам или есть что то еще?
>>1120459https://www.youtube.com/watch?v=dJ-NA86bYQ4
>>1128013>Почему просто не записать всю структуру?Какую структуру?
>>1128056stream <<reinterpret_cast<int>(&(node->prev))stream <<reinterpret_cast<int>(&(node->next))stream <<reinterpret_cast<int>(&(node->rand))stream <<node->data
>>1128093Это хуита какая-то. Нахуя хранить адреса в файле?
>>1127956Если у тебя value имеет ту же ширину, что и size_t, или меньше - ясен хер, не надо.>>1127969Референсы - дерьмо собачье, они же висячие бывают. >>1127961Нужно соблюдать стиль остального кода. Если у тебя никакие либы на ноль не проверяют, то лучше и в твоей тоже не проверять. Не говорю уже о том, что в своей либе лучше умные указатели использовать.>>1127980Пиздишь. Его отключили разве что в коде ядра и только там, где лучшего решения нет, а для x86 Гугл придумал retpoline.>>1128013>Почему просто не записать всю структуру?Если у тебя POD без указателей и ссылок - хоть конём ебись. Но это плюсы, и в классах не толко интегральные типы. Даже в Сях у тебя указатели есть, как ты их будешь восстанавливать их из файла, ёбушка?
>>1128104Так retpoline обоссали уже, он не от всего защищает.
>>1128100Это и был мой изначальный вопрос: почему нет?Прошу обьяснить более развернуто, нежели "Это хуита".
>>1128122Чтобы это понять, тебе нужно знать две вещи - виртуальная память и ASLR.И я не вижу тут кода десериализации.Ты же понимаешь, что адрес node->next имеет смысл, пока весь список не был уничтожен?
>>1128110Кто его обоссал-то? Я понял, что интеловцы ещё какую-то херь в линукс пушат, которую Линус обоссал, но статей о том, зачем это и почему, я ещё не видел.От Meltdown он не защищает, ясен хуй, но если ты BTB для всего кода отключишь, включая юзерспесс - тогда совсем жопа будет, поэтому из двух жоп выбрали меньшую - полная защита привилегированного адресного пространства - от BTB не зависит.>>1128129>Чтобы это понять, тебе нужно знать две вещи - виртуальная память и ASLR.Ты знаешь, если человек не понимает, что восстановить объекты по тем же адресам он может мягко говоря не всегда, его это не спасёт.
Двач, очень плохо понимаю с++, но для препода надо сдать эти задачки. Может кто помочь?
>>1128368http://www.ideone.com
>>1128368100 баксов в час, деньги впередБлять ну нахуя вы вкатываетесь в ит? Нет тут денег, валите нахуй
>>1128372Не вкатываюсь, просто предмет не связанный с профессией.
>>1128368Что это за множественные плюсы?
>>1128381(b++) + (++c)
>>1128368Вот же препод ебанутый у тебя.Нужно таблицу с приоритетами команд искать где-то. Наверняка в его методичке или материале есть что-то. В открытом доступе тоже есть, но может у него проще это расписано.
>>1128392((b++)++)+c
>>1128398ты не можешь использовать ++ постфиксный на rvalue.
>>1128401Ну да, примерно так конпелятор на ту конструкцию и ответит.
>>1128373Просто иди нахуй. Если препод тебя не вывез на требуемый уровень, подай на шаражку в суд.>>1128368Могу только сказать тебе, что препод твой гондон, и там в последней строчке ошибка, поэтому такая программа просто не соберётся.>>1128398Понятнее не стало. Если ты хотел объяснить, надо было использовать дополнительные временные значения.
>>1127484Пили дальше, ну.
Анон, как отловить косяк в коде?Есть одна программа. В ней есть несколько тредов. Один тред должен заниматься сохранением и переносом данных. Я дошёл до момента когда необходимо перенести сохранённые файлы. Всё работает нормально, но при удалении скопированного файла всё намертво стопорится - окно программы не реагирует на клики, все потоки виснут, кнопки отладки в MVS становятся неактивными. При этом, это происходит только на удалении 6-10 файла. Если не удалять файлы, то всё работает нормально.Сначала я думал что это qfile.remove отрабатывает криво и попробовал и стандартный .remove и winapi DeleteFile, всё приводило к тому же результату.Как мне поймать ошибку?
>>11286151) Написанная криворукими дебилами кюпараша потоконебезопасна.2) В написанном криворуком говнокодером высере исходный файл дергается где-то в других потоках.3) и то и другое.
>>1128618>потоко>потокаА разве при этом не должен происходить краш с ошибкой?
>>1128630Это не разыменование нулевого указателя, выход за границы массива или ещё какая либо ошибка неправильной работы с памятью которую ОС и рантайм за тебя ловить будет. Это логическая ошибка, с точки зрения компуктера вполне адекватный код.Попробуй выполнение QFile::remove оградить мютексом.
>>1128633>Попробуй выполнение QFile::remove оградить мютексом.В этом плане у меня всё ок. Только этот поток работает с данными файлами
>>1128635>у меня всё окЕбать дебил.
>>1128647>Ебать дебил. Спасибо за помощь, понял в чём проблема. Пойду выпилю винишко-соседку и выпилюсь
>>1128615Ещё уточнение. Баг возникает при переносе на сетевой ресурс. При переносе внтури пекарни всё работает как и задумано
>>1128660Типичные мультипоточные фокусы.Рисуй формочки на ангуляр.ноде и не думай - не твое это.
>>1128653Не забудь тред создать пасту написать.
Аноны, нужна помощь!! Надо написать программу на лабу, сам в программирование не могу, ни слова не понимаю, так что спасайте кто может
>>1128706ЛАБЫ ИДУТ НАХУЙособенно такие простые
>>1128706>член-даннымиРешай графически.
>>1128706>сам в программирование не могуА нахера ты в него полез, раз ничего не понимаешь ?Лаба реально простая, если ты открывал книгу
>>1128706> Надо написать программу на лабу, сам в программирование не могу, ни слова не понимаюЕстественный отбор, мать его! В течение семестра пинал хуи? Идёшь нахуй. Препод ничему не научил? Подаёшь в суд на препода.
>>1128662>Типичные мультипоточные фокусы.Остановил все потоки кроме этого и основного в котором ничего не происходит кроме вызова этого потока. Никаких изменений в нерабочести программы
Итак. Никакой многопоточности. Чистый проект. Всё-равно переносятся только 6 файлов
>>1128834Сходку Нострадамусов себе нашёл?
>>1128706Держи, анон.https://gist.github.com/anonymous/ca6cd008ad23d07d5161bc83178b9cc5Не тестировал, просто набрал в блокноте. Добавишь заголовочные файлы в начале какие нужно, ну и проверишь.
>>1128834>Qt>WinAPIНу а может средства Qt можно как-то использовать?
>>1128850Использовал выше, винапи просто для разнообразия. Разницы нет.
>>1128732Да я не лез, я вообще на самолетомтроении учусь, хочу сидеть модельки в солиде рисовать, а меня донимают программированием...
>>1128850Ладно, не обращайте внимания
>>1128852Лол, учись прогать пока не поздномимио выпускник машиностроения, работаю кодером на С++
>>1128850Перепроверил с if (QFile::copy(infile->absoluteFilePath(), "Z:/aa/" + infile->fileName())) { QFile::remove(infile->absoluteFilePath());}Всё ещё 6 файлов! Даже спустя несколько часов и переписываний код не заработал
>>1128848Спасибо, храни тебя боженька!Постараюсь понять как ты это сделал (ничего не обещаю)
>>1128861Там в getBooks добавь в конце :return tmpBooks;
Чистый проект. Удалено всё ненужное. Только код переноса файлов. Перенос на свежую виртуалку с рабочей шаройПереносятся только 6 первых файлов. Если закомментировать строчку отвечающую за удаление файлов >QFile::remove(files2.front().absoluteFilePath());то копируются все файлы. Почему?
>>1128868Добавил, еще раз спасибо, надеюсь препод не поймет названия книг
>>1128875Братиш, а через debug никак не смог понять?
>>1128875Дай-ка я угадаю, удаляется 6 файлов, а всего их 11-13?
>>1128882Программа не крашится. Она просто перестаёт осуществлять действия и у меня блокируется возможность сделать следующий шаг в отладке. >>1128884Всего их несколько сотен, но я пробовал и на меньших объёмах
>>1128886Может у тебя с самбовой шарой какие-то проблемы? Попробуй циклом в консольке скопировать.
>>1128886Попробуй вместо своего удаления:if (скопировался) {QFileInfo file = files2.takeFirst();file.remove(); } else {files2.pop_front();}
>>1128875Хуй знает что там у тебя, но, блять, с кутей используй форвард слеши в путях.
>>1128886Ты поди в треде, отсветстенном за гуй все копируешь? В обработчике нажатия кнопки?
>>1128891Не прокатило, пик1.В связи с этим сделал пик2.Получил опять всего 6 перемещённых файлов из множества.>>1128910Ага. И вообще в конструкторе. Но это нормально и не важно, потому что выше я делал то же самое в отдельном потоке. Просто стараюсь максимально упростить задачу. >>1128888Винда копирует нормально. Сейчас попробую переписать через std::system("move c:\\1.txt \\\\test\\asd\\1.txt");
>>1128914Ну выведи ты в лог все перед каждой операцией, и увидишь, на чем висит. Может там имя какое-то кривое или еще что.
[begin, end)Почему это везде пишут в подобной форме? В этом есть какой-то смысл? Почему первая скобка квадратная а вторая круглая?
>>1128939Тредом ошибся? Или я чего-то не знаю?
>>1128941http://eel.is/c++draft/string.cons
>>1128943https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%BC%D0%B5%D0%B6%D1%83%D1%82%D0%BE%D0%BA_(%D0%BC%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0)#%D0%A2%D0%B8%D0%BF%D1%8B_%D0%BF%D1%80%D0%BE%D0%BC%D0%B5%D0%B6%D1%83%D1%82%D0%BA%D0%BE%D0%B2
>>1128939[ включительно) невключительно
Заказал ppp c++. Какие подводные
>>1128965Зависит от того, с какой целью ты купил эту книгу.Если повыёбываться перед коллегами, то норм. А там может и пригодится.Если ты так вкатываться решил, то эта книга не поможет.
>>1128852Так с этого бы и начал, браток. Извини, что нагрубил
>>1128970> Если повыёбываться перед коллегамиПроиграл. Скорее перед одноклассники
В голом С++ можно сделать графику? А управление курсором или хотя-бы клавиптурой? 478075Об этом в книжке Primer можно прочитать?
>>1129082У тебя доступ есть прямо к железу, конечно можно.
>>1129094А в книге про это есть? Можешь написать пример кода, выводящей на экран квадрат, например?
>>1129082Исключительно используя API операционной системы. В случае шиндошс - кури CreateWindow и виндовый Event Loop для управления.Для графона - GDI (медленно, уебищно) либо Direct2D (красиво, на видеокарте, сложнее чем GDI)
>>1129100Но проще взять что-то готовое, типа SFML
>>1129099>>1129100К У Т ЭУТЭ
>>1129103это как атомной бомбой хуйнуть по бомжам на пустыре
>>1129105Смотря какие цели он преследует - если просто понять механику и разные приемы в рисовании графики - то вполне ок. Если же хочет разобраться в потрохах графичеких подсистем разных ОС, нахуй никому не нужных в 2к18, то конечно кутэ тут не поможет.
>>1129101Двачую.
>>1129100А что скажешь по поводу использования SDL?
>>1129129Норм.Лично я пользовался и sfml, и sdl. Основная критерий в том, насколько сильно ты хочешь ооп.
>>1129131А что легче в освоении тому, кто только С начал изучать?
>>1129103К Ь Ю ТКЬЮТ
>>1129148Ай, наебался со второй к, да и хуй с ним
>>1128860Мы дождёмся MCVE от тебя, блядь? Ты хочешь сказать, что проблемы только с сетевым хранилищем? Ты хочешь сказать, что если ты убираешь копирование в \\хуйпизда, то баг пропадает? Заставь маленький кусок своего кода работать и на пастбин пихни.Но если ты допедришь до того, чтобы сделать MCVE, ты и багрепорт в жиру Куты можешь пихнуть.>>1129105Если атомную бомбу тебе подарили и она размножается почкованием, то почему бы и нет?>>1129082>В голом С++ можноНЕТ.
Перекат:>>1129255 (OP)>>1129255 (OP)>>1129255 (OP)
>>1129195>Но если ты допедришь до того, чтобы сделать MCVE, ты и багрепорт в жиру Куты можешь пихнуть.Да не бургути ты так. Я обосрался у меня что-то с системой, даже FAR не переносит нормально.
>>1128965Что в оригинале, что в переводе, довольно много опечаток и ошибок, так что если ты ньюфаг и вообще не знаком с крестами, то будет довольно сложно, но сама по себе книга неплохая.
>>1129082>В голом С++Это такой реквест на Rule34?>сделать графику? А управление курсором или хотя-бы клавиптурой?Для этих потребностей используется библиотека SDL
>>1125357А если байты хочу пердолить?
Clion не дебажит умные указатели? ЗА ЩОООООО???
>>1142595ты еще в блокноте код попиши.