М.Двач / Программирование

Этого треда уже нет.
Это копия, сохраненная 7 мая 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

361 Кб, 1009x1300

Оффициальный™ традиционный® C++ тред #29 04 Апр, 15:09 #707568 В конец треда | Веб

Владей собой среди макак глумливых,
Кресты хулящих за нехватку фич;
Терзая код профайлером пытливо,
Рантайма эффективность увеличь.
Пусть ненамного - важно лишь стремленье,
Тобою байтов взнузданный полет;
Смотри на них со страстью, вожделеньем,
Пусть на тебя глас Бьерна снизойдет.

Храни дизайн, не став рабом паттернов,
Тестируй, не завязнув в TDD,
В давнишнем коде вдруг почуяв скверну,
Не забывай о собственном труде.
Останься тверд, когда твой храм оплеван
Статьями не осиливших глупцов;
Когда стандарт меняется, и снова
Ты должен изучать язык с основ.

Будь непреклонен с джавапетухами,
Будь равнодушен к чистоте борща,
Будь щедр с одноглазых змей рабами,
Им либу бросив с барского плеча;
Будь терпеливым к платине вопросов,
К лентяям с говнолабами будь строг.
Тогда царем ты будешь меж отбросов,
Тогда, мой сын, ты будешь Крестобог.

Старший брат: >>683573 (OP)
Предыдущий: >>702133 (OP)

TL;DR

Q: Я хочу тотчас вкатиться, а разбираться буду в процессе. Что я должен делать?
Q: Не уверен, что хочу изучать C++. Как мне пощупать его без лишней ебли?
A: Читаешь эту книжку, смотришь упражнения из нее и суешь в онлайн-компилятор. Сообщения компилятора об ошибках копипастишь в гугл, ответы на возникающие у тебя вопросы ищешь в предыдущих тредах, спрашиваешь в этом треде, если не нашел. Если тебя послали на хуй или не ответили, то ты спросил платину, читай предыдущие треды внимательнее.

Памятка ньюфагу

Вопросы по синтаксису идут на хуй

Лабы идут на хуй

"Как мне сделать Х на чистых крестах без библиотек" идут на хуй

Все идут на хуй

Хейтер сосет члены на пару со своей мамашей

Небольшие фрагменты кода размещай в треде при помощи тега [code] и жабаскрипт-костыля. Для больших фрагментов используй внешние сервисы.

FAQ

Мотивация

Q: Почему стоит использовать именно C++?
A: Ни один язык не идеален, но по совокупности киллер-фич C++ оставляет все остальные языки позади. Вот основные три:

Скорость
C++ действительно быстрый язык — вместе с C, его прародителем, они с большим отрывом уделывают по скорости все остальные языки высокого уровня. Код на C++, как правило, медленнее аналогичного кода на C приблизительно на 0-20% а в ряде случаев C++ оказывается даже быстрее, причем замедление появляется только при использовании высокоуровневых конструкций (в C++ ты никогда не платишь за то, чего не используешь). Таким образом, если тебе требуется высокопроизводительный код, C++ станет отличным выбором.

Мощь
C++, являясь одним из наиболее выразительных и мощных языков, позволяет использовать большинство существующих парадигм. Его философия построена на минимальном ограничении программиста в выборе методов и инструментов простреливания ноги решения задачи. Как следствие, используя C++, ты можешь не думать о том, как обойти искуственные ограничения языка, а беспрепятственно выбрать наиболее подходящие к ситуации средства.

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

Q: Но он же давно устарел!
A: Современный C++ весьма далек от языка, которым он был в 1998 году. В настоящее время кресты живее всех живых, их развитие движется семимильными шагами, а новые стандарты принимаются каждые три года, сохраняя при этом полную обратную совместимость с предыдущими. К сожалению, из-за обилия некачественной литературы по С++, в которой игнорируются новые средства языка, бытует мнение о его "несовременности".

Q: Сейчас все пишут на %languagename, а кресты сосут у него!
A: Нужно понимать, что используемый язык должен соответствовать поставленной задаче. Никому не придет в голову писать на C++ скрипты или веб-фронтенд хотя это вполне возможно, но лишь немногие языки могут соперничать с ним по разнообразию решаемых задач.

Q: Хуле тут так сложно? Я открыл учебник, там какой-то ад!
A: Попробуй учебники, изданные после 2011 года, в которых рассматриваются возможности новых стандартов (C++11 и C++14). Эти фичи не только добавили выразительности, но и серьезно упростили жизнь разработчиков. Теперь программировать на C++ стало проще, чем когда-либо! Это не отменяет необходимости прочитать несколько серьезных книжек, чтобы написать на нем что-то годное. Тем не менее, да, C++ это по-настоящему сложный язык. Его никак не получится выучить за 21 день, ну вот совсем никак. Именно высокий порог вхождения повышает твою ценность как специалиста, не позволяя нанять вместо тебя индуса за еду. Более того, крайне нежелательно пытаться изучить его первым, если ты раньше вообще не программировал. С большой вероятностью это приведет к разочарованию и потере времени. Гораздо лучше будет начать с другого языка и базовых вещей алгоритмы, архитектура пека, операционные системы, а уже потом вернуться к крестам.

Литература

Q: Окей, я решил вкатиться. Какие же книги мне читать?
A: Специально для тебя аноны /pr собрали уникальную коллекцию отборной литературы по крестам. Только лучшие книги, последние издания, без хуев! Выбирай категорию и обмазывайся:

Для нюфань

Учебники для начинающих. Все примерно одинаковой годноты, читать имеет смысл только какой-нибудь один, который больше приглянется:

Автор(ы)

Название

Год

Ссылка

Бьерн Страуструп

Программирование. Принципы и практика использования C++

2016

https://yadi.sk/i/Yd6KKpLBqJSUr

Стэнли Липпман, Жози Лажойе и Барбара Му

Язык программирования C++

2014

https://goo.gl/kVaela

Стивен Прата

Язык программирования C++

2012

https://goo.gl/z7kA8u

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

Автор(ы)

Название

Год

Ссылка

Герберт Шилдт

C++. Базовый курс

2010

https://goo.gl/qMLAFl

Роберт Лафоре

Объектно-ориентированное программирование в C++

2004

https://goo.gl/QvjR6x

Best practices

Книги про основные подводные камни для тех, кто осилил предыдущий пункт. Следует пролистать все:

Автор(ы)

Название

Год

Ссылка

Скотт Мейерс

Эффективное использование C++

2005

https://goo.gl/wsDXGz

Скотт Мейерс

Наиболее эффективное использование C++

1996

https://goo.gl/tHa0tO

Скотт Мейерс

Эффективный и современный C++

2015

https://goo.gl/Im8VYQ

Скотт Мейерс

Эффективное использование STL

2002

https://goo.gl/QtS8Dc

Герб Саттер и Андрей Александреску

Стандарты программирования на языке C++

2005

https://goo.gl/Cpk4YR

Проектирование

Следует пролистать все перед переходом от лаб к написанию настоящего софта.
Последний пункт есть квинтэссенция ГИБКОСТИ, поэтому стоит прочитать его в любом случае, чтобы охуеть от того, как можно делать:

Автор(ы)

Название

Год

Ссылка

Ален Голуб

Веревка достаточной длины, чтобы выстрелить себе в ногу

2001

https://goo.gl/fBmuxp

Джеймс Коплиен

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

2005

https://goo.gl/Y1WGdU

Андрей Александреску

Современное проектирование на C++

2002

https://goo.gl/e1V5BC

Ахтунг!
Предыдущие два раздела дополняют, а не заменяют классические книги о лучших практиках разработки без привязки к конкретному языку (Макконнелл, Uncle Bob, GoF).

Справочники

Наиболее детальные описания языка. Удобно использовать как референс, читать от корки до корки не обязательно:

Автор(ы)

Название

Год

Ссылка

Бьерн Страуструп

Язык программирования C++

2013

https://goo.gl/XkAiOX (на ангельском)

Бьерн Страуструп

Язык программирования C++

2010

https://goo.gl/iZBDiV <устарело>

Кроме того, на ангельском доступны стандарты C++11, C++14, а также последняя версия черновика стандарта C++17.

Тонкости языка

Книги для тех, кто возлюбил кресты всей душой и желает углубиться в детали:

Автор(ы)

Название

Год

Ссылка

Герб Саттер

Решение сложных задач на C++

2002

https://goo.gl/iWaa6S

Герб Саттер

Новые сложные задачи на C++

2004

https://goo.gl/4nn512

Бьерн Страуструп

Дизайн и эволюция C++

1994

https://goo.gl/FqbPwo (для легкого чтения)

Отдельные аспекты

Читать по необходимости:

Автор(ы)

Название

Год

Описание

Ссылка

Энтони Уильямс

Параллельное программирование на C++ в действии

2012

Про использование std::thread
и других фич последних стандартов
для разработки многопоточных приложений

https://goo.gl/qJfBkD

Николаи Джоссатис

C++. Стандартная библиотека

2012

Детальный справочник по STL и
остальным частям стандартной библиотеки

https://goo.gl/PEyiMH

Дэвид Абрахамс и Алексей Гуртовой

Шаблонное метапрограммирование на C++

2009

"Мы встроили в шаблоны C++ функциональный
язык программирования, чтобы ты мог
программировать, пока программируешь"

https://goo.gl/isSt7j

Дэвид Вандевурд и Николаи Джоссатис

Шаблоны C++. Справочник разработчика

2003

После прочтения этой книги тебя не приведут
в ужас даже исходники boost::MPL

https://goo.gl/0M4NpG

Роберт Седжвик

Фундаментальные алгоритмы на C++

2001

Стандартный курс алгоритмов с примерами
на C++. Для его чтения не нужно знать
мертвые языки, в отличие от этого вашего Кнута

https://goo.gl/4jwxSl (части 1-4),
https://goo.gl/yDuQgG (часть 5)

Другие обучающие материалы

Q: Я не умею читать.
A: Можешь посмотреть какой-нибудь онлайн-курс: раз, два, три

Q: Не люблю, когда льют воду. Хочу коротких материалов по существу.
A: Вот тебе блоги, факи, референсы и всякое такое:

Годный блог, в котором все просто и понятно тян не нужны кококок борщ

Блог с хорошо расписанными фичами новых стандартов

Краткие описания библиотечных функций и контейнеров - на русском или более подробно на ангельском

Блог Герба Саттера (на ангельском)

Блог Скотта Мейерса (на ангельском)

Блог еще одной тянки, много о Qt и оптимизации (на ангельском)

Куча других блогов (на ангельском)

Большой FAQ по C++ (на ангельском)

Видео с CppCon (на ангельском)

Софт и библиотеки

Q: Я готов начать погроммировать! Куда мне писать код?
A: На этапе написания хэллоуворлдов можно не ебаться с установкой софта, а использовать онлайн-компиляторы: раз, два, три, четыре. Для работы над более серьезными вещами удобнее всего установить какую-нибудь IDE. Ниже приведены несколько хороших вариантов:

Платформа

Название

Описание

Ссылка

Windows

Microsoft™ Visual Studio®

Общепризнанно самая продвинутая и удобная IDE, не имеющая равных по части автодополнения и возможностей отладчика. По ссылкам справа можно скачать бесплатную редакцию последнего выпуска (2015 Community Edition). Кроме того, существуют редакции с расширенными возможностями (Professional и Enterprise). Они стоят сотни денег, но если ты студент вуза, подписанного на Dreamspark Premium, то ты можешь получить их безвоздмездно (то есть даром). Многим новичкам интерфейс студии кажется чересчур сложным, так что обязательно прочти этот гайд, если у тебя возникают проблемы с компиляцией хэллоуворда

https://goo.gl/qgAAc6 (русская версия) или
https://goo.gl/WIPW9L (ангельская версия)

Все

CodeLite

Простая, легковесная, кроссплатформенная, швабодная IDE. Менее навороченная, чем студия, но среди бесплатных вне конкуренции. Вероятно, это наилучший вариант для новичка с *nix. Под Windows же требует чуть больше ебли с установкой компилятора MinGW/LLVM

http://codelite.org/,
"sudo aptitude install codelite codelite-plugins"
для установки под *nix

Все

CLion

IDE, призванная похоронить Visual Studio пока не особо получается. Она стоит денег, но можно украсть почти не протухшую версию на торрентах или получить бесплатную лицензию на год по скану студбилета, если ты студент. Удобные свистелки и перделки присутствуют. Тормоза и баги присутствуют. Кросплатформенность присутствует

https://www.jetbrains.com/clion

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

Разумеется, установка IDE вовсе не обязательна. Ты можешь использовать текстовый редактор в связке с каким-нибудь компилятором, выбросить мышку, отрастить бороду и примкнуть к Церкви Святого Столлмана. Но лучше тогда сразу отправляйся в тред сишников, если не хочешь быть обоссанным другими сектантами за использование б-гомерзкого C++.

Q: Не буду я все делать сам! Подавайте сюда софт, который все сделает за меня и подотрет мне жопу!
A: Без проблем:

Статический анализатор, который умеет находить в коде ошибки и неоптимальные места. Швабодный. Есть плагин для Visual Studio

Более навороченный, но коммерческий аналог

Встроенный в clang статический анализатор

Детектор утечек для Visual Studio. Предельно прост в прикручивании

На порядок более мощная и сложная утилита для *nix, служащая тем же целям

Гугловские утилиты для контроля корректности кода

Гугловский фреймворк для автоматизации тестирования

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

Q: Мне надоело писать велосипеды, какие у вас тут популярные либы?
Q: Нужно зделать %монструозная_хуйня_нейм, но я обосрался от одной мысли о написании ее с нуля, что же делать?
A: Гляди сюда:

boost

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

Недостатком boost можно считать его размер - более 300 мегабайт. Большинство компонент boost не являются независимыми, и попытка использовать один единственный контейнер обернется фактическим подключением 2/3 всего присутствующего в комплекте. Таким образом, если boost не будет использоваться на полную, лучше юзать другие, более специализированные библиотеки.

Скачать бесплатно без смс

Краткие аннотации к большинству компонентов

Документация к некоторым компонентам

Документация (на ангельском)

Литература:

Автор(ы)

Название

Год

Ссылка

Ариндам Мукерджи

Learning Boost C++ Libraries

2015

https://goo.gl/b0gPN1 (на ангельском)

Qt

Существует швабодный кроссплатформенный фреймворк-надмножество C++ под названием Qt. Он содержит довольно большое количество компонент (для работы с сетью, базами данных, для юнит-тестирования и др.), но киллер-фичей и основным полем его применения являются возможности по разработке графических интерфейсов. Qt сам по себе, как расширение языка, предоставляет для этого более удобные средства, чем обычные библиотеки, а использование специализированных IDE наподобие Qt Creator позволяет в буквальном смысле собирать интерфейсы мышкой, а код писать только по существу.

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

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

Cкачать бесплатно без смс

Документация к 4.8

Более полная документация к обеим версиям (на ангельском)

Литература:

Автор(ы)

Название

Год

Ссылка

Макс Шлее

Qt 5.3. Профессиональное программирование на C++

2015

https://goo.gl/aZ66gK

Макс Шлее

Qt 4.8. Профессиональное программирование на C++

2012

https://goo.gl/Slb1In (книга) +
https://goo.gl/toUDWc (исходники примеров)

Марк Саммерфилд

Qt. Профессиональное программирование

2011

Только Qt 4.х:
https://goo.gl/qpkZFm (книга) +
https://goo.gl/LIIECh (исходники примеров)

Другие хорошие библиотеки

Несколько специализированных библиотек для часто встречающихся задач. Все — маленькие, быстрые и простые в освоении:

libcurl - сишная библиотека для работы с сетью (существует также curlpp - крестовая обертка для нее, но использовать ее не стоит, ибо разработка заброшена еще в 2009 году)

SFML - работа с графикой и аудио

FLTK - графические интерфейсы

И еще куча библиотек на любой вкус.

Q: Я прочитал все вышеперечисленное, теперь я гуру! Что дальше?
A: Дальше переходишь по ссылке, пробуешь отвечать на вопросы и понимаешь, что ты пока в самом начале пути. Кроличья нора крестов практически бездонна, поэтому продолжать постигать тонкости и детали можно очень и очень долго. В то же время, на этом этапе у тебя должно быть достаточно знаний, чтобы уверенно писать неплохой код. Поэтому читай исходники открытого софта и библиотек, отправляй пулл-реквесты в них, читай книжки по предметным областям и общим методикам разработки, а дальше уже сможешь запилить свой проект или вкатиться в существующий.

Предыдущие треды на архиваче

https://arhivach.org/thread/94971/

https://arhivach.org/thread/94972/

https://arhivach.org/thread/99414/

https://arhivach.org/thread/100995/

https://arhivach.org/thread/105148/

https://arhivach.org/thread/109335/

https://arhivach.org/thread/112797/

https://arhivach.org/thread/114519/

https://arhivach.org/thread/117109/

https://arhivach.org/thread/120019/

https://arhivach.org/thread/122683/

https://arhivach.org/thread/124637/

https://arhivach.org/thread/125532/

https://arhivach.org/thread/127327/

https://arhivach.org/thread/128133/

https://arhivach.org/thread/134437/

https://arhivach.org/thread/135285/

https://arhivach.org/thread/139690/

https://arhivach.org/thread/144812/

https://arhivach.org/thread/147540/

https://arhivach.org/thread/149983/

https://arhivach.org/thread/151271/

https://arhivach.org/thread/153304/

https://arhivach.org/thread/156131/

https://arhivach.org/thread/156310/

https://arhivach.org/thread/157411/

https://arhivach.org/thread/158594/

https://arhivach.org/thread/160272/

Старые ненумерованные треды

https://arhivach.org/thread/45477/

https://arhivach.org/thread/48611/

https://arhivach.org/thread/60085/

https://arhivach.org/thread/66322/

https://arhivach.org/thread/69413/

https://arhivach.org/thread/73221/

https://arhivach.org/thread/77999/

https://arhivach.org/thread/79194/

https://arhivach.org/thread/82038/

https://goo.gl/vvs9GP/

https://goo.gl/ZnBsYt/

Отдельные Qt-треды

https://arhivach.org/thread/15387/

https://arhivach.org/thread/65590/

Ответы>>707589>>707832>>707871>>708134>>708228>>713030>>713752

04 Апр, 15:11 #2 #707570

Сагану даунов.

04 Апр, 15:42 #3 #707589

>>707568 (OP)
>хулящих
>взнузданный
Кто-нибудь кроме опа знает такие слова?

Ответы>>707591>>707649

04 Апр, 15:52 #4 #707591

>>707589
Я знаю.
У опа ошибка.
Должно быть взнузданных, потому что взнуждаешь байты а не полет

Ответы>>707616

04 Апр, 15:57 #5 #707594

ОП, успеешь к юбилейному треду стишок на инглише написать для разнообразия?

Ответы>>707604>>707616

04 Апр, 16:20 #6 #707604

>>707594
Не благодари.

Vladey a mocking among macaques,
Crosses for blaspheming the lack of features;
Terzi code profiler curiously,
Runtime efficiency is increased.
Let not much - it is only important aspiration,
Thee bytes bridled flight;
Look at them with passion, lust,
Let your voice on Bjorn descend.

Keep the design, without becoming a slave to the patterns,
Tested, not zavyaznuv in a TDD,
The long-standing code suddenly sensed the filth,
Do not forget about your own work.
Stay firm when your temple spat upon
Articles do not overpower the fools;
When the standard is changed, and again
You have to learn the language with the basics.

Be adamant with dzhavapetuhami,
Be indifferent to the purity of borscht,
Be generous with the one-eyed snake slaves
They libu throwing with his master's shoulder;
Be patient platinum issues
To lazy to govnolabami be strict.
Then you'll be the king among the debris,
Then, my son, you will Krestobog.

Ответы>>707607

04 Апр, 16:25 #7 #707607

>>707604
>Then, my son, you will Krestobog.
Охуенчик.

04 Апр, 16:35 #8 #707616

>>707591
И так и так можно же. Взнузданный ~ обузданный, а обузданный в отношении процесса это вполне себе часто применяемый оборот. Например, чаще говорят "обуздать гнев кого-то", чем "обуздать гневного кого-то". Хотя это уже метафора такая скорее, но энивей. В принципе, тут можно было бы и поменять, да, размер не пострадает даже, но тогда смысл чуть-чуть другой становится, не "ты обуздал полет байтов", а "ты обуздал байты и они летают себе на поводках". Крестотред - самый филологичный тред зекача, лол.
>>707594
Боюсь, что тогда получится говно. Я, конечно, могу в ангельский, но не настолько, чтобы пилить стихи уровня Лозинского на нем.

Ответы>>707619>>707815

04 Апр, 16:44 #9 #707619

>>707616
Один анон статистику собирал по грамотности, там кресты тоже победили.

Мэтт Матьего Деймони 04 Апр, 17:13 #10 #707630

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

Поэтому решил просто писать письма всем компаниям, которые выложили вакансии разработчиков c++.

>Подскажите плиз, как в сопроводительном письме правильно напроситься на стажировку\"на работу на полставки" в компанию?
знаю, что вероятность не очень большая, что прокатит.
но попробовать хочу - хуже не будет.
вот только думаю, как бы правильно оформить это дело.

:
- Анон, Что кроме лаб писал?
- никаких суперпроектиков не пилил, если ты об этом. поэтому и хочу напроситься хоть на стажировку, хоть на полставки.

Ответы>>707642

102 Кб, 493x500

Мэтт Матьего Деймони fix 04 Апр, 17:16 #11 #707635

просто есть вариант пойти на QA,.
Но сомневаюсь, потому что если в итоге все равно хочу свалить в девелоп, то QA ведь не особо мне поможет, верно ведь?

04 Апр, 17:20 #12 #707642

>>707630
Ищи мелкие компании без NDA-практики, дальше просто пиши прямым текстом предложение поработать за еду. Мало кто отказывается от почти бесплатного junior junior developer.

04 Апр, 17:25 #13 #707649

>>707589
Ну "хулить" знают все, кроме, может быть, родившихся позднее 2000.

71 Кб, 639x639

04 Апр, 19:59 #14 #707815

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

04 Апр, 20:19 #15 #707832

>>707568 (OP)
>чистоте борща
Борщ это что?

Ответы>>707835>>707836

04 Апр, 20:20 #16 #707834

Ребята. Может кто-то видел гайд по /dev/video0 на крестах.
я просто слишеом много ищю и вайпаю этим эти треды чтобы игнорить эту тему. Здесь же есть красноглазики и понимающие потоки!!!

Ответы>>707845

04 Апр, 20:20 #17 #707835

>>707832
Это такая окрошка, но чем-то похожа на холодник.

Ответы>>707837

04 Апр, 20:21 #18 #707836

>>707832
Еда такая.

04 Апр, 20:21 #19 #707837

>>707835
Что под этим словом подразумевалось в ОП-стихе?

Ответы>>707838

04 Апр, 20:22 #20 #707838

>>707837
Очевидно, Haskell.

Ответы>>707843

04 Апр, 20:25 #21 #707843

>>707838
Какие-то вы путанные, товарищи крестобляди.

04 Апр, 20:26 #22 #707845

>>707834
Чего ты всех доёбываешь тут?

Ответы>>707857

04 Апр, 20:28 #23 #707846

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

Ответы>>707854

04 Апр, 20:33 #24 #707854

>>707846
Очевидный AutoIt.

Ответы>>707873

04 Апр, 20:39 #25 #707857

>>707845
пойми..
живу в общаге.. и тут у меня сервак под бсд для моих целей важных хранение дцп и я надеюсь что мои коды запуска атомных ракет никто не стащит благодаря i3lock но всякие прохожие лапают пек ирл по сетке я спокоен вроде ну и я просто хочу стащить скрин с вебки того кто трогал i3lock и лил мне не e-mail. и на linux решение есть.. но в бсд нет! и надо писать! самому!

Ответы>>707859

04 Апр, 20:42 #26 #707859

>>707857
добавлю что пек для кодинга на цпп и сервак -- одна железка

21 Кб, 686x356

04 Апр, 20:45 #27 #707864

лучше поздно чем никогда

Ответы>>707870>>707874

04 Апр, 20:48 #28 #707870

>>707864
>пик
Зачем ты так? Мне теперь труселя стирать

04 Апр, 20:49 #29 #707871

>>707568 (OP)
А при наследовании какие конструкторы проигрываются?
Папкин и дочерний при вызове дочернего?

Ответы>>707942

04 Апр, 20:54 #30 #707873

>>707854
http://i058.radikal.ru/1106/d4/87419f0aa49f.png

04 Апр, 20:55 #31 #707874

>>707864
Этот анон задал вопрос и пропал. Ему двое ответили, а он молчал. Спасибо я вместо него сказал. Это немного не настоящий случай. Наверно он всё таки не такой тупой был.

Ответы>>707946

04 Апр, 22:09 #32 #707942

>>707871
Только собственный, папкин нужно самому вызывать в дочернем

Ответы>>708144>>708299

04 Апр, 22:18 #33 #707946

>>707874
Ну ладно.

Ответы>>707947

04 Апр, 22:20 #34 #707947

>>707946
Больше не будешь его постить?

Ответы>>707991

04 Апр, 22:29 #35 #707955

Посоветуйте книжку, чтобы вкатиться в современные плюсы. Много лет назад читал первое издание страуструпа, еще без шаблонов, с overload и iostream.h.

Ответы>>707986

04 Апр, 22:52 #36 #707986

>>707955
В шапке все книги хуевые, да еще и на английском многие. Правильно, что ты на них не обратил внимания. Лучше читай Ишкову, "Изучаем C++ на задачах и примерах". В России про C++ отличные книги пишут, это все знают. Еще могу порекомендовать Белова, "Основы программирования на языке C++ Builder". Ну а если из иностранных, то самая-самая лучшая книга это Рао, "Освой самостоятельно С++ за 21 день".

Ответы>>708004>>708007

04 Апр, 22:54 #37 #707991

>>707947
Посмотрим.

04 Апр, 23:08 #38 #708004

>>707986
ето троллинк?

04 Апр, 23:09 #39 #708007

>>707986
Ну толсто же. Да и где в шапке книги?

Ответы>>708032

04 Апр, 23:38 #40 #708032

>>708007
А шапка-то волшебная, попробуй страницу обновить.

Ответы>>708041

231 Кб, 1101x785

04 Апр, 23:42 #41 #708038

Господи! Да я же программирую! Оно работает!
Первое упражнение Лафоре С++. Оцените говнокод

Ответы>>708048>>708395>>708508

04 Апр, 23:47 #42 #708041

>>708032
Обновил, ебаная магия. Но вопрос-то стоял как "книжка для продолжающих". Нахуя мне объяснения, кто такой if, зачем нужен виртаульный деструктор, и чем ссылка от указателя отличается? А вот, например, зачем нужен nullptr, и как компилируются эти ваши шаблоны, я бы почитал. На самом деле, штрауштрупа principles and practice 2015 года скачал, все правильно сделал?

Ответы>>708057

04 Апр, 23:54 #43 #708048

>>708038
> float
Это тебя Лафоре такому научил?

Ответы>>708052>>708348

04 Апр, 23:58 #44 #708052

>>708048
Именно, а что не так?

Ответы>>708379

05 Апр, 00:03 #45 #708057

>>708041
А теперь ткни МОАР под литературой для ньюфагов и узри.

05 Апр, 02:10 #46 #708112

Что почитать по всяким подводным камням C++? Ну типа там порядок вызова конструкторов базовых классов и проч.

05 Апр, 03:10 #47 #708134

>>707568 (OP)
В раздел заходя, первым делом ищу ваши треды, чтоб насладиться стихами, излечить раненную душу

05 Апр, 05:15 #48 #708144

>>707942
спасибо

05 Апр, 10:32 #49 #708228

>>707568 (OP)
Это кто питона глаза лишил, рысь?

05 Апр, 11:31 #50 #708267

Итак, задам свой вопрос сюда как C++ кодер.

Для начала - на случай своего ухода на фриланс - насколько фриланс на С++ перспективен?

Ну и второй вопрос - джуниор с Украины с образованием по программистской специальности и двумя годами опыта но опыта не особо удачного. Подробности описывать долго... Так вот - скажите критерии по которым можно определить потяну ли я на миддла?
Хочу в общем-то съебать в Харьков(личные причины почему именно туда) из меньшего по размеру(и зарплатам программистов) города и думаю на какую зарплату я могу рассчитывать. Сейчас получаю 400 баксов, хотя не устраивает не столько зарплата сколько то что в последнее время меня перекинули разрабатывать на iOS и Objective-C из-за отсутствия проектов на С++.

Ответы>>708288

05 Апр, 11:44 #51 #708288

>>708267
>насколько фриланс на С++ перспективен?
Нинасколько.
>Так вот - скажите критерии по которым можно определить потяну ли я на миддла
Срать на образование и место жительство, ты миддл когда есть пара лет опыта и сам ты так считаешь. Подготовься к собеседованию, подучись ебать мозги - и ты уже мидл лел.
>Хочу в общем-то съебать в Харьков
Пытаться съебать без оффера - хуёвая идея, лучше сначала поищи области где есть именно подобные проекты по твоему вкусу, если тебе принципиально.

Ответы>>708293

05 Апр, 11:45 #52 #708289

И да - единственная возможность фриланса на плюсах на апворке и всякой удалёнке. На второе (как возможно и на первое) без хорошего портфолио не попадёшь.

05 Апр, 11:49 #53 #708293

>>708288
>Нинасколько.
Вот этот вопрос особенно интересует. Почему так? Мало проектов? А почему их мало?
И если уж действительно так - то что из наиболее близкого перспективно для фриланса. Та же решетка перспективна?

Ответы>>708304

05 Апр, 11:55 #54 #708299

>>707942
При создании объекта унаследованного класс сначала вызывается конструктор родителя, затем потомка. Или о чём он спросил?

05 Апр, 11:58 #55 #708304

>>708293
>А почему их мало?
Потому что у языка ниша такая. Попробуй пораскинуть мозгами.

Ответы>>708306

05 Апр, 11:59 #56 #708306

>>708304
Ладно, ок... Жду ответа на другой вопрос:

>И если уж действительно так - то что из наиболее близкого перспективно для фриланса?

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

05 Апр, 12:29 #57 #708348

>>708048
Что не так-то, алё?

Ответы>>708379>>708656

05 Апр, 12:50 #58 #708372

Подскажите, почему нельзя сделать std::vector<char const* const>. Компелятор ругается, но сложно понять на что именно.

Я даже не могу сделать std::vector<const std::string> или std::vector<const std::int>.

Ответы>>708414

05 Апр, 12:53 #59 #708379

>>708052
>>708348
Видимо подразумевается недостаточная точность 4-х байтного флоата

Ответы>>708606

05 Апр, 13:20 #60 #708395

>>708038
У меня вопрос - как оно не выругалось на "7, 481"? На всякий случай скажу что число с плавающей точкой вводится как "7.481". А оно у тебя делит на 7.

Ответы>>708406>>708475

05 Апр, 13:29 #61 #708406

>>708395
https://msdn.microsoft.com/uk-ua/library/zs06xbxh.aspx - а, ну да, всё правильно.

Ответы>>708407

05 Апр, 13:30 #62 #708407

>>708406
В смысле правильно что не выругалось. Есть такая операция, но тебе она сейчас не нужна.

05 Апр, 13:42 #63 #708414

>>708372
Вектор требует копируемость и присваиваемость элементов.
Зачем тебе вектор констант? Почему не констатный вектор? Ну или array попробуй, там, вроде бы, можно константы

05 Апр, 13:52 #64 #708423

Сап, аноны. Нид хелп. Кто может переписать программу с этого непонятного языка (маткад вроде) на плюсы?

Нихуя в маткадах не понимаю, код там дан полностью, нужно лишь переписать под си, буду благодарен

http://study.sfu-kras.ru/DATA/docs/ProgramTheory/recurs/hp_eiler.htm

Ответы>>708502>>708655>>712690

05 Апр, 15:06 #65 #708475

>>708395
Спасибо, чет упустил

05 Апр, 15:41 #66 #708502

>>708423
Это типа ответ? Хули такой мелкий?

Ответы>>708504

634 Кб, 1080x1525

05 Апр, 15:41 #67 #708504

>>708502
Пик забыл.

05 Апр, 15:47 #68 #708508

>>708038
А setlocale(LC_ALL, "Russian") ты тоже у Лафоре нашёл?

Ответы>>708851

05 Апр, 16:05 #69 #708528

Кстати, давно хотел узнать у местных - кто как относится к ПЕРЕперегруженным оператором вроде << у cout и всяких стримов, которые превращают код в растянутое дерьмище.

Мимо юзающий printf и перегружающий только арифметические операторы.

Ответы>>708536>>708555

18 Кб, 2936x104

05 Апр, 16:12 #70 #708529

Вбрасываем запоминающиеся цитаты из книг.

Ответы>>708552>>708608>>711484

05 Апр, 16:19 #71 #708536

>>708528
>printf
Ты че там делаешь, ты че ебанутый?

Ответы>>708542

05 Апр, 16:27 #72 #708542

>>708536
Ох блядь. Если бы я увидел у себя в коде cout << hui << zalupa или stringstream piska; piska << "kek " << goabaw; - убил бы нахуй вместе с мамашей и обоссал бы обоих, скинув позже с балкона, ровно как и людей с ООП головного мозга делающих геттеры и сеттеры НА КАЖДЫЙ СУКА выпук, даже когда поле полностью редактируется извне и не модерируется классом.

05 Апр, 16:38 #73 #708552

>>708529
Люто бешено проиграл!

05 Апр, 16:40 #74 #708555

>>708528
Твой printf - говно, в него не выведешь содержимое любого класса.

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

Ответы>>708566>>708601

05 Апр, 16:48 #75 #708566

>>708555
Только в cout это тоже не вывести, если не запилить заранее этот функционал.

Ответы>>708568>>708575

05 Апр, 16:49 #76 #708568

>>708566
В cout нет, а в qDebug - как два пальца обоссать.

Ответы>>708577

05 Апр, 16:58 #77 #708575

>>708566
Просто крестоебы слишком тупые и не смогли запилить принтф как в джяве.

Ответы>>708577

05 Апр, 17:00 #78 #708577

>>708568
В кудебаге то же самое (разве что кутейные типы нормально форматируются на выводе).
>>708575
Да тебе и в крестах никто не мешает на каждый выпук прописывать функцию toString в классе.

Ответы>>708588

05 Апр, 17:15 #79 #708587

Нахуя нужно RPC, когда можно сделать обычное API?

05 Апр, 17:15 #80 #708588

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

05 Апр, 17:38 #81 #708601

>>708555
Иди ебись с мютексами при выводе через cout в несколько потоков

05 Апр, 17:41 #82 #708606

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

Ответы>>708611

05 Апр, 17:42 #83 #708608

>>708529
В какой это книге?

Ответы>>708625

05 Апр, 17:44 #84 #708611

>>708606
>тормознутость и ненужность float
Схуяли он тормознее?
>Вычисления-то все равно на даблах проводятся
Если ты их делаешь на х87, а не на SSE с флоатами.

Ответы>>708632

05 Апр, 18:05 #85 #708625

>>708608
Прата, в шапке есть

05 Апр, 18:11 #86 #708632

>>708611
Ну так у него не SSE было, а просто объявлена единственная float. Моветон-с.

Ответы>>708651

05 Апр, 18:40 #87 #708651

>>708632
А потом ты такой делаешь objdump и видишь, что операции даже с единственным floating point компилятор делает с помощью SSE, а не на FPU.

Ответы>>708805

05 Апр, 18:46 #88 #708655

>>708423
бамп

Ответы>>708657

05 Апр, 18:48 #89 #708656

>>708348
Да все норм, просто если бы у Лафоре был дабл а ты решил вписать флоат то это не сильно идея. Хотя флоаты конечно не стоит использовать, если нет каких-то особых причин.

05 Апр, 18:50 #90 #708657

>>708655
Все тоже самое, только вместо стрелочки =. И в последней строке ретурн, даже если он там не указан.

Ответы>>708670

3 Кб, 585x162

05 Апр, 18:59 #91 #708670

>>708657
где otv нихуя не понятно же.

Ответы>>708677

05 Апр, 19:06 #92 #708677

>>708670
Верхний это рекурсивный вызов функции Eul, средний вызов функции augement, последний - return otv.

05 Апр, 20:24 #93 #708747

У меня вопрос - я верно понимаю что плюсы в последнее время сдают позиции?

Ответы>>708751>>708758

05 Апр, 20:25 #94 #708748

Сука блять, хули в QtCreator дебагер такой уебишьный? Мне что, писать в QtCreator дебажить в MVS ?

Ответы>>708752>>708769

05 Апр, 20:27 #95 #708751

>>708747
Смотря в какой области.

Ответы>>708759

05 Апр, 20:27 #96 #708752

>>708748
пиши тоже в MVS

Ответы>>708762

05 Апр, 20:33 #97 #708758

>>708747
Они на плаву только из-за легаси, причём не только в виде кода.

Ответы>>708759

05 Апр, 20:37 #98 #708759

>>708758
А в виде чего ещё?
>>708751
А можешь по областям расписать?

Ответы>>708784

05 Апр, 20:38 #99 #708762

>>708752
Но QtCreator удобней!

05 Апр, 20:44 #100 #708769

>>708748
Чем хуевый?
Я пока заметил минус, что он не показывает элементы динамически созданных массивов.

Ответы>>708787

05 Апр, 20:59 #101 #708784

>>708759
Плюсы ориентированы на производительность. Игры, бекенды, ембедед. Было есть и будет. Вопрос скорее к популярности этих областей.
мордокнига на плюсах, азаза

Ответы>>708786>>708807

05 Апр, 21:02 #102 #708786

>>708784
Я тут недавно на хх нашел ребят у них и фронтенд на крестах.

Ответы>>708794>>708807

05 Апр, 21:03 #103 #708787

>>708769
>>708769
Показывает ебическое нагромождение типов при шаблонах, и нужно развернуть 100500 вложений, перед тем как добраться до значения, не показывает значение переменных вне зоны видимости. Где вотч?

Ответы>>708788

05 Апр, 21:03 #104 #708788

>>708787
Там же gdb, не? Должен уметь

05 Апр, 21:06 #105 #708794

>>708786
Десктоп или веб?
У нас на девайсах пока что связка ядра на плюсах и гуи на яве/обжц/свтфт. Но уже глядят и пробуют Qt

Ответы>>708811

05 Апр, 21:20 #106 #708805

>>708651
Где пруфы, Билли?

Ответы>>708810

05 Апр, 21:21 #107 #708807

>>708786
>>708784
Тащемта, и макаба на крестах.
мимоинсайдер

Ответы>>708809

05 Апр, 21:23 #108 #708809

>>708807
Olopepe к успеху пришел?

05 Апр, 21:25 #109 #708810

>>708805
http://pastebin.com/FsgYEdcR
http://pastebin.com/ezrVhDer

05 Апр, 21:26 #110 #708811

>>708794
hh.ru/vacancy/14737881

05 Апр, 22:18 #111 #708851

>>708508
Нет, в гуголе, а что?

Ответы>>709295

05 Апр, 22:21 #112 #708854

Как заставить скомпиленую в студии софтинку не требовать всякие mscvp100500.dll?

Ответы>>708875>>708899

05 Апр, 22:35 #113 #708875

>>708854
Зафигачить релиз версию?

Ответы>>708899

05 Апр, 22:58 #114 #708899

>>708854
>>708875
Нет, не так просто. Надо в настройках компиляции проекта изменить MD (для релизной версии) и MDd (для дебаг-версии) соответственно на MT и MTd.

Ответы>>708907>>711901

05 Апр, 23:05 #115 #708907

>>708899
Вот это помогло, спасибо.

15 Кб, 196x266

06 Апр, 09:27 #116 #709117

Только начал изучать кресты, сильно не бить.
Не могу понять на данном примере, вот если книжек 10-20 это терпимо.
А если их 100500? Создавать 100500 переменных? А если изначально не знаю сколько будет книжек? Как тогда быть?

Ответы>>709120>>709142>>709175

06 Апр, 09:34 #117 #709120

>>709117
Надо создать массив этого типа

Ответы>>709123>>709133

06 Апр, 09:38 #118 #709123

>>709120
Book book[100]; так?

Ответы>>709130>>709203

06 Апр, 09:48 #119 #709130

>>709123
да

Ответы>>709131>>709133

06 Апр, 09:50 #120 #709131

>>709130
а потом через цикл for заполняешь

Ответы>>709133

06 Апр, 09:55 #121 #709133

>>709120
>>709130
>>709131
спасибо, я понял

06 Апр, 10:14 #122 #709142

>>709117
Создаешь вектор, динамически его заполняешь, в векторе хранишь указатели на книги, если книг очень много - используешь пул.

06 Апр, 11:26 #123 #709175

>>709117
cost не должна быть float - деньги все равно целочисленные, как ни крути

Ответы>>709185

06 Апр, 11:41 #124 #709185

>>709175
Более того - она еще и неотрицательная.

06 Апр, 12:05 #125 #709203

>>709123
Нет, используй std::array.

Ответы>>709207

06 Апр, 12:06 #126 #709207

>>709203
Но нахуя?

06 Апр, 14:17 #127 #709295

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

Ответы>>709608>>709640>>709665

06 Апр, 14:27 #128 #709300

Мне пару тредов назад посоветовали написать змейку, я наконец до нее добрался. http://pastebin.com/xgXFAx84 если у кого-то есть немного времени и желания покритикуйте, а то я, поди, лютого говна понаписал и даже не в курсе.

Ответы>>709339>>709385>>709439>>709525>>713779

06 Апр, 15:36 #129 #709339

>>709300
Начнем с того, что ебаный шакал - скрипт сборки кто за тебя писать будет?
Держи http://pastebin.com/uj7jXJFf

Во вторых - символ в терминале не квадратный, а узкий-высокий, что вытекает в пиздец высокую скорость по вертикали.

Ответы>>709357>>709528

06 Апр, 16:06 #130 #709357

>>709339
Какой еще скрипт? Накой он мне? Я ж просто код просил покритиковать. Про вертикальную скорость я знаю, но пока решил так оставить.

Ответы>>709381

06 Апр, 16:28 #131 #709381

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

06 Апр, 16:30 #132 #709385

>>709300
1. direction надо через енум сделать. какие нахуй 0, 1, 2, 3?
2. placeFood: зачем юзаешь сяшный ранд, а, нигодяй? юзай плюсовый генератор
2.1 зачем делаешь for (auto x : snake)? ты же по значению x передаёшь, передавай по ссылке auto& x
3. .h это сяшные хэдэры. в плюсах они .hpp или .hxx
4. Game() ctor: чему не через лист инициализации заделан?
5. и зачем в мэйне создаёшь объект Game на хипе? у тебя джава головонога моска?
делай Game game{}; и обращайся к методам через точку. и тогда delete gm не нужен

Ответы>>709389>>709416>>709435

06 Апр, 16:33 #133 #709389

>>709385
> 3. .h это сяшные хэдэры. в плюсах они .hpp или .hxx
Не пизди, hpp или hxx это что-то виндовое и нераспространенное.
Везде и всюду .h В крестах

Ответы>>709392>>709448

06 Апр, 16:35 #134 #709392

>>709389
Хотя, в opencv таки hpp.

Но в Qt везде .h.

Ответы>>709402

06 Апр, 16:43 #135 #709402

>>709392
Дело вкуса. Можно сделать хоть .hui

Ответы>>709404

06 Апр, 16:48 #136 #709404

>>709402
Об том и речь. Нехуй доебываться.

06 Апр, 17:01 #137 #709416

>>709385
4 не понял. Где почитать как надо делать?

Ответы>>709420>>709448

06 Апр, 17:04 #138 #709420

>>709416

Забей, тебе просто ябут мозги насчет С++11.

06 Апр, 17:13 #139 #709435

>>709385
>Игра про змейку
>Нет класса змейки
Дальше не читал

06 Апр, 17:15 #140 #709439

>>709300
list поменяй на вектор. list не cache friendly. И с вектором в памяти норм одним куском будет, а не как со списком.

Ответы>>709470

06 Апр, 17:26 #141 #709448

>>709416
>>709416
http://en.cppreference.com/w/cpp/language/initializer_list
на рашкованском понятие может по другому называться.
У тебя Game() { peremenaya1 = huita; peremenaya2 = drugayaHuita; }
что лучше сделать Game() : peremenaya1{ huita }, peremenaya2{ drugayaHuita } {}

>>709389
приличные люди .h для сяшных либ используют. http://stackoverflow.com/questions/152555/h-or-hpp-for-your-class-definitions хотя каждый обмазывается тем, чем хочет

Ответы>>709451

06 Апр, 17:29 #142 #709451

>>709448
Ящитаю, что Qt - вполне приличные люди, и придерживаюсь их кодестайла.

Ответы>>709455

06 Апр, 17:32 #143 #709455

>>709451
> Qt - вполне приличные люди
> boost идеален
> "единый" синтаксис инициализации через {} не сломан
начальник
НАЧАЛЬНИК
он обосрался

Ответы>>709458>>709459

06 Апр, 17:34 #144 #709458

>>709455
> "единый" синтаксис инициализации через {} не сломан
Че?

>boost идеален
Чебля? Эта наркоманская хуита, которую читать невозможно, в которой ошибки на километры туалетной бумаги из шаблонного говна - это идеален?

Да вы ебанутые.

Ответы>>709460

18 Кб, 300x210

06 Апр, 17:35 #145 #709459

>>709455
а по тебе видно, что ты пограмист, да

Ответы>>709460>>709475

06 Апр, 17:36 #146 #709460

>>709458
>>709459

06 Апр, 17:38 #147 #709470

>>709439
С вектором сложнее будет же. У спика в начало впихнул, с конца выпихнул и доволен, а вектор весь переебывать придется, не?

Ответы>>709569>>709585

06 Апр, 17:42 #148 #709475

>>709459
А по тебе видно, что ты мозахист. Без шуток.

06 Апр, 18:08 #149 #709500

Помогите. Как эту хуйню закрыть теперь?
Теперь не могу стрелочками перемещаться по строкам вверх-вниз, а это окошко листает какие-то варианты.

И ещё, где решения скачать для упражнений?
И какого хуя уже во 2й главе задания не соответствуют тому, чему обучался?

Ответы>>709506>>709507>>709518

65 Кб, 1059x530

06 Апр, 18:12 #150 #709506

>>709500
Ой, забыл

Ответы>>709507

06 Апр, 18:15 #151 #709507

>>709500
>>709506
Esc нажми, ну ёбанарот

Ответы>>709512

06 Апр, 18:22 #152 #709512

>>709507

Дак нажимал же, не пропадала чому-то.
Сейчас вроде норм всё.

06 Апр, 18:27 #153 #709518

>>709500
Блять, и в этом треде еще предъяву кидают, что мол в ди-тред никто не заходит, а тут всегда аншлаг?

Да потому что там таких даунов нет.

8 Кб, 184x184

06 Апр, 18:54 #154 #709525

>>709300
> curses.h

06 Апр, 18:59 #155 #709528

>>709339
>- скрипт сборки кто за тебя писать будет?
pkg-config --cflags ncurses
pkg-config --libc ncurses

Ответы>>709544>>713781

06 Апр, 19:49 #156 #709544

>>709528
*libs

06 Апр, 20:29 #157 #709569

>>709470
http://en.cppreference.com/w/cpp/container/vector/reserve

Ответы>>709583

06 Апр, 20:33 #158 #709574

Объясните что значит указатель на какой-то тип, например [code]int * ptr[/code] это указатель на int?

Ответы>>709577

06 Апр, 20:34 #159 #709577

>>709574
Эээ, да?

Ответы>>709629

06 Апр, 20:36 #160 #709578

Говноеды, поясните по-хардкору, почему СТЛ критикуют за то, что нельзя от контейнеров унаследоваться, мол деструкторы невиртуальные?

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

Ответы>>709645>>709654>>709705

06 Апр, 20:41 #161 #709583

>>709569
> наследоваться от контейнера
совсем дебил?

06 Апр, 20:44 #162 #709585

>>709470
для списка можно написать аллокатор, который будет намного дружественнее к кешу, чем однокусочный вектор, в СТЛ есть чтобы делать аллокаторы, можно даже на шаред поентерах

Ответы>>709587

06 Апр, 20:48 #163 #709587

>>709585
>написал сраную змейку
>начали пиздеть про кэш и аллокаторы
Пиздец. А автогеном гланды из задницы вырезать не пробовали?

Ответы>>709590

06 Апр, 20:51 #164 #709590

>>709587
> гланды в заднице
ты точно щеловекх?

Ответы>>709592

06 Апр, 20:55 #165 #709592

>>709590
>через задницу
Ты же понял все, зачем петросянишь?

06 Апр, 21:10 #166 #709608

>>709295
Только что дошел, и тоже хрен знает, как его выводить.

Ты-то как сделал, подробнее если?

Ответы>>709615>>709640

06 Апр, 21:17 #167 #709615

>>709608
Букву p поставьте и не ебите мозг.

Ответы>>709623

06 Апр, 21:22 #168 #709623

>>709615
Да походу так и сделаю.
Без пердолинга его не вывести, а Лафоре не объяснил, как это сделать, пидор старый

06 Апр, 21:30 #169 #709629

>>709577
как понять "указатель на int"?

Ответы>>709637

06 Апр, 21:44 #170 #709637

>>709629
Указатель - переменная, которая хранит адрес другой переменной.
Указатель на int - переменная, которая хранит адрес другой переменной типа int.

Ответы>>709643

2 Кб, 247x36

06 Апр, 21:47 #171 #709640

>>709295
>Если дошёл уже до упражнения, где надо выводить значок фунтов, то расскажи как сделал, а то я каждый раз переключал локаль, а позднее вообще убирал русские символы из листингов.
>>709608
>Только что дошел, и тоже хрен знает, как его выводить.
>Ты-то как сделал, подробнее если?

Спермопроблемы-спермопроблемушки

06 Апр, 21:52 #172 #709643

>>709637
>Указатель на int - переменная, которая хранит адрес другой переменной типа int.
Если у меня например [code] int *ptr [/code] то какой тут >адрес другой переменной типа int?

Ответы>>709646>>709647

06 Апр, 21:54 #173 #709645

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

Ответы>>709649>>709781

06 Апр, 21:54 #174 #709646

>>709643
Ты не инициализировал указатель.

06 Апр, 21:54 #175 #709647

>>709643
Ты сам должен это указать
int a = 10;
int* ptr = &a; // ptr указывает на a

Ответы>>709650

06 Апр, 21:56 #176 #709649

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

Ответы>>709653

06 Апр, 21:57 #177 #709650

>>709647
А если сделать int a = (int)(&a); ?

Ответы>>709651

06 Апр, 21:58 #178 #709651

>>709650
Очевидная ошибка компиляции, в (int)(&a) a еще не определено.

Ответы>>709656

06 Апр, 21:58 #179 #709652

Есть ли смысл читать SICP если учишь кресты?

Ответы>>709655

06 Апр, 21:59 #180 #709653

>>709649
Странный ты какой-то. Это же не rocket science, а сраные основы проектирования, их все знают, кроме совсем необучаемых и ньюфагов.

Ответы>>709658

06 Апр, 21:59 #181 #709654

>>709578
Если деструктор не виртуальный и ты наследуешь от класа няша, свой класс тульпа, и работаешь с тульпой через указатель на няшу, то деструктор будет вызываться няшный. Соответственно няшный кусок тульпы удалиться, а все потомковские данные тульпы будут где-то висеть. Строго говоря, тульпа и не разрушена и не существует.

Ответы>>709686

06 Апр, 22:00 #182 #709655

>>709652
Если хочешь выучить матан, то да.

Ответы>>709663

06 Апр, 22:01 #183 #709656

>>709651
>ошибка компиляции
Смеялись всем комитетом. http://ideone.com/1QqLL2

Ответы>>709659

06 Апр, 22:02 #184 #709658

>>709653
Речь о том, что они тут не к месту.
Можно эдак и на паскале процедурном писать и кукарекать, что вокруг просто все дауны и не понимают в паттерны.

06 Апр, 22:03 #185 #709659

>>709656
Блять, но как?
И что там будет? Разве это не выстрел себе в ногу?

Ответы>>709664

06 Апр, 22:03 #186 #709663

>>709655
> SICP
> матан
У даунов "матаном" называется всё, что они не поняли?

06 Апр, 22:04 #187 #709664

>>709659
Это UB, так как адрес не обязан влезать в int. На 64 битах он, в общем случае, и не влезает.

Ответы>>709666>>709670

06 Апр, 22:04 #188 #709665

>>709295
Фух, решил.
Оцените код.

Ответы>>709667

06 Апр, 22:05 #189 #709666

>>709664
>test.cpp: In function ‘int main()’:
>test.cpp:5:18: error: cast from ‘int*’ to ‘int’ loses precision [-fpermissive]
> int a = (int)(&a);

Ответы>>709668

391 Кб, 1236x871

06 Апр, 22:06 #190 #709667

>>709665
Бля

Ответы>>709690>>709860

06 Апр, 22:06 #191 #709668

>>709666
Ну да.

06 Апр, 22:11 #192 #709670

>>709664
Это да, но такие ошибки из другой оперы же. Если, скажем, сделать
[code lang="cpp"]void a = (void)(&a);[/code]
, то все будет заебца, ибо внутри инициализирующего выражения уже работает декларация самого имени.

Ответы>>709673

06 Апр, 22:14 #193 #709673

>>709670
> то все будет заебца, ибо внутри инициализирующего выражения уже работает декларация самого имени.
Охуеть блять, и чо, можно написать int a = a?

Ответы>>709774>>712747

06 Апр, 22:30 #194 #709686

>>709654
То, что ты говоришь - это понятно.
Вопрос в том - нахуя работать с тульпой через указатель на няшу, если у няши вообще ни одного виртуального метода нет?

Например, вот внезапно захотелось сделать вектор::пуш_бэк_эррей( массив& ), хуй с ним отнаследовались, добавили метод май_мега_вектор::пуш_бэк_эррей. Нахуя нам вообще указатель на стд::вектор, если в нём нет нового метода?

06 Апр, 22:31 #195 #709690

>>709667
Что это за среда разработки?

Ответы>>709692

06 Апр, 22:32 #196 #709692

>>709690
Visual Studio же.

Ответы>>709695

06 Апр, 22:34 #197 #709695

>>709692
Благодарочка от ньюфага

06 Апр, 22:55 #198 #709705

>>709578
>Говноеды, поясните по-хардкору, почему СТЛ критикуют за то, что нельзя от контейнеров унаследоваться, мол деструкторы невиртуальные?
Идиоты какие-то критикуют. Наследование он контейнеров не нужно.

Ответы>>709711

06 Апр, 22:59 #199 #709711

>>709705
Что не мешает СТЛ быть говном.

Ответы>>709776

07 Апр, 00:47 #200 #709774

>>709673
Я точно не уверен насчет того, будет ли это ошибкой/UB, но как минимум unspecified будет точно. А в случае с инициализацией адресом все абсолютно точно норм, адрес известен уже на этапе линковки.

Ответы>>709780

07 Апр, 00:47 #201 #709776

>>709711
Не пизди. Довольно годная вещь. Единственная ее проблема - это многословность.

Ответы>>709779

07 Апр, 00:52 #202 #709779

>>709776
Го-в-но.

Годная вещь - это Qt или phobos, последний вообще мечта.

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

Ответы>>709783

07 Апр, 00:53 #203 #709780

>>709774
Таки компилится, без единого варнинга.

За сишку и двор втреляю в ногу в упор, епта.

Ответы>>709782>>709784

07 Апр, 00:54 #204 #709781

>>709645
Выводы у тебя не верные. Используя какой-нибудь адаптер, ты все равно логически расширяешь библиотечный класс. Тут суть в методах: хочешь ли ты делать это в рантайме и таскать RTTI со всеми объектами или ты хочешь хуячить максимально оптимизированный код. Тащемта рефлексия в C++ тоже будет.

Ответы>>710365

07 Апр, 00:54 #205 #709782

>>709780
Не может быть без варнинга. Это access к неинициализированной переменной.

Ответы>>709784>>709785

07 Апр, 00:55 #206 #709783

>>709779
Это ты тот даун, что вечно за Qt топит?

Ответы>>709787

07 Апр, 00:56 #207 #709784

>>709780
>Таки компилится, без единого варнинга.
>>709782
>Не может быть без варнинга.

Ну вот, я же говорил:
prog.cc: In function 'int main()':
prog.cc:1:22: warning: 'a' is used uninitialized in this function [-Wuninitialized]
int main() { int a = a; }

Ответы>>709786

42 Кб, 856x501

07 Апр, 00:56 #208 #709785

>>709782
> Не может быть без варнинга.

Ответы>>709786

07 Апр, 00:58 #209 #709786

>>709784
>>709785

Ответы>>709789

07 Апр, 00:59 #210 #709787

>>709783
Это ты тот даун, который любит ковыряться в говне, лишь крошечная часть которого в консоли ошибок будет выглядеть навроде 1> A=std::allocator<std::pair<const boost::interprocess::ipcdetail::sync_id const ,boost::unordered::iterator_detail::iterator<boost::unordered::detail::ptr_node<std::pair<const boost::interprocess::ipcdetail::sync_id,void >>>>>
?

Ответы>>709791

07 Апр, 01:00 #211 #709789

>>709786
Энивей - у меня компилит без варнинга, сам видишь.
Алсо - в результате 0, вроде компилер не должен инициализировать переменные, но видать на практике таки инициализирует?

Ответы>>709790>>710368

07 Апр, 01:02 #212 #709790

>>709789
> у меня компилит без варнинга
Потому что ты не включил их.
>>709789
>Алсо - в результате 0, вроде компилер не должен инициализировать переменные, но видать на практике таки инициализирует?
Не инициализирует.

07 Апр, 01:06 #213 #709791

>>709787
Насколько я помню, в прошлый раз ты сполна напился моей живительной урины. Почитай предыдущее обсуждение. Сейчас мне даже комментить лень.

Ответы>>709792>>709793

07 Апр, 01:06 #214 #709792

>>709791
> Владей собой среди макак глумливых,

07 Апр, 01:09 #215 #709793

>>709791
У вас segmentation fault, бери вилку и чисти говно.

07 Апр, 06:23 #216 #709860

>>709667
Код - говно, даже правильность ввода не проверяешь

Ответы>>710012

157 Кб, 312x272

07 Апр, 06:28 #217 #709862

07 Апр, 12:07 #218 #710012

>>709860
Нахрена ее проверять? Просто вводи правильно.

07 Апр, 17:29 #219 #710245

Нихуя не понимаю в этом QML.
Вот есть у меня два окна, получаем main.qml + main.qml.ui и foo.qml + foo.qml.ui
Как мне из main.qml вызвать окно, описанное в foo.qml.ui ? Обращаюсь по айди, пишет undefined reference. Использую loader, так оно просто встраивает окно в main.qml, а не создаёт отдельно.

Ответы>>710398

07 Апр, 19:52 #220 #710365

>>709781
Рефлексии не будет. Никогда. Будут только опциональные костыли, напижженные из полустандартных библиотек, ядро в этом плане никак не изменят. Можете скринить.

07 Апр, 19:53 #221 #710368

>>709789
Он имеет право инициализировать, но не обязан. Unspecified behaviour же.

07 Апр, 20:21 #222 #710398

>>710245
Тебе нужно два окна чтоле?

Ответы>>710407

07 Апр, 20:28 #223 #710407

>>710398
Да, одно окно поверх другого, но не диалог а именно окно.

Ответы>>710415

07 Апр, 20:35 #224 #710415

>>710407
А диалог разве не окно, лол?

Хорошо, ща проверю и скину.

Ответы>>710438>>710476

07 Апр, 20:51 #225 #710438

>>710415

import QtQuick 2.5
import QtQuick.Window 2.2

Window {
width: 800
height: 600
visible: true
title: 'window1'

Window {
title: 'window2'
width: 100
height: 100
visible: true
}
}

Ответы>>710442>>710476

07 Апр, 20:53 #226 #710442

>>710438
Алсо странно, раньше окном становился любой корневой Item - Rectangle, да что угодно. А сейчас у меня получилось что-то увидеть только с корневым Window. В последних версиях Qt чего-то ужесточили?

07 Апр, 21:33 #227 #710476

>>710415
Ну диалог вроде не от окна наследуется
>>710438
Да, это работает, но как сделать то же самое, при условии что в одном файле нужно создать экземпляр окна, объявленного в другом файле?

Ответы>>710502

07 Апр, 21:51 #228 #710502

>>710476
> Да, это работает, но как сделать то же самое, при условии что в одном файле нужно создать экземпляр окна, объявленного в другом файле?
Ну ты свой "экземпляр в другом файле" от Window унаследуй главное, а из какого он там файла - какая разница?

Ответы>>710717

08 Апр, 05:34 #229 #710717

>>710502
Накидал на пастбин, так проще будет:
http://pastebin.com/URte161x

Ответы>>710868

08 Апр, 08:01 #230 #710760

Нужно сделать кнопку неактивной, если набираю текст в TextEdit. В редакторе слотов отправителя делаю TextEdit, сигнал TextChange, принимает кнопка, а слота disable() нету, как это сделать в редакторе слотов? А не из программы с помощью connect.

08 Апр, 10:16 #231 #710833

Накидайте годных мануалов по cmake с примерами. А то из их документации нихуя не понятно что как использовать, проходится по гитхабу искать.

Ответы>>711050

50 Кб, 491x429

08 Апр, 10:45 #232 #710855

Анон-программист оцени мой алгоритм, я правильно думаю?

Имеется 22 lvl, студент 4 курс до конца обучения еще 1 год специалист, устроен в одну контору где программирую, но нормальная работа начнется только в июлю, а сейчас просто хожу раз-два в неделю сижу за пекой и делаю тоже самое, что и дома разрабатываю графический интерфейс на Qt для баз данных.

Что хочу: стать первоклассным специалистом по C++. И вот возник вопрос как лучше этого достичь?
1. Читать книги, одновременно программировать проги?
2. Не читать книги, а постигать тонкости языка через разбор чужого кода?
3. Прочитать Струструппа, а потом двигаться по варианту 2?

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

Ответы>>711053>>711449

08 Апр, 11:18 #233 #710868

>>710717
Ты хочешь по нажатию кнопки открыть еще одно окно, причем из другого qml файла, верно?

Ответы>>711112

08 Апр, 15:02 #234 #711050

>>710833
Martin, Hoffman - Mastering CMake

Ответы>>711101

08 Апр, 15:05 #235 #711053

>>710855
Книгу Майерса "Effective modern c++" однозначно нужно прочитать, а остальное смотреть по мере необходимости.

Ответы>>711208

08 Апр, 15:57 #236 #711101

>>711050
>Mastering CMake
Я хуею. "Мастеринг системы сборки". Не говорит ли это о том, что инструмент переосложнен? Так же как и гит. Охуели совсем по книге на каждую ссаку выпускать. Скоро будет "мастеринг линакс консол".

Ответы>>711104>>711113>>712682

08 Апр, 15:59 #237 #711104

>>711101
>Скоро будет "мастеринг линакс консол"
Ну привет, манька. Консоль - это просто интерфейс к системе, такая книга есть и дает знание всего линукса в деталях.

08 Апр, 16:04 #238 #711112

>>710868
Да, так и есть.

Ответы>>711137>>711141

08 Апр, 16:04 #239 #711113

>>711101
>Так же как и гит
Алсо книга довольно простая и разделы о интерфейсе пользователя занимают страниц 15. Вся остальная книга описывает внутренности гита и всякие фишечки про продвинутой настройке.

08 Апр, 16:25 #240 #711137

>>711112
http://pastebin.com/U0zvsxBK

Ответы>>711220

08 Апр, 16:26 #241 #711141

>>711112
Спрашивай если че. Я 2 года писал на qml.

Ответы>>711220

150 Кб, 500x713

08 Апр, 17:30 #242 #711208

>>711053
Спасибо.

08 Апр, 17:52 #243 #711220

>>711137
>>711141
Да, сработало, благодарю.
Удобная вещь этот QML в теории, но, чувствую, я ещё поебусь с ним.

Ответы>>711221

08 Апр, 17:54 #244 #711221

>>711220
Когда пришлось писать на виджетах после QML - я проклял все.

QML уменьшает количество кода и ебли раз в 10, без преувеличения.

Ответы>>711235

08 Апр, 18:14 #245 #711235

>>711221
Ещё вопрос подъехал:
Хочу чтобы окно при закрытии не уничтожалось, а просто становилось невидимым. Типа:
onClose{
visible = false
}
Как в этом случае сказать системе, чтобы она проигнорировала onClose, после того как я его обработал?

Ответы>>711238>>711244

08 Апр, 18:17 #246 #711238

>>711235
Лично у меня из QML onClose никогда не работал, я всегда в крестах класс, унаследованный от QQuickWindow там событие отлавливал. Для другой цели, правда - чтобы выдать что-то вроде диалога "вы действительно хотите выйти".

Ответы>>711243

08 Апр, 18:21 #247 #711243

>>711238
Хотя, таки работает... Просто нужно модуль версии 2.2 грузить.

Ок, ща попробую.

08 Апр, 18:23 #248 #711244

>>711235
Собсно, так:

onClosing: {
close.accepted = false
visible = false
}

Ответы>>711250

sage 08 Апр, 18:30 #249 #711249

Валите нахуй со своим QML из крестотреда.

Ответы>>711251

08 Апр, 18:30 #250 #711250

>>711244
О как, неплохо. И хорошо что можно через лоадер обращаться напрямую к членам компонента, а то я уж думал сигнал придётся пилить.

Ответы>>711252

08 Апр, 18:31 #251 #711251

>>711249
Ты даун. А QML работает из крестов, целый модуль Quick называется.

И двигло жабаскриптовое это крестовый QQmlEngine

Ответы>>711300

08 Апр, 18:33 #252 #711252

>>711250
Ну тык, qml это одна из лучших вещей которые были созданы за последнее время. Жалко конечно, что Qt сделаны на базе крестов. Думаю, за 5-10 лет они непременно с них спрыгнут.

Ответы>>711266

08 Апр, 18:45 #253 #711266

>>711252
И куда же они спрыгнут?

Ответы>>711268

08 Апр, 18:48 #254 #711268

>>711266
Да хоть на ту же дишку. Многие вещи тогда из Qt можно будет выкинуть нахер, вроде строк, контейнеров, сети, QVariant, xml - кучу всего.

И тащить можно будет гораздо меньше модулей.

Ответы>>711269

08 Апр, 18:49 #255 #711269

>>711268
Плюс нахрен не нужен будет moc, свой QObject, сигналы и слоты...

08 Апр, 19:42 #256 #711300

>>711251
Прикинь, браузерные движки жса тоже в основном на плюсах все написаны. И виртуалка явы, ровно как и дотнета. Но они здесь не обсуждаются.

Ответы>>711301

08 Апр, 19:44 #257 #711301

>>711300
Зато здесь обсуждаются лабы и "как закрыть эту хуйню в VS"

Ответы>>711302

08 Апр, 19:46 #258 #711302

>>711301
>как закрыть эту хуйню в VS
Нажми Yes

Ответы>>712096

08 Апр, 19:59 #259 #711313

Есть тут кто юзает вижуал? Сделал простенькую программу для личного пользования, но не пойму как сделать релиз билд. Написано что: ...
Всё понял, спасибо.

Ответы>>711574

08 Апр, 22:37 #260 #711404

Все ушли нахуй?

Ответы>>711410>>711413

08 Апр, 22:43 #261 #711410

>>711404
Ты что то хотел?

08 Апр, 22:44 #262 #711413

>>711404
Пошли помогать создавать новый проект в студии нюфагам. Зато 30 перекатов, не то что в ди треде.

08 Апр, 23:34 #263 #711449

>>710855
1. учишься, читая чужой legacy-говнокод
2. становишься первоклассным специалистом по C++
3. ???
4. PROFIT!
плюсы это всего лишь язык. а прикладная область у тебя какая будет, манька?
мимо-мидл-21лвл

Ответы>>711526

09 Апр, 00:35 #264 #711484

>>708529
Кроме того, создание видеоигр и нас самих делает счастливыми. Я не думаю, что написание компилятора может сделать кого-нибудь счастливым человеком. (с) Андре Ламот

09 Апр, 01:22 #265 #711495

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

Ответы>>711519>>711522>>711735

09 Апр, 02:36 #266 #711519

>>711495
Составь список используемых модулей, изучи модули.

Ответы>>711520

09 Апр, 02:38 #267 #711520

>>711519
Это уже в процессе.

09 Апр, 02:53 #268 #711522

>>711495
Можешь дать ссылку на сырцы эмулятора?

366 Кб, 600x486

09 Апр, 03:27 #269 #711526

>>711449
Спасибо за ответ.

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

09 Апр, 09:03 #270 #711574

>>711313
Всё таки есть вопрос: если без установленного вижуала на компе запустить .ехе, скомпилированный с вижуала, компьютер требует вижуальыне библиотеки. А как сделать так, чтобы ростенький С++ код в .ехе запускался без них?

Ответы>>711576>>711901

09 Апр, 09:07 #271 #711576

>>711574
очевидно, что не юзать вцредист зависимые либа, а стандартную СИ библиотеку и нативный винапи

Ответы>>711577

09 Апр, 09:09 #272 #711577

>>711576
Я, вроде бы, не юзаю. Я в этом не мастер, но я подключил только:
#include <iostream>
И там у меня код на 10 строчек.

Ответы>>711581

09 Апр, 09:23 #273 #711581

>>711577
Visual studio > 6 автоматом линкует с новыми версиями Си билиотек, можешь попробовать статическую линковку, но там может быть проблема с динамическими библиотеками которые потом захочется подключить.
Либо юзать 6 вижуал студию она вроде нативный мсвцрт.длл юзает. Или какой-нить простой IDE и MinGW

Ответы>>711582>>711596

09 Апр, 09:24 #274 #711582

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

Ответы>>711585>>714518

09 Апр, 09:33 #275 #711585

>>711582
Если программа простенькая, то проще не морочиться , а просто линкануть статически с VC рантайм библиотекой из твоей студии.

09 Апр, 09:53 #276 #711596

>>711581
> Или какой-нить простой IDE и MinGW
Тогда оно слинкует с libmingw или как его там.

Ответы>>711598

09 Апр, 09:55 #277 #711598

>>711596
mingw по умолчанию msvcrt.dll линкует вроде.

Ответы>>711599

09 Апр, 09:56 #278 #711599

>>711598
Хуй там.

Ответы>>711601

09 Апр, 09:59 #279 #711601

>>711599
MinGW provides a complete Open Source programming tool set which is suitable for the development of native MS-Windows applications, and which do not depend on any 3rd-party C-Runtime DLLs. (It does depend on a number of DLLs provided by Microsoft themselves, as components of the operating system; most notable among these is MSVCRT.DLL, the Microsoft C runtime library. Additionally, threaded applications must ship with a freely distributable thread support DLL, provided as part of MinGW itself).

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

Ответы>>711602

09 Апр, 10:01 #280 #711602

>>711601
Я Qtшные проги компилил, возможно что они всегда мультитред.

Но чужие либы оно однозначно тянет.

Ответы>>711612

26 Кб, 542x341

09 Апр, 10:26 #281 #711612

>>711602
#include <iostream>

int main()
{
std::cout << "Hello, world!\n";
}

Что я делаю не так. Всего две зависимости?

09 Апр, 10:56 #282 #711663

Так так так, что тут у нас. А тут у нас CLion богомерзкий.
Помогайте, посоны. Когда ввожу строку в нем, например:
http://pastebin.com/yREBsUX0
Так вот, ясно видно там, как выстрелила строчка
> background: #
Как сделать, чтобы этот хуев придурок не вытягивал их туда?!

Ответы>>711666

09 Апр, 11:03 #283 #711666

>>711663
куда ты? он юзабельным будет самое раннее года через два.

Ответы>>711671

09 Апр, 11:17 #284 #711671

>>711666
Трипл не пиздит.
Честно говоря, тоже так думаю. Вот все надеялся, что что-то новое выйдет, а за год сильно ничего и не поменялось.
Видать, пока что лучше использовать VS с решарпером.

09 Апр, 11:22 #285 #711673

cpp.sh/6lsgv
Что не так? Не могу понять что за ошибка.

Ответы>>711674>>711675

09 Апр, 11:23 #286 #711674

>>711673
>> int FindMax(Item );
в конце
>> int FindMaxPos(Item );

Ответы>>711678

09 Апр, 11:24 #287 #711675

>>711673
FindMaxPos же

Ответы>>711678

09 Апр, 11:27 #288 #711678

>>711674
>>711675
ругается на nullptr и 31 строку
"i does not name a type"
Насчет nullptr, я так понял что что-то с компилятором и надо что-то там подключить.

Ответы>>711680>>711681

09 Апр, 11:36 #289 #711680

>>711678
http://cpp.sh/82mn

Заменил просто название функции и все заработало.

Ответы>>711684

09 Апр, 11:37 #290 #711681

>>711678
>>Насчет nullptr, я так понял что что-то с компилятором и надо что-то там подключить.

У тебя там auto эио c++11 стандарт, наверно в настройках компиляции старый выбран

Ответы>>711684

09 Апр, 11:44 #291 #711684

>>711680
Спасибо, но че то ошибка в логических операциях. Он должен выводить позицию максимального элемента, но он выводит не то.
>>711681
Как исправить это в dev c++?

09 Апр, 12:36 #292 #711735

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

Ответы>>711939

09 Апр, 12:50 #293 #711740

Народ, я знаю что вопрос тупой, но как ли хранить в переменной символы юникода? Например ♠♥♦♣

Ответы>>711742>>711771>>711829

09 Апр, 12:57 #294 #711742

>>711740
QChar/

09 Апр, 13:14 #295 #711771

>>711740
Хотя в нормальном языке это бы делалось как-то так:
dchar c = '\uFE0E';

Ответы>>711815

09 Апр, 13:48 #296 #711815

>>711771
Спасибо огромное.

Ответы>>711819

09 Апр, 13:51 #297 #711819

>>711815
Зря. В крестах это не работает. Кресты без библиотек не умеют в юникод.

Тебе нужен Qt, его QString и QChar - умеют.

09 Апр, 14:00 #298 #711829

>>711740
> u8
http://en.cppreference.com/w/cpp/language/character_literal
http://en.cppreference.com/w/cpp/language/string_literal

Ответы>>711830

09 Апр, 14:02 #299 #711830

>>711829
>(since C++17)

Ответы>>712647

09 Апр, 14:50 #300 #711887

Пишу курсовик на тему недостатки STL.

Что не нравиться новичкам и профи?

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

Ответы>>711891>>711893>>712358

09 Апр, 14:51 #301 #711891

>>711887
ты получишь неут за такую тему, как хорошо бы ты не старался.

Ответы>>711952

09 Апр, 14:52 #302 #711893

>>711887
Не нравится все, не могли как в phobos зделоть...

А вообще, сравни к примеру операции над QSet и std::set.
STL выглядит как издевательство.

Ответы>>712358

09 Апр, 14:55 #303 #711901

>>711574
Вот же ответ >>708899

615 Кб, 1218x905

09 Апр, 15:33 #304 #711935

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

Ответы>>712115

09 Апр, 15:35 #305 #711939

>>711735
Я уже понял, спасибо.

09 Апр, 15:55 #306 #711952

>>711891
Неуд точно не получу, препод сам недолюбливает STL.

Ответы>>712242

119 Кб, 768x1024

Крестовик 09 Апр, 15:57 #307 #711954

Дорогие мои Креставщяне, не поможете ли мне найти очень простую библиотеку для работы с изображениями. Или хотя бы даже не библиотеку, а просто реализацию подобной задачи: мне из изображения надо изъять информацию о каждом пикселе/точке, например, если бы он был представлен в виде RGB (B,G,R), то результатом библиотечной функции был бы указатель на массив указателей значений цвета этого пикселя/точки.

Например:
.............................................................................................................................
// первый пиксель, который считываем, пусть будет закодирован цветами = 255, 255 , 255
int pixel_count = 1 // сколько пикселей считать

int mas = new int[pixel_count];
for (int i = 0; i < 3; i++) {
mas = new int [pixel_count];
}
mas = some_function_fromIMGlib(fname, pixel_count);

std::cout << mas[0][0] << " | " << mas[0][1] << " | " << mas[0][2] << std::endl;
...............................................................................................................................
Вывод будет:
255 | 255 | 255

Ответы>>711956>>711959>>711960>>711996

09 Апр, 16:00 #308 #711956

>>711954
Указатели макака съела.

09 Апр, 16:03 #309 #711959

>>711954
openCV(cv::Mat), Qt(QPixmap)

Ответы>>711969

09 Апр, 16:05 #310 #711960

>>711954
Поправку сделаю и надеюсь, что он ничего не скушает:
int '//' mas = new int'/*'[pixel_count];
for (int i = 0; i < pixel_count; i++) {
mas = new int [3];
}

Ответы>>711966

09 Апр, 16:11 #311 #711966

>>711960
mas['i'] кушает, да и кушает.

09 Апр, 16:13 #312 #711969

>>711959
А попроще нету библиотек, а то эти слишком увесистые для меня?

Ответы>>711970

09 Апр, 16:14 #313 #711970

>>711969
А тебе они не нужны целиком, тебе только QtCore, ну и какие там модули от openCV нужны.

09 Апр, 16:39 #314 #711996

>>711954
Посмотри Simd либу, на сорсфорже лежит

09 Апр, 18:09 #315 #712096

>>711302
спасибо

09 Апр, 18:45 #316 #712115

>>711935
Отладочные символы для подключаемых dll. Означает, что дебажить программу внутри dll придётся вслепую.

Ответы>>712122

09 Апр, 18:59 #317 #712122

>>712115
Можно подробнее для нуфага?

Ответы>>712132

09 Апр, 19:10 #318 #712132

>>712122
Когда ты собираешь программу с отладочной информацией, компилятор кладёт (в данном случае, в .pdb = program database) имена функций, типы, структуры, имена и расположение переменных и прочую информацию. Называется это все symbolic debugging information или просто символы. Когда отладчик студии стартует, он пытается подгрузить .pdb для всех .dll и .exe, чтобы их можно было отлаживать с комфортом. Для системных .dll (ведь их собирал не ты) можно настроить подгрузку .pdb с сервера Microsoft, но у тебя она либо не настроена возможно, стоит погуглить _NT_SYMBOL_PATH, либо что-то просто пошло не так.

Ответы>>712136>>712156

09 Апр, 19:17 #319 #712136

>>712132
Ему тупо нужно скачать Windows Debugging Tools.

09 Апр, 19:28 #320 #712147

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

Ответы>>712152>>712155

09 Апр, 19:32 #321 #712152

>>712147
> проигрывания музыки из консоли
Эээ, а какая разница откуда музыку проигрывать, лол?

А концолька - это ncurses

Ответы>>712154

09 Апр, 19:33 #322 #712154

>>712152
А как вообще написать программу которая проигрывает музыку?

Ответы>>712158>>712578

09 Апр, 19:33 #323 #712155

>>712147
>проигрывания музыки
irrKlang. Проще ничего не видел.

301 Кб, 1060x313

09 Апр, 19:34 #324 #712156

>>712132

Включил Но пока всё равно ничего не понял. Ладно, буду изучать сегодня по книге.

09 Апр, 19:34 #325 #712157

Поясните за буферизацию данных для вывода, о которой в каждой книге пишут. Что это за ебаный фингербокс? Например, если я пишу cout << "hui", то эти данные не должны выводиться, потому что они в буфере, который еще не заполнен. Однако таких задержек вывода я не видел ни разу.

Ответы>>712162>>712685

09 Апр, 19:36 #326 #712158

>>712154
> А как вообще написать программу которая проигрывает музыку?
Самое простое - QSound::play("C:\muzyaka\Zapahlo Vesnoy.mp3")

Ответы>>712163

09 Апр, 19:42 #327 #712162

>>712157
Сначала выводи много раз маленькие строки в cerr. Потом выводи тоже самое в cout. Сравни время. Длина строки 100 символов, а выводить 100000 раз. Перенаправь вывод в файл, но не в программе. Замерь время и сравни.

09 Апр, 19:42 #328 #712163

>>712158
А без qt? Простую и лёгкую библиотеку хочу.

Ответы>>712164>>712166

09 Апр, 19:44 #329 #712164

>>712163
А тебе не нужен Qt целиком, бака. Только QtCore + QtMultimedia.
Всего 2 модуля, из 30+. Гуй не нужен, все остальное тоже.

Ответы>>712181

09 Апр, 19:46 #330 #712166

>>712163
http://www.ambiera.com/irrklang/
Две строки и музыка играет.

Ответы>>712169>>712172

09 Апр, 19:47 #331 #712169

>>712166
Советовали выше по треду. Спасибо.

09 Апр, 19:49 #332 #712172

>>712166
Забыл спросить. Умеет он из видео музыку выдирать?

Ответы>>712175

09 Апр, 19:50 #333 #712175

>>712172
Нет. Это чисто для звука. Тогда бери qt.

09 Апр, 20:10 #334 #712181

>>712164
Никогда им не пользовался и не хочу учить. Как это делать?

Погуглил. Mpv Вроде ffmpeg использует. Другие консольные плееры так и не понял что используют, но у них есть файл alsa.h. Можно что-то из этого использовать?

09 Апр, 20:24 #335 #712186

Сап, аноны. Не ругайте новичка, но есть одна проблема:

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

всякая хуйня типа ЕСЛИ ВВЕЛИ ЕДИНИЦУ ТО работает вроде заебись, но вводя всякие символы типа !"№;% и тд ошибки не получаю

Ответы>>712202>>712205

09 Апр, 21:09 #336 #712202

>>712186
И местные еще че-то гнали на Ди-тред, мол там никого нет...

09 Апр, 21:12 #337 #712205

>>712186
Ну проверяй поток ввода на ошибки.

09 Апр, 22:29 #338 #712242

>>711952
Тогда безразлично, очевидно же. Вон посмотри на вики статью с критикой C++, там много всего про STL.

09 Апр, 22:45 #339 #712248

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

Простите, если непонятно написал.
Есть класс Triangle и TriangleMesh. В конструкторе Triangle я указываю родитель TriangleMesh и использую некоторые его паблик данные.

Есть конструктор(опускаю остальные аргументы).
[code]
Triangle(TriangleMesh m){
mesh = m;
}
TriangleMesh &mesh;
[/code]

Ошибки:
error: use of deleted function 'TriangleMesh& TriangleMesh::operator=(const TriangleMesh&)'
error: uninitialized reference member 'Triangle::mesh' [-fpermissive]

Не понятно.

Ответы>>712259>>712262

09 Апр, 22:58 #340 #712259

>>712248
Не знаю почему, но получилось починить, используя список инициализации.

09 Апр, 23:02 #341 #712262

>>712248
Ссылки константные, объявив первый раз ссылку на объект ты не можешь "перенаправить" ее на другой объект. Можно заменить объект на который указывает ссылка другим объектом (для чего нужен конструктор присваивания). Ссылку можно инициализировать в конструкторе, в том числе из указателя. https://ideone.com/dDw6wG

09 Апр, 23:23 #342 #712279

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

Ответы>>712281>>712289

09 Апр, 23:25 #343 #712281

>>712279
Обязательно писать вроде только те, которые = 0.
Ты не можешь создать объект класса, у которого остался хоть один чисто абстрактный метод.

Ответы>>712289

09 Апр, 23:31 #344 #712289

>>712281
>>712279
Ладно, тогда такой вопрос:
Есть Vector<ParentClass>.
ParentClass - абстрактный, то-есть, имеет чисто виртуальные методы.
И есть ChildClass - унаследованный от ParentClass, в котором все виртуальные функции реализованы.
Могу я сделать push_back в этот вектор экземпляром ChildClass?
У меня чёт не выходит. Экземпляр класса создается, а вот при push_back пишет: cannot allocate an object of abstract type 'ParentClass'.
Может я должен какой-то хитрый каст сделать?

Ответы>>712303>>712314>>712333

09 Апр, 23:39 #345 #712303

>>712289
Заменить пушбак на emplace_back пробовал?

Ответы>>712314>>712316

09 Апр, 23:44 #346 #712314

>>712289
Вектор не хранит элементы полиморфно же, а просто по значению. Виртуальность вообще не используется. В твоем случае при любой операции копирования/перемещения внутри вектора все элементы, которые есть в дочернем, но отсутствуют в базовом, срежутся. >>712303 не решит проблему, все равно будут дичайшие ошибки, и твое счастье, что тебе написало о попытке аллокации объекта ParentClass и копирования того, что пушится, во вновь созданный объект. А могло не повезти так, и просто срезать члены молча, порождая трудноуловимые баги.

Тебе нужно использовать unique_ptr или другую оберттку (ref, голые указатели, shared_ptr, самописные велосипеды...), чтобы задействовать полиморфизм, тогда все будет норм.

Ответы>>712331

09 Апр, 23:46 #347 #712316

>>712303
Я попробовал. Не катит короче.
Храни тогда указатели.

Ответы>>712324>>712331

09 Апр, 23:56 #348 #712324

>>712316
Забавно, а в дишечке с этим все норм.

abstract class AbstractTest {
void test();
}

class Test : AbstractTest {
override {
void test() {
writeln("lol, test!");
}
}
}

class Test2 : AbstractTest {
override {
void test() {
writeln("test again");
}
}
}

.......

AbstractTest[] tests;
tests ~= new Test();
tests ~= new Test2();

tests[0].test();
tests[1].test();

10 Апр, 00:10 #349 #712331

>>712314
>>712316
Если использовать указатели, только еще нужно сделать
[code]
(ChildClass *)
[/code]
каст, верно?

Ответы>>712332>>712335

10 Апр, 00:12 #350 #712332

>>712331
Где каст, зачем?

И да, () - это сишный каст, в крестах такие западло использовать же.

10 Апр, 00:14 #351 #712333

>>712289
Храни указатели на ParrentClass.

Ответы>>712336

10 Апр, 00:15 #352 #712335

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

10 Апр, 00:16 #353 #712336

>>712333
Вот так и рождаются выстрелы в ногу.

Ответы>>712338>>712641

10 Апр, 00:24 #354 #712338

>>712336
Нет, так - https://habrahabr.ru/post/51229/#comment_1355569

10 Апр, 01:04 #355 #712358

>>711887
>курсовик
>недостатки STL
>отсутствие сетевой библиотеки
Шел бы ты отсюда, исследователь

>>711893
Традиционно обоссал STL-хейтера.

Ответы>>712373

10 Апр, 01:15 #356 #712373

>>712358
> 2016
> только завозят filesystem
> только завозят Parallelism
> нет networking
> нет graphics
> есть сферические гармоники и гипергеометрические функции
std::cout << std::top_kek() << std::endl; // Experimental feature `std::top_kek()`

Ответы>>712374

10 Апр, 01:21 #357 #712374

>>712373
>2016
>маньки до сих пор путают STL со стандартной библиотекой
>маньки нихуя не участвуют в работе комитета, но при этом требуют внедрения фич, как от майкрософта

Ответы>>712380

10 Апр, 01:26 #358 #712380

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

> 2527 год
> концептов нет
> модулей нет и не видятся
> нам нужна обратная совместимость

Ответы>>712387

10 Апр, 01:34 #359 #712387

>>712380
Манюсь, ты хоть один пропосал читал самостоятельно? Уровень проработки вопросов просто космический и, самое главное, никто не мешает тебе, дохуя критику, отправлять свои охуительные пропосалы и критику на обсуждение.
Еще раз: фичи стандарта по сути пилят до 5 человек каждую. Обычно вообще по одному. Т.е. ranges один человек пилит в свободное от работы время, concepts - еще один, и т.д. и т.п. А ты просто слишком туп и ленив, чтобы участвовать в таком serious shit.

Ответы>>712394>>712395

10 Апр, 01:47 #360 #712394

>>712387
Уровень проработки "бля, пасаны, а может ну нахуй это говно, 30 лет без него жили спокойно, а ещё обратную совместимость поломает, и добавит в язык 1,5 конструкций вместо 5к строк шаблонной ебли и падения компилятора с аут оф мемори и логов в 3 гб, ну нахуй".

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

Лучше вспомни сколько обсуждали вывод типов и что ихменилось. Зато 10 лет писали итераторные простыни на 5 строк кода.

10 Апр, 01:50 #361 #712395

>>712387
> Уровень проработки вопросов просто космический
То есть реализация модулей от Шланга и Мелкомягких это дохуя юмор? Или там <= 5 человек? Бери и имплементируй, обратной совместимости все равно нет. Ах да, забыли про макросы, ну чтож, отложим на следующее десятилетие.
Пропосалы по моим вопросам уже до меня выслали. И на реддите все обсосали. Я не первый и не последний кого удивляет особая упоротость комитета.

И твоя кстати. Ах да, модно же быть нетаким как фсе, и ты со своим опытом компиляции lab4.c сидишь тут и затираешь мне про работу комитета.
> А ты просто слишком туп и ленив, чтобы участвовать в таком serious shit.
Сперва добейся? Ну давай тогда ты похвастайся своим участием в жизни языка.

sage 10 Апр, 02:36 #362 #712413

sage

Ответы>>712414

10 Апр, 02:49 #363 #712414

>>712413
> 2:48 AM
> C++ тред
> sage
Ловите наркомана

20 Кб, 589x237

10 Апр, 10:17 #364 #712513

Гайз, поясните нюфане за производство "Хеллоувордов", которые не будут закрываться сразу же после открытия.

Ответы>>712519>>712538>>712578

sage 10 Апр, 10:27 #365 #712519

>>712513
Запускай из консоли.
Используй gеtchar для debug-версии.
Погугли, в студии вроде была возможность.

Ответы>>712544

10 Апр, 10:55 #366 #712538

>>712513
ставь breakpoint перед return

Ответы>>712544

10 Апр, 11:01 #367 #712544

>>712519
>>712538
Благодарю вас, уважаемые .

Ответы>>712578

10 Апр, 11:31 #368 #712578

>>712154
>>712513
>>712544
Если ты делаешь в вижуал студии, можно еще system("pause"); использовать.

Ответы>>712593>>712619

10 Апр, 11:51 #369 #712593

>>712578
Спасибо, приятель.

10 Апр, 12:29 #370 #712619

>>712578
Помню много лет назад не смог сдать какую-то лабу, так как преподаватель использовал линукс для компиляции лаб и system ("pause") не прокатила. Так я познакомился с кроссплатформенным программированием

10 Апр, 12:58 #371 #712637

Можно ли как-нибудь оттайпдефить свой unsigned-тип. Или использовать пробел в алиасе на другой тип?
Есть хеддер библиотеки, в котором используется майкрософтский unsigned _int64
Хотелось бы не править хеддер руками, а либо средствами языка, либо средствами cmake сделать его равным uint64_t.

Можно сделать #define _int64 long long, но хотелось бы что-то более кроссплатформенное.

10 Апр, 13:07 #372 #712641

>>712336
С чего это указатели в векторе — выстрелы в ногу?

Ответы>>712646>>713670

10 Апр, 13:12 #373 #712646

>>712641
Потому что в контексте задачи нужно только хранить значения, а указатели позволяют хранить нули и вообще мусор.

Ответы>>712648>>713670

10 Апр, 13:13 #374 #712647

>>711830
Это для char (и вообще непонятно зачем, приписано, что только basic latin можно совать. Чем тогда от обычного char отличается?)
В строках — с С++11.

Ответы>>712652

10 Апр, 13:14 #375 #712648

>>712646
У тебя какие-то маняпредставления о "выстрелах в ногу".

Ответы>>712653

10 Апр, 13:16 #376 #712652

>>712647
Как мне проитерироваться по строке "I am ероха", прочитав ее из текстового файла в UTF, и получить length=10, а не 15, и чтобы были 'е', 'р', 'о', 'х', 'а', а не мусор с кракозябрами?

Ответы>>712656

10 Апр, 13:17 #377 #712653

>>712648
У тебя какое-то маняотрицание.

Ответы>>712655

10 Апр, 13:19 #378 #712655

>>712653
Использование указателей на базовый класс для указания на производные и виртуальные функции — это, собственно, вся суть ООП в C++. By design, так сказать.

Но в твоём манямире это называется "стрелять в ногу".

Ответы>>712658

10 Апр, 13:20 #379 #712656

>>712652
http://www.utf8everywhere.org/

10 Апр, 13:20 #380 #712658

>>712655
> By design, так сказать.
Щито поделать, если by design пользователи вынуждены стрелять в ногу

10 Апр, 13:30 #381 #712665

cpp.sh/82mn
У меня крашится компилятор, хотя на онлайн ресурсах все работает. Компилятор dev c++

Ответы>>712669>>712672

10 Апр, 13:36 #382 #712669

>>712665
Молча крашится?

Ответы>>712674

10 Апр, 13:38 #383 #712672

>>712665
И чего ты хочешь, поддержки и понимания?
>Компилятор dev c++
Нет такого компилятора

10 Апр, 13:40 #384 #712674

>>712669
Да, молча. Тупо выходит сообщение "Пограмма g++ exe не работает.

Ответы>>712676>>712678

10 Апр, 13:43 #385 #712676

>>712674
Где-то видел, что у MinGW бывают проблемы на Win8+.
Возможно, это относилось к старым версиям MinGW.
У тебя версия?

Ответы>>712681

10 Апр, 13:48 #386 #712678

>>712674
-std=c++11 включена? Попробуй заменить TDD-GCC на версию повыше.

Ответы>>712681>>712701

10 Апр, 13:52 #387 #712681

>>712676
Что это? Я ньюфаг.
>>712678
И как это сделать?

Ответы>>712695

10 Апр, 13:52 #388 #712682

>>711101
>"мастеринг линакс консол".
Смотря что понимать под этим. Если по стандартным консольным утилитам — то там можно и книги писать по их использованию.

10 Апр, 13:59 #389 #712685

>>712157
>Поясните за буферизацию данных для вывода
http://stackoverflow.com/questions/2530663/printf-anomaly-after-fork
http://stackoverflow.com/questions/17454610/fork-in-c-using-printf

3 Кб, 379x192

10 Апр, 14:04 #390 #712690

>>708423
бамп, аноны. до сих пор сижу и не могу переписать под си

Ответы>>712725

10 Апр, 14:18 #391 #712695

>>712681
Ну смотри, Dev-C++ - это просто навороченный блокнот, у которого в настройках прописаны пути к компилятору. А компилятор лежит где-то недалеко от Dev-C++.
Есть два варианта:
1. Качаешь отсюда http://tdm-gcc.tdragon.net/download версию поновее, устанавливаешь и перепрописываешь пути к компилятору в настройках dev-c++ (или компилируешь руками в консоли)
2. Лучше не стоит. (руками заменить TDM-Gcc из dev-c++ на тот что с сайта выше)

И подумай о том, чтобы перейти хотя бы на code;blocks.

Ответы>>712702

10 Апр, 14:24 #392 #712701

>>712678
>-std=c++11 включена?
Вроде компилятор должен сообщать о том, что не может понять код, а не валиться как срань лажёвая.

10 Апр, 14:24 #393 #712702

>>712695
Мне нужно свое дерьмо как то преподу показать, чтобы допуск выставил. А он проверяет все это на этой херне.

Ответы>>712703>>712705

10 Апр, 14:25 #394 #712703

>>712702
Скажи преподу, что это его проблемы.
Ты код написал, и он работает. (если конечно ты написал и он работает)

10 Апр, 14:26 #395 #712705

>>712702
Вроде как код норм (ну, за исключеним того, что findmax пустые списки не может), проблема в компиляторе.
Вот, находится http://stackoverflow.com/questions/12811762/dev-c-in-windows-8-gcc-internal-error

Ответы>>712729

10 Апр, 14:36 #396 #712719

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

Ответы>>712723

10 Апр, 14:38 #397 #712723

>>712719
hh.ru
каждый раз едешь, и решаешь задачки

10 Апр, 14:40 #398 #712725

>>712690
Разве не так?:

uint64_t P[300]; // массив пятых степеней, сам заполнишь
int n[5] = {0};

int• Eu(int be, int en, uint64_t &S, int •n, int j)
for (int i = be; i < en; ++i) //а может надо <=
{
if (n[4] == 0) return n;
S = S + P; n[j] = i;
if (i < 3)
n = Eu(i, en, S, n, j + 1);
else {
size_t k = std::lround(pow(S, 0.2));
if (P[k] == S) n[4] = k;
}
S = S - P;
}
return n;
}

Ответы>>712728>>712759

10 Апр, 14:42 #399 #712728

>>712725
можешь объяснить за else? что после него, какие значения мы считаем в пов и зачем?

Ответы>>712735

10 Апр, 14:42 #400 #712729

>>712705
> Please tell your teacher to update Dev-C++ instead
Лол

Ответы>>713677

10 Апр, 14:47 #401 #712735

>>712728
Ты на перле когда-нибудь писал? Там есть постфиксный if:
a = 6 if b == 0 else 7;
По сути эквивалено a = (b==0 ? 6 : 7);
Тут та же фигня по всей видимости.

Ответы>>712738>>712746

10 Апр, 14:50 #402 #712738

>>712735
Или это в питоне? В общем, хуй помнит, но в какой-то скриптопараше такое есть.

Ответы>>712740>>712756

10 Апр, 14:51 #403 #712740

>>712738
По-моему, и в perl, и в python, и в ruby

10 Апр, 14:55 #404 #712746

>>712735
[Error] invalid conversion from 'uint64_t {aka long long unsigned int}' to 'uint64_t {aka long long unsigned int}' [-fpermissive]

вот такую хуйню словил

Ответы>>712759

33 Кб, 960x213

10 Апр, 14:55 #405 #712747

>>709673
>Охуеть блять, и чо, можно написать int a = a?

Ответы>>713685

62 Кб, 400x300

sage 10 Апр, 14:58 #406 #712756

>>712738
>в питоне
Кстати там такой бред. После пары часов бросил учить это говно. Инт всегда длинный. Табуляция вместо begin/end операторов. Тип переменные меняют во время работы программы.

Ответы>>712758>>712762>>713066

10 Апр, 15:00 #407 #712758

>>712756
>Кстати там такой бред. Инт всегда длинный. Табуляция вместо begin/end операторов. Тип переменные меняют во время работы программы.
Поздравляю с синдромом утёнка.

10 Апр, 15:00 #408 #712759

>>712725
> S = S + P[ i ]; n[j] = i;
> S = S - P[ i ];
Забыл про макабу.
>>712746
Поправь что я указал выше.

Ответы>>712763

10 Апр, 15:03 #409 #712762

>>712756
Ты еще не дошел до того момента, когда обьект класса при создании может в итоге оказатся объектом не того класса, который ты указал. Один пиздец. Проходи мимо.

Ответы>>712764

10 Апр, 15:03 #410 #712763

>>712759
size_t k = std::lround(pow(P, 0.2));
тут тоже p?

Ответы>>712767

10 Апр, 15:04 #411 #712764

>>712762
> Ты еще не дошел до того момента, когда обьект класса при создании может в итоге оказатся объектом не того класса, который ты указал
> Тип переменные меняют во время работы программы.
Не оно?

Ответы>>712766

10 Апр, 15:05 #412 #712766

>>712764
Нет, я про мета классы говорю.
Там не надо ничего присваивать, автоматом неоднозначная хуйня присвоится.

10 Апр, 15:06 #413 #712767

>>712763
Там S вместо P должна быть. Сравни код со своим скрином, я один в один переписывал.

Ответы>>712776

10 Апр, 15:15 #414 #712776

>>712767
не понимаю только почему у функции стоит указатель. Из-за этого вывести результат не могу
сорри за тупые вопросы

Ответы>>712784

10 Апр, 15:22 #415 #712784

>>712776
Функция возвращает указатель на массив n. А учитывая, что массив остаётся на месте, можно и просто void сделать и из n результат читать.

Ответы>>712789

10 Апр, 15:29 #416 #712789

>>712784
http://study.sfu-kras.ru/DATA/docs/ProgramTheory/recurs/hp_eiler.htm

переписал с помощью тебя отсюда и получил это, но в ответе одни нули. Где я проебался?

http://ideone.com/4nJiFu

Ответы>>712900

10 Апр, 16:25 #417 #712900

>>712789
Пофиксил - P[N] надо в ноль сбрасывать. И n[4] проверять на неравенство нулю. И костыль пришлось добавить в 32 строке, раз ты S в самом массиве хранишь.
http://ideone.com/vsWkWU

10 Апр, 17:56 #418 #713030

>>707568 (OP)
Аноны, где есть годный гайд по нейросетям/компьютерному зрению на плюсах и/или Си?

Ответы>>713032

10 Апр, 17:59 #419 #713032

>>713030
Сам недавно искал. Проверил ШАД и курсер. Там про плюсы нет. Только теория. И через пару лекция она становиться непонятной.

Ответы>>713037

10 Апр, 18:03 #420 #713037

>>713032
Не мог бы пояснить за ШАД? Я сейчас что-то нагуглил, интересно стало.

Ответы>>713142

10 Апр, 18:23 #421 #713054

Есть задача, выглядит она примерно так.
На входе дается число N, которое представляет собой число строк, которое последует после.
Каждая строка представляет из себя ФИО кандидата, всего кандидатов 6. Каждый раз, когда встречается ФИО кандидата, ему добавляется голос. Нужно вывести голоса всех участников.
Например
Ввод:
3
Хуй
Пидор
Пидор
Вывод:
Хуй 1
Пидор 2

Задача очень простая. Но как ее решить если имена кандидатов нельзя сохранять в массиве? При этом все строки считываются только 1 раз.

Ответы>>713057>>713068>>713071

10 Апр, 18:25 #422 #713057

>>713054
Кому нельзя? Тебя палкой что-ли бить будут, если сохранишь?

Ответы>>713062

10 Апр, 18:27 #423 #713062

>>713057
Ну типо баллов меньше если сохраняешь. Типо неэффективно по памяти.

Ответы>>713069

10 Апр, 18:29 #424 #713066

>>712756
Почему бред? M-выражения и динамическая типизация всего то.

Ответы>>713535

10 Апр, 18:31 #425 #713068

>>713054
std::map

10 Апр, 18:31 #426 #713069

>>713062
> Типо неэффективно по памяти.
Чебля?

Кмк, ты бред городишь. Никак, сука.

Можешь не сохранять в МАССИВЕ, можешь сохранить в MAP.

10 Апр, 18:32 #427 #713071

>>713054
И да, можешь не сохранять - просто этих пидоров на вход подавай уже отсортированными.

10 Апр, 18:38 #428 #713080

Вообще это из ЕГЭ, я спокойно решаю, но тут решив обнаружил, что если сохраняю в массив, то нельзя.
Вот решение http://inf.ege.sdamgia.ru/problem?id=6472. Я эти паскали хуескали не понимаю, но в пояснение написано что в массив не сохраняется, это единственная проблема, которую я хз как решить. Думаю вообще нельзя никакие контейнеры юзать.

Ответы>>713081>>713097

12 Кб, 835x246

10 Апр, 18:40 #429 #713081

>>713080

126 Кб, 922x949

10 Апр, 18:41 #430 #713082

Ответы>>713086>>713087

10 Апр, 18:43 #431 #713086

>>713082
>а составляя только список
Убил бы дегенерата.

Ответы>>713091

10 Апр, 18:43 #432 #713087

>>713082
Но там ясно видны целых два массива, мудила гороховая блять

Ответы>>713091

10 Апр, 18:45 #433 #713091

>>713086
>>713087
Че бля не так? Сказали без массива? Че делать? Я пробовал рекусию написать, так вроде получилось, но я делал файл.
Там есть массивы? Я эти языки не знаю, даже не пытался. Если что, простите.

Ответы>>713096

10 Апр, 18:47 #434 #713096

>>713091
Ебаный рот там чёрным по белому два ARRAY блять, хуйню несёшь сука

Ответы>>713147

10 Апр, 18:47 #435 #713097

>>713080
>но в пояснение написано что в массив не сохраняется
Входные данные все в массив не сохраняются. То есть у тебя не будет массива строк
Меньшиков Олег
Миронов Евгений
Меньшиков Олег
Машков Владимир
Меньшиков Олег
А будет один с тремя именами и второй с голосами.

Ответы>>713098

10 Апр, 18:49 #436 #713098

>>713097
Все, тогда у меня и было такое решение изначально.

Простите что насрал.

10 Апр, 19:00 #437 #713112

На самом деле без контейнеров можно. Имен же не более шести. Делаешь шесть строковых переменных и сравниваешь с ними ввод. Но это уже слишком говнокод.

Ответы>>713116

10 Апр, 19:02 #438 #713116

>>713112
Какая разница что говнокод, если это говнозадача?
Такую хуйню вообще надо делать однострочником на юниксовых утилитах.

10 Апр, 19:24 #439 #713142

>>713037
Нет. Бросил на четвёртом уроке. Или лекции не помню как там у них это называется. На курсере это недели. Не нашёл связь с крестами и перестал понимать что там объясняют.

10 Апр, 19:25 #440 #713147

>>713096
Они по 6 элементов. Можно и без них.

10 Апр, 19:38 #441 #713169

Кстати этот тред неделю жить будет. Как-то долго по сравнению с предыдущими.

Ответы>>713227

10 Апр, 20:10 #442 #713227

>>713169
Потому что из-за сезонного набега лабодаунов, уважаемые господа вроде меня, брезгуют ведением полемики в таком питомнике.

Ответы>>713524

11 Апр, 03:47 #443 #713524

>>713227
Это ты именование STL "говном" считаешь ведением полемики?

Ответы>>713687

11 Апр, 04:44 #444 #713533

/dev/video0 снова
ребят.. есть видео поток не в лине. как его заюзать в моей крестопрограмме не меняя ос естесна пните в нужную сторону то!

Ответы>>713539>>713541

11 Апр, 05:33 #445 #713535

>>713066
>M-выражения
>python
Ты не видел либо первого, либо второго.

11 Апр, 05:47 #446 #713539

>>713533
Как ты заебал...

Порылся тут в гугле. /dev/video0 в FreeBSD, как я понял, создаёт демон webcamd. Который является портом драйверов video4linux в BSD (в юзерспейс).

Значит, твой /dev/video0 является video4linux(2)-устройством.

Ответы>>713541>>713557

11 Апр, 05:56 #447 #713541

>>713533
>>713539
https://wiki.freebsd.org/WebcamCompat вот тебе список веб-камер и их интерфейсов. У большинства V4L/V4L2. У которых unknown, в столбце программ, умеющих с ними работать висит pwcview. Лезь в сорцы.
BTW, у https://www.freshports.org/multimedia/pwcview/ в зависимостях хидеры для Video4Linux-совместимых устройств.

Ответы>>713557

11 Апр, 08:16 #448 #713557

>>713539
рили?
про вебкамд знал, а о совместимости нет..

>>713541
буду работать теерь. больще не вайпаю этим

Ответы>>713569

11 Апр, 09:19 #449 #713569

>>713557
>про вебкамд знал, а о совместимости нет..
http://www.selasky.org/hans_petter/video4bsd/
> Webcamd is a small daemon that enables about 1500 different USB based webcam, DVB and remote control USB devices under the FreeBSD-8.0 and later operating system. The webcam daemon is basically an application which is a port of Video4Linux USB drivers into userspace on FreeBSD.

Ответы>>713572

11 Апр, 09:38 #450 #713572

>>713569
я же взял ответственность что я рак.
ну еще раз ткни в это, если станет от этого лучше

Ответы>>713573

11 Апр, 09:41 #451 #713573

>>713572
Насколько раком нужно быть, чтобы скулить месяц, если мимокрокодил нагуглил всё, что нужно (в том числе примеры кода) и разобрася (концептуально) минут за 10-15?

Кайся ещё.

Ответы>>713577

11 Апр, 09:51 #452 #713577

>>713573
примеры были же не под webcamd и благодаря тому что я слишком часто вижу отсутствие совместимости линя с бсд, открыл для себя с++ тред.
где не умеют делать лабы но гуглят точне меня мои друзья аноны.
каюсь. я рачье

Ответы>>713591

11 Апр, 10:08 #453 #713591

>>713577
>примеры были же не под webcamd
Примеры могут быть под webcamd?
webcamd это кусок сорцев ядра linux: драйвера для web-камер, тюнеров и ещё чего-то + реализация в userspace необходимых для этих драйверов функций ядра linux + вываливание получившегося v4l(2)-девайса с помощью CUSE в виде /dev/videoX.

Примеры работают с /dev/videoX, символьным устройством, и им пофиг на то, кто и как обслуживает это устройство, лишь бы оно предоставляло ожидаемый интерфейс.

Кайся ещё.

Ответы>>714372

11 Апр, 12:06 #454 #713670

>>712641
>>712646
Испольхуйте std::shared_ptr или std::unique_ptr в качестве элементов вектора. В Сее++ _уже_ не нужно ручное управление памятью!

Ответы>>713676

11 Апр, 12:10 #455 #713676

>>713670
> ЭТА ВЫСТРЕЛ В НОГУ!! В D МОЖНА ХРАНИТЬ В МАССИВЕ ПА ЗНАЧЕНИЮ!!11 КО-КО-КО!

11 Апр, 12:11 #456 #713677

>>712729
Да, а есле препод будет упираться, то нужно собрать несколько человек, которые подтвердят, что на новом Дев-С++ всё работает.

11 Апр, 12:17 #457 #713685

>>712747
Имеется в виду второй х нахдится в новой области видимости. Но не еби голову, такое редко необходимо, хотя можно попонтоваться перед коллегами.

Ещё, например, в инициализации for цикла можно объявлять не только переменные, но и задавать новые типы.

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

Ответы>>713773

11 Апр, 12:21 #458 #713687

>>713524
>Это ты именование STL "говном" считаешь ведением полемики?
Я не тот хуесос.

sage 11 Апр, 14:10 #459 #713752

>>707568 (OP)
> Существует швабодный кроссплатформенный фреймворк-надмножество C++ под названием Qt.
> Qt
> швабодный

Давно у нас запрет на коммерческую разработку называется швабодой?

Ответы>>713774>>713775

11 Апр, 14:27 #460 #713773

>>713685
> исключения из деструктора

Нахуй из профессии

sage 11 Апр, 14:31 #461 #713774

>>713752
Мань, погугли условия GPL и LGPL прежде чем квохтать. Ограничения связаны с исходниками и объектными файлами, а не с запретом коммерческой разработки.

11 Апр, 14:31 #462 #713775

>>713752
У тебя устаревшие данные, Qt уже много лет как под LGPL доступен.
> запрет на коммерческую разработку
Закрытость кода ортогональна коммерчности разработки, коммерческий код можно и под GPL писать.

11 Апр, 14:44 #463 #713779

>>709300
Поясните долбоёбу, как запустить эту змейку ебаную

Ответы>>713781>>713790

sage 11 Апр, 14:47 #464 #713781

>>713779
>>709528 <---
g++ main.cpp game.cpp `pkg-config --cflags ncurses` -o zmeyka `pkg-config --libs ncurses`

Ответы>>713784>>713790

11 Апр, 14:51 #465 #713784

>>713781
Поясните долбоёбу, куда это вводить

Ответы>>713790

11 Апр, 14:55 #466 #713788

Сап, аноны. Наверное с этой лабой да-да лабы идут нахуй я всех уже заебал, но все же прошу помощи:
Код написан, код работает, но, в случае, если N и M не равны, происходят косяки, а именно поиск ведется неправильно и только по первым N элементам. Как пофиксить?

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

http://ideone.com/EHCgMN
http://ideone.com/8jgUgD
http://ideone.com/zwgO65 (условие задачи)

sage 11 Апр, 14:56 #467 #713790

>>713779
>>713781
>>713784
Сорян, забыл ещё -std=c++11

Можешь вместо g++ писать clang++, если у тебя он.

BLUEFISH 11 Апр, 15:24 #468 #713804

Аноны, подскажите как в bluefish сменить браузер для открытия html. Открывает всегда мозилу, а мне для открытия нужен хром, ибо мозила оч медленный.

Ответы>>713851

11 Апр, 15:49 #469 #713821

class A {
public:
void test() {
cout << "aaaa";
_getch();
}
};
class B:public A
{
public:
test();

};
не могу понять почему не работает такая конструкция

Ответы>>713859>>713860

29 Кб, 520x245

11 Апр, 16:20 #470 #713851

>>713804
>мозила
>медленный
>нужен хром

11 Апр, 16:34 #471 #713859

>>713821
>test();
>не указан тип возвращаемого параметра
>в родительском классе не указано, что метод виртуальный
Virtual ставить вроде не обязательно, но будет не очевидно работать и вряд ли так, как ты планировал.

Ответы>>713860

11 Апр, 16:35 #472 #713860

>>713821
>>713859
Ну и реализацию нужно для дочернего класса писать.

11 Апр, 17:24 #473 #713892

Вопрос такой, котаны. Пишу я, значит, на C++ с Qt.

Есть у меня код, который парсит запросы. Запросы поступают в формате JSON в виде QString.

Когда я достаю из JSON-а тело сообщения, в нём не ищутся русские символы, то есть.

item.value("body").toString().contains("слово")

Всегда выдает отсутствие этого самого слова.
Как с этим бороться?

Кутишный JSON может создать объект только из utf8, возможно в этом проблема, но что с этим можно сделать?

Ответы>>713916

11 Апр, 17:52 #474 #713916

>>713892
Попробуй выставить кодировку utf8 в редакторе.

Ответы>>713927>>713934

11 Апр, 18:01 #475 #713927

>>713916

Говорит, что невозможно преобразовать.

11 Апр, 18:06 #476 #713934

>>713916

А, всё нормально, убрал русский текст, преобразовал и опять его вставил, заработало.
Спасибо, анон!

Ответы>>713942

11 Апр, 18:23 #477 #713942

>>713934
Только не забудь что теперь ты не можешь напрямую (по индексам) редактировать захардкодженые строки с кирилицей, так как у них будут разные длины у разных символов, например "слово" 13 байт занимает, без учета нулевого https://ideone.com/4kNJ4z

11 Апр, 18:54 #478 #713966

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

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

Ее сам решу, подскажите только по поводу множеств.

Ответы>>713975>>713981

11 Апр, 19:04 #479 #713975

>>713966
Множества это std::set если на элементах можно задать отношение порядка и std::unordered_set если нет (или не важно).

11 Апр, 19:10 #480 #713981

>>713966
>указанием числа их появления
А нахуй множество? Тебе map нужен или даже тупо массив и switch.

11 Апр, 19:43 #481 #714001

Посоны, поясните мне вот за такую штуку:
очень часто в проектах вижу, что используют cmake, но он настолько всратый в плане синтаскиса, что иногда хочется вскрыть своей соседке вены.
И есть по соседству qbs, который, в общем-то, даже как-то по-проще и логично выглядит, почему его не гоняют так, как cmake?
Алсо, IntelliJ выпустила свое недоделанное отродье - CLion, так вот, там тоже используется cmake.
Почему, черт подери, это старое говно мамонта не заменят на что-то более вменяемое?

Ответы>>714004>>714015>>714289

11 Апр, 19:48 #482 #714004

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

11 Апр, 20:01 #483 #714015

>>714001
qbs уже может собрать Qt?

Ответы>>714096

11 Апр, 21:21 #484 #714096

>>714015
А раньше разве не мог?

Ответы>>714155

11 Апр, 22:00 #485 #714155

>>714096
Не, qbs не совсем полноценен, нужен еще qmake. Вроде только к Qt6 собирались полностью доделать.

Ответы>>714294

12 Апр, 00:08 #486 #714289

>>714001
Жопоглазый пидор детектед

https://bitbucket.org/scons/scons/wiki/SconsVsOtherBuildTools

12 Апр, 00:11 #487 #714294

>>714155
Я вот сейчас буду пердолиться и переустанавливать ШИНДОВСлинупс, 16.04 еще не вышедший - потому что этот ебучий qbs тут сука не работает, в 15.10 версия 1.4.2+dfsg-3, а эту ебань пофиксили в 1.4.2+dfsg-8, и разумеется - в репы нихуя не попало.

Всем хорош этот qbs, и синтаксис, и плюшки, кроме одного - не работает, блять!

Ответы>>714298

12 Апр, 00:14 #488 #714298

>>714294
>714155
>Я вот сейчас буду пердолиться и переустанавливать ШИНДОВСлинупс, 16.04 еще не вышедший - потому что этот ебучий qbs тут сука не работает, в 15.10 версия 1.4.2+dfsg-3, а эту ебань пофиксили в 1.4.2+dfsg-8, и разумеется - в репы нихуя не попало.
>Всем хорош этот qbs, и синтаксис, и плюшки, кроме одного - не работает, блять!

Ну и долбоеб. Нет чтобы из сорцов собрать, так лучше систему переустановить. Да еще и убунту нестабильную. Ну ты блять просто рафинированная qt-макака.

Ответы>>714301

12 Апр, 00:16 #489 #714301

>>714298
Все равно через полторы недели релиз. А этот 15.10 корявый меня уже вконец заебал.

Делать мне нехуй, как собирать из сорцов и потом ебаться как это втиснуть в систему, и шоб не конфликтовало.

Ответы>>714307>>714314

12 Апр, 00:18 #490 #714307

>>714301
И потом - а может быть, там Qt 5.6 искаропки будет, на что я очень надеюсь.

И баг в долфине с крашем по "create new folder" задрал, нет слов. Сука, чтобы создать папку - я как аутист ебошу "mkdir" в терминале.

Ответы>>714435

175 Кб, 500x480

12 Апр, 00:28 #491 #714314

>>714301
>А этот 15.10 корявый меня уже вконец заебал.
>Думает, что 16.04 внезапно станет дохуя стабильным.
>Не знает, как установить собранный пакет в систему
>Предпочитает переустановить систему, вместо того, чтобы разобраться.

Какой феерический долбоеб, ужас просто. Это не ты возмущался, что STL - говно, случайно?

Ответы>>714316

12 Апр, 00:31 #492 #714316

>>714314
Феерический долбоеб - это ты.

А 16.04 это ж LTS, епта, на хуй путешествуй.

Ответы>>714320

12 Апр, 00:39 #493 #714320

>>714316
>А 16.04 это ж LTS, епта, на хуй путешествуй.
Охохо бля. Дите, твой LTS в убунте в лучшем случае testing из debian. В лучшем. 14.04, например, стала юзабельной только через полгода после релиза. Лучше послушай серьезного дядю и не выебывайся:
ubuntu в любом проявлении не является эталоном стабильности. Вместо того, чтобы по системам скакать, лучше поставь debian stable или аналог. А хочешь свежий opensource - собирай самостоятельно.

Ответы>>714323

12 Апр, 00:42 #494 #714323

>>714320
Пробовал я ваш доебан - говно, еще более нестабильное.

Ответы>>714324

12 Апр, 00:42 #495 #714324

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

12 Апр, 00:51 #496 #714327

Анончики, помогите. У меня есть класс A
class A
{
public:
A(const color & c = color(1, 1, 1)) : _c(c){}
protected:
color _c;
}
и класс B
class B : public A
{
public:
B(const color & c = color(1, 1, 1)) : A(c) {}
void changeC(){_c = color(0, 0, 0);}
}

Почему я не могу поменять значение _с? Пишет, что _c const.

Ответы>>714330

12 Апр, 00:56 #497 #714330

>>714327
С кодом все в порядке. Ты что-то не так понял.

Ответы>>714332

12 Апр, 00:58 #498 #714332

>>714330
Блин я тупой. Не в том методе менял цвет. Менял в константном.

12 Апр, 04:04 #499 #714372

>>713591
прости, о несовместимости /dev/video* спрашивал же 3 треда назад, аноны сказали платформозависимые они. Вот и рыл не туда!

12 Апр, 08:49 #500 #714424

Как получить доступ к буферу обмена линукса через С++? Нагуглил только вариант с Qt, но не хотелось бы его тянуть в столь мизерный скрипт.

Ответы>>714427

12 Апр, 08:59 #501 #714427

>>714424
В линуксе нет буфера обмена. Он предоставляется иксами и следовательно способ его использования зависит от конкретной оконной системы которую ты используешь. Читай документацию для своей оконной системы. Или лучше найди библиотеку (Qt) или утилиту (xclip, например).

Ответы>>714429>>714431

12 Апр, 09:04 #502 #714429

>>714427
А утилиты вроде xsel/xclip каким образом всегда получают доступ к буферу обмена, независимо от DE/WM? Мой оконный менеджер не предоставляет никаких средств для работы с буфером обмена.

12 Апр, 09:06 #503 #714431

>>714427
Вообще, я хотел экстеншон под PHP написать (он не умеет работать с буфером обмена, а, к примеру, Python умеет), поэтому xsel/xclip не подходят.

12 Апр, 09:08 #504 #714432

Хотя, наверное, проще сделать system("xsel -b") и ебать мозг.

12 Апр, 09:15 #505 #714435

>>714307
Ставь арч. Минимум пакетов, проблем нет, или гуглятся быстро, свежий софт в репах или в aur, работает пошустрее убунты и конпелять ничего не надо.

Ответы>>714440

12 Апр, 09:37 #506 #714440

>>714435
> работает пошустрее убунты
Ну пошли-поехали сказочки.
Если че, на скорость работы убунты нареканий у меня никогда не было. И суть убунты - никогда не ебаться с софтом или чем угодно, потому что убунта - дефолтный линупс, под нее есть ВСЕ и официально.

Когда я захочу поиграться в роллинг - я опять поставлю опенсусю, она куда лучше этого школьного поделия.

Единственное что, мне нравится его вики. Но она просто вики по линупсу, без привязки к этому рачу.

12 Апр, 13:07 #507 #714518

>>711582
Сделай на пайтоне.

13 Кб, 512x512

12 Апр, 14:10 #508 #714556

Поясните за фриланс на кьюте:
Является ли это коммерческим использованием, что нужно сделать чтобы этим легально заниматься, есть ли какие-то лазейки вроде старых версий и статических сборок?

Ответы>>714572

101 Кб, 1258x429

12 Апр, 14:40 #509 #714572

>>714556
прочитай текст лицензии - а
там есть комерческие версии - б
GNU GPL ебанутая лицензия.. мимо каюсь за /dev/videoX иши для фриланса и отсутствия трабл с лицензиями BSD лицензию или что-то стороннее как в эклипсе, которое не обязават тебя писать писать лицензию

ps: http://www.gnu.org/licenses/gpl-faq.ru.html

Ответы>>714577

12 Апр, 14:48 #510 #714577

>>714572
Я и не думал, что с этим вопросом все настолько сложно
Я во всем этом совершенно ничего не понимаю, никогда не пилил ничего платного. Можно немного проще, есть ли в qt способы написать коммерческий проект не покупая ничего? Если нет, то что лучше использовать для этих целей? Нет никаких гарантий, что эти вложения окупятся пока.. нужно же с чего-то начать?

Ответы>>714580>>714585

12 Апр, 14:54 #511 #714580

>>714577
если тебе говорт -- напиши лабу то пиши в qt т.к. писать лабу это можно за денеФФку ивписываешься в лицензию.
...
ты можешь написать на свободном qt всё и в триал версии все продавать думал, лайфхак.. но не думаю что новые владельцы qt (не нокия же уже?) тупые чтобы делать такую херню..
...
не так то просто всё с юристами..

Ответы>>714586

12 Апр, 14:59 #512 #714585

>>714577
без статической линковки с Qt мона в комерцию

Ответы>>714588

12 Апр, 14:59 #513 #714586

>>714580
Я же говорю, я пробую себя на разных биржах
Я уже понял, что можно провести не одно бессонную ночь, разбираясь с лицензиями
Мне не сложно отвалит 30 баксов за любимый кьют, чтобы ко мне не доебывались потом
В чем можно писать, чтобы не разбираться этим вопросом лицензий. студия? кодблокс? Я уже не знаю куда тыкнуть

Ответы>>714692

12 Апр, 15:03 #514 #714588

>>714585
А как передать проект? Закинуть дополнительно 800 мб длл?

12 Апр, 18:09 #515 #714692

>>714586
eclipse
там другая лицуха..
и запретить в открытом Qt писать тебе нельзя.
..
собственно я не уверен о динасической линковки длл для обхода лицензии я не слышал, но в теории код qt тогда не скрыт.. только твои прога к ним подсасывается и забирает либы. нов рашке за лицухи фрилансеров не ебут, не парся если нет 30$ на лицензию.. тебя не будут искать с оФФчарками по мухосрани. ты неуловимый Джо

12 Апр, 18:38 #516 #714709

Сап. Есть кусок кодаспизженого из инета по поиску простых чисел решетом Сундарама. http://pastebin.com/TcpWPYPV
Собираю я его
g++ --std=gnu++11 -Wall -O2 sundram.cpp

time ./a.out 100000000 > /dev/null
real0m9.817s
user0m8.588s
sys0m1.236s

Однако, если заменить i=i+1, j=j+1 на i=i+2, j=j+2, что, по логике, должно ускорить код за счёт пропусков чётных чисел, получается вот что:

time ./a.out 100000000 > /dev/null
real0m18.101s
user0m10.980s
sys0m7.132s

Помогите, а то ЯННП.

Ответы>>714722>>714745>>714751

12 Апр, 18:54 #517 #714722

>>714709
Возьми да дизассемблируй.

Ответы>>714751

12 Апр, 19:06 #518 #714745

>>714709
>int a = new int [n];
>memset(a, 0, sizeof(int) n);
>delete [] a;
>using namespace std;
>int a = atoi(argv[1]);
>спрашивает алгоритмы в C++ треде.

Да ты, блядь, гонишь.
Во-первых, нахуй тебе C++? Пиздуй в C тред.
Во-вторых, пиздуй в алгоритмы-тред.
В-третьих, твое предположение про двойной инкремент - бред, ты нихуя не понял этот алгоритм.
В-четвертых, как следствие неправильной работы алгоритма - у тебя получается больше значений, в stdout выводится больше значений, отсюда разница во времени.

Ответы>>714749

12 Апр, 19:09 #519 #714749

>>714745
>В-четвертых, как следствие неправильной работы алгоритма - у тебя получается больше значений, в stdout выводится больше значений, отсюда разница во времени.
Видимо, так. Отсюда и дохрена времени в sys. Сам попробовал посмотреть генерируемый компилером код. Принципиальной разницы нет, просто константы в инструкциях удваиваются.

Ответы>>714750

12 Апр, 19:12 #520 #714750

>>714749
Я тебе рекомендую почитать Кормена. Начни с "Введение в алгоритмы". Твоя манера разбора алгоритма немного охуительная. В плохом смысле.

Ответы>>714751

12 Апр, 19:12 #521 #714751

>>714750
Я >>714722, а не >>714709

12 Апр, 19:47 #522 #714786

Сап, крестаны-кютаны.

Есть сабж:

auto ptr = std::make_unique<int>(10);
auto lambda1 = [] { qDebug() << "lol timeout 2000"; };
auto lambda2 = [value = std::move(ptr)] { qDebug() << "lol timeout 2000"; };

connect(timer, &QTimer::timeout, lambda1);
//connect(timer, &QTimer::timeout, lambda2); не компилится сцкпздц

С какого хуя я не могу подсунуть лямбду с захватом по move никуда, какого черта?

Ответы>>714787

12 Апр, 19:49 #523 #714787

>>714786
А ошибку какую пишет?

Ответы>>714790

12 Апр, 19:53 #524 #714790

>>714787
Блять, да там целая тонна.
Малость перефразирую - почему я не могу сделать так:

auto ptr = std::make_unique<int>(10);
std::function<void()> lambda = [value = std::move(ptr)] {
qDebug() << "lol timeout 3000";
};

Я конечно ща залью ошибку на пастебин, но там пиздец.

Ответы>>714791

12 Апр, 19:55 #525 #714791

>>714790
http://pastebin.com/iAG5QCau

Ответы>>714792

12 Апр, 20:01 #526 #714792

>>714791
Ну, ругается на отсутствие конструктора копий у unique_ptr.
Не совсем из той лапши понятно, кому он нужен.
(Возможно, класс, генерируемый из лямбда-функции, пытается обзавестись конструктором копий, но так как у него есть поле value с удалённым конструктором копий, он обламывается.)

Ответы>>714795

12 Апр, 20:04 #527 #714795

>>714792
Но нахуя ему копия, если там move?

Ответы>>714798>>714800

12 Апр, 20:08 #528 #714798

>>714795
Короче, обламывается на создании лямбды или передаче её в connect?

Ответы>>714800>>714801

12 Апр, 20:09 #529 #714800

>>714795
>>714798
Если на connect, компилируется ли, если ты будешь сохранять лямбду в переменную, а просто подставишь эту лямбду в аргумент.

12 Апр, 20:11 #530 #714801

>>714798
Я сейчас коннект и весь кутешный дроч вообще закомментил.

Оно может создать такую лямбду (как auto), но стоит заменить auto на std::function<void()> - начинается потеха.

Ответы>>714802

12 Апр, 20:13 #531 #714802

>>714801
Где-то он пытается вызвать конструктор копий у объекта, полученного из лямбды. Конструктор копий пытается скопировать свои поля, а у value удалённый конструктор копий.

Я это могу объяснить так.

Ответы>>714806

12 Апр, 20:14 #532 #714806

>>714802
Я не понимаю, почему это не работает.
Функции можно присвоить лямбду? Можно. Так какого хрена лямбда не превращается в функцию?

Ответы>>714809>>714810

12 Апр, 20:17 #533 #714809

>>714806
Ты попробовал передавать в connect лямбду, создавая её прямо в аргументах?

Ответы>>714811

12 Апр, 20:17 #534 #714810

>>714806
> Так какого хрена лямбда не превращается в функцию?
http://en.cppreference.com/w/cpp/utility/functional/function/function
Я подозреваю, что вызывается 5-й конструктор:
template< class F >
function( F f );
Initializes the target with a copy of f.

Ответы>>714812

12 Апр, 20:18 #535 #714811

>>714809
Да забей ты на коннект, нет его - он тут вообще не существенен.

Я уже нагуглил. http://stackoverflow.com/questions/25421346/how-to-create-an-stdfunction-from-a-move-capturing-lambda-expression
Нельзя обернуть лямбду в функцию еслю у нее ТОЛЬКО мув без копии.

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

Ответы>>714812>>714814>>714820

12 Апр, 20:19 #536 #714812

>>714811
Ну да. Там написано про >>714810

Ответы>>714816

12 Апр, 20:21 #537 #714814

>>714811
>Ебучий СтраусТруп, гори в аду со своим костыльным блядским поделием, сука!
Который тред ты уже бомбишь?

12 Апр, 20:21 #538 #714816

>>714812
Ну и нахрена они выкатывали эту херню в с++14, если на практике ей пользоваться нельзя?

"Мы дадим вам возможность захватывать контекст в лямбды без копирования! Только без копирования все равно нихуя не работает"

Ответы>>714818

12 Апр, 20:24 #539 #714818

>>714816
>Ну и нахрена они выкатывали эту херню в с++14, если на практике ей пользоваться нельзя?
А когда на практике были классы с конструкторами копий, у которых есть некопируемые поля?

> без копирования все равно нихуя не работает
Если ты избавишься от аддикции от std::function, всё заработает.

12 Апр, 20:26 #540 #714820

>>714811
Это ты неосиливший почитать документацию рак. Еще и жалуется пытясь прицепить то, чего не знает, к qt-шному говноподелию. Иди нахуй.

Ответы>>714824>>714825

12 Апр, 20:27 #541 #714824

>>714820
Рак это ты, обмудок.
А это - обычный ебучий выстрел в ногу, коих тут тысячи.

Ответы>>714828

12 Апр, 20:27 #542 #714825

>>714820
Это местный завсегдатай. Периодически бросается то на STL, то на весь C++

Ответы>>714826

12 Апр, 20:28 #543 #714826

>>714825
крестобляди обосрались, не знают что делать в этом случае и маневрирут?

12 Апр, 20:28 #544 #714828

>>714824
> выстрел в ногу
Школьники услышали где-то термин, но не поняли его смысла и суют теперь где попало. Это как с GOTO в своё время.

12 Апр, 20:32 #545 #714836

>>714834
Это ты даун.

Тебе сказали - как переместить лямбду в функцию? А ты только мычишь животное и на qt стрелки мечешь.

Я за пару минут на stackoverflow раз в 100 больше по делу узнал, чем тут промычали.

Ответы>>714839

12 Апр, 20:34 #546 #714839

>>714836
> А ты только мычишь животное и на qt стрелки мечешь.
> //connect(timer, &QTimer::timeout, lambda2); не компилится сцкпздц

>Я за пару минут на stackoverflow раз в 100 больше по делу узнал, чем тут промычали.
Я тебе правильно ответил ещё до того, как ты SO открыл.

Ответы>>714842

12 Апр, 20:36 #547 #714842

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

На SO есть простыня кода чтобы обойти эту парашу, и я ее сейчас пробую.

А тут только кукарекать горазды.

Ответы>>714849

12 Апр, 20:40 #548 #714849

>>714842
Ты тупорылый даун, который пытается использовать move-only тип как copy-constructable. Это логически не корректная конструкция. Свои кукареку засунь себе в жопу и иди дальше делай свою лабу.

20 Кб, 1306x76

12 Апр, 20:55 #549 #714868

>>714859
>Был вопрос - что с этим делать.
Пикрил

>Пока ты кукарекал и крыльями размахивал - я уже нашел как решить проблему.
Додумался подсунуть Copyable объект в connect? Вот это ты решала.

Ответы>>714874

12 Апр, 20:59 #550 #714874

>>714868
При чем тут коннект? Суть вопроса как сделать функцию из лямбды с захватом.
Я нашел, как сделать перемещаемую лямбду.
>Пикрил
Ну это надо быть эпическим дауном, чтобы не понять, что "какого хуя не работает" эквивалентно "как сделать чтоб работало".

Ответы>>714884

12 Апр, 21:05 #551 #714881

>>714876
На нем написан Qt и qml.
Я хотел взять не цепепе, но там херовый биндинг к qml, конкретно в QVariant не реализованы QVariantMap и QVariantList - то, что часто юзается чтобы внутрь контекста данные пробрасывать.

Есть QAbstractListMode, но с ним много ебли.

Короче, было два стула - ебаться с гуем или ебаться с крестами.

Ответы>>714888

12 Апр, 21:06 #552 #714884

>>714874
>Я нашел, как сделать перемещаемую лямбду.
Чувак, у тебя и так была перемещаемая лямбда. Ты пытался поместить объект, который можно только перемещать, в объект, который можно копировать. Очевидно, что это нельзя сделать никаким образом, но если ты знаешь, что твоя лямбда будет храниться строго в одном экземпляре, то можно сделать хак, написав copyable-обертку и выполнять move в конструкторе копирования. Но что тут сложного, я так и не понял.

>Ну это надо быть эпическим дауном, чтобы не понять, что "какого хуя не работает" эквивалентно "как сделать чтоб работало".
Каким же надо быть эпическим дауном, чтобы не понять, что если хочешь получить вопрос на А, то нужно и спрашивать А.

Ответы>>714889

12 Апр, 21:08 #553 #714888

>>714881
>Юзает QVariant
>не слабоумный

Ответы>>714890

12 Апр, 21:08 #554 #714889

>>714884
> то можно сделать хак, написав copyable-обертку и выполнять move в конструкторе копирования. Но что тут сложного, я так и не понял.
Собсно, это я и сделал.

>Каким же надо быть эпическим дауном, чтобы не понять, что если хочешь получить вопрос на А, то нужно и спрашивать А.
Еще раз - очевидно, что суть вопроса была "как обойти".

Ответы>>714894

12 Апр, 21:09 #555 #714890

>>714888
Изнутри qml абсолютно все - QVariant, додик.

12 Апр, 21:16 #556 #714894

>>714889
Короче, судя по стилю твоего письма, ты весьма малоумный студент третьего курса максимум.
За 5 минут общения с тобой я понял следующее:
- Ты не читаешь документацию
- Ты агришься и обвиняешь всех вокруг в том, что не знаешь того, что написано в документации
- Ты не умеешь ясно формулировать свои мысли и вопросы
- Ты начал работать с инструментом (С++), не изучив его на должном уровне. Я полагаю, что это скорее тенденция, нежели единичный случай, и поэтому твоя жизнь будет довольно сложной и нервной до тех пор, пока ты не поймешь этот простой факт.

Удачи.

12 Апр, 21:20 #557 #714899

В Visual Studio нужно платить за коммерческое использование?

Ответы>>714905

12 Апр, 21:20 #558 #714900

НОВЫЙ ТРЕД
https://2ch.hk/pr/res/714898.html (М)
https://2ch.hk/pr/res/714898.html (М)
https://2ch.hk/pr/res/714898.html (М)

12 Апр, 21:27 #559 #714905

>>714899
https://www.visualstudio.com/support/legal/mt171547 прям первый же пункт.

Ответы>>714912

12 Апр, 21:31 #560 #714912

>>714905
Ничего не понимаю
>If you are an individual working on your own applications to sell or for any other purpose, you may use the software to develop and test those applications.
Раз я пишу сам, я могу использовать для разработки и отладки, окей
А скомпилировать\продать?

Ответы>>714915>>714928

12 Апр, 21:33 #561 #714915

>>714912
>скомпилировать
разработка != компилирование?
>продать
Прямо из VS нельзя продавать, да.

Ответы>>714918

12 Апр, 21:35 #562 #714918

>>714915
Ну хорошо, скомпилировать прогроамму для коммерческого использования я могу
А монетизировать? Может, нужно завяление написать куда-то или еще что, я не хочу чтобы меня потом мс у меян два ляма отсудил
Может, есть хорошая статеечка где-нибудь, поясняющая за лицензии и коммерческое использование компиляторов и иде?

12 Апр, 21:50 #563 #714928

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

13 Апр, 13:18 #564 #715437

В чем разница между VS Comunity и VS Enterprise?

13 Апр, 21:43 #565 #716012

Поцоны не бейте, лучше обоссыте.
Я только начал изучать c++, написал в консоле калькулятор.
В функции main весь код калькулятора. Как сделать её многоразовой? Калькулятор просчитывает одно действие, выдаёт ответ, а затем работа функции завершается.
По ссылке текст кода, если кому интересно.
http://pastebin.com/pR9X0YFS

Ответы>>716507

14 Апр, 14:30 #566 #716507

>>716012
> Как сделать её многоразовой?
Ну ээ цикл?

14 Апр, 19:19 #567 #716785

Программач, как мне накатывать Qt на VS2013? Скачал сам qt c qt.io, скачал оттуда же qt_vs_addin, все поустанавливал, но проекты создавать все еще не могу.

Тред утонул или удален.
Это копия, сохраненная 7 мая 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion