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

Двач.hk не отвечает.
Вы видите копию треда, сохраненную 28 апреля 2016 года.

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

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

1362 Кб, 960x632

Оффициальный™ традиционный® C++ тред #28 29 Мар, 17:34 #702133 В конец треда | Веб

В крестотред ньюфаг пришел
И спросил: "Антоха,
Как мне кодить хорошо
И не кодить плохо?" -

"У меня секретов нет -
Расскажу, что знаю," -
Анонимуса ответ
В шапке помещаю:

"Кто пихает грязный хак
В лабу воровато,
Тот бездельник и дурак,
Быть им плоховато.

Кто бандитов четырех
Вспомнит даже ночью,
У того весь код неплох
Абсолютно точно.

Кто о тактах не слыхал,
С asm'ом кто не дружен,
У того не код, а кал -
Здесь такой не нужен.

Этот - старый байтоеб,
Бородой заросший.
От крестов он хмурит лоб,
Но пишет код хороший.

Этот - макросы подряд
Лепит без оглядки.
Про такого говорят -
Он грязнуля, гадкий.

Тот - Макконнелла прочел,
Код свой правит вечно.
Из такого выйдет толк,
Сомневаться нечего.

Правила у нас просты,
Помните, нюфани:
Не осилит тот кресты,
Кто халтурить станет..."

Не дослушав, нуб ушел,
Прошептав со вздохом:
"Быть макакой хорошо,
А крестоблядком - плохо".

Старший брат: >>683573 (OP)
Предыдущий: >>696401 (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/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/

Ответы>>702272>>703529>>704623>>706790

21 Кб, 686x356

29 Мар, 18:27 #2 #702205

Ответы>>703071

138 Кб, 400x553

29 Мар, 18:28 #3 #702206

Освещаю тред богом.

Ответы>>702207

29 Мар, 18:29 #4 #702207

>>702206
А это тут при чём?

29 Мар, 18:57 #5 #702236

Посоны, как правильно вкатываться в геймдев?

Есть текущая работа (100к+) в ДС, но она связана с промышленной автоматизацией. В геймдев вакансии все - ЮНИТИ ХУЮНИТИ, Сишарп и прочая блевота, а я, все таки, не зря байты ебу. Да и ААА пишется на плюсах.

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

Ответы>>702242>>702247>>702308>>707462

29 Мар, 18:59 #6 #702242

>>702236
Переехать в страну где делают игры.

29 Мар, 19:01 #7 #702247

>>702236
чувак
твоя работа в 10 раз лучше той чем тебе придется заниматься в русском игрострое
просто поверь
занятия типа портировать очередную ios игрулю на андроид или сидеть на саппорте второго уровня какой-нибудь mmorpg - это еще не самое страшное что бывает в нашем геймдейве

Ответы>>702283

29 Мар, 19:05 #8 #702255

аноны.. такая фигня..

задал вопрос..
>>699323

тут идет флудответ про ссылку седа https://linuxtv.org/downloads/v4l-dvb-apis/capture-example.html
так как этот код работает только на лине! а у меня нихуя не линь и эта либа идет нахуй!
что делать.

зы есть /dev/video0 нужно пик стащить (можно пик стащить и скриптом но консольно!) это треш! я не ебу почему все на линь молятся! говно без задач же!

Ответы>>702282>>702855

14 Кб, 442x331

Вкатился 29 Мар, 19:13 #9 #702272

>>702133 (OP)
У меня пара вопросов:

1. Как по хардкору WinAPI выучить? Чего почитать/посмотреть. Книги может годные какие есть? Ну так, чтобы сегодня читать сел, а через месяц уже в кнопочки/менюшки мог.

2. Чего учить - Direct3D или OpenGL?

Ответы>>702279>>702287

117 Кб, 1680x1050

sage 29 Мар, 19:14 #10 #702279

>>702272
> OpenGL
кросплотформенно вырастешь -- поймешь

Ответы>>702316

sage 29 Мар, 19:16 #11 #702282

>>702255
> операционные системы обсуждаются в /s/

Ответы>>702291

29 Мар, 19:16 #12 #702283

>>702247
Я планирую год помариноваться для портфолио и за бугор валить. Без опыта не возьмут. Вот и думаю.

Ответы>>702288>>702304>>702312

29 Мар, 19:17 #13 #702287

>>702272
1. Бессмысленно, т.к. никто на винапи кнопочки менюшки не делает уже сто лет как. А вообще Рихтера почитать для общего развития полезно.

2. Opengl

Ответы>>702324

29 Мар, 19:18 #14 #702288

>>702283
А геймдеф зачем тогда?

sage 29 Мар, 19:19 #15 #702291

>>702282
я тебе говорю не о системе.. читай весь пост.
как мне стащить пик с потока типо /dev/video0 без v4l2
уже принимается любой способ от qt до чего vlc
осбатхерт мой.. ну прости!

Ответы>>702295>>702314

29 Мар, 19:21 #16 #702295

>>702291
Сажу выключи, мудило. На самом деле тут наверно никто не знает ответ. Иди на СО, тостер, ЛОР.

Ответы>>702301

29 Мар, 19:24 #17 #702301

>>702295
тут поумнее люди бывают чем в твоем списке..
%я уже вырос из него малясь%%

29 Мар, 19:25 #18 #702304

>>702283
ну так свалить в йоба-геймдев контору хочу какую-нибудь.

Ответы>>702307

29 Мар, 19:26 #19 #702307

>>702304
А они возьмут хуя который год в техподдержке рашкинско сидел?

29 Мар, 19:27 #20 #702308

>>702236
го вместе напишем игру
я адекват вроде.. сажу убираю

Ответы>>702311>>702363

sage 29 Мар, 19:28 #21 #702311

>>702308
мимо у меня есть наработочки по оптимизации графона
хочу в портфолио его..

29 Мар, 19:28 #22 #702312

>>702283
Тогда пили свой мега-ёба-ультра-анлимитед-дитейл-воксел-рендерер, для портфолио звучит убедительнее.

Ответы>>702316

29 Мар, 19:28 #23 #702314

>>702291
ffmpeg тебе чем не подходит?

Ответы>>702318

sage 29 Мар, 19:29 #24 #702316

>>702312
вот он же
>>702279

sage 29 Мар, 19:30 #25 #702318

>>702314
там также идет через v4l2
и она платформозависима как директикс!

Ответы>>702417

29 Мар, 19:30 #26 #702319

Тут кстати недавно какого-то игродела по имени pufzle искали или как-то так. Нашли?

29 Мар, 19:34 #27 #702324

>>702287
>Рихтера
А что конкретно, чтобы можно было писать под XP без использования .Net Framework. В моем гугле гуглятся книги только по C# и .Net

Ответы>>702365

29 Мар, 19:58 #28 #702363

>>702308
как ты себе это представляешь? (без шуток, я просто правда не понимаю)

Ответы>>702375>>702851

29 Мар, 19:59 #29 #702365

>>702324
Для большей части софта достаточно стандартной библиотеки и пары спецлиб.

Для всего-на-свете есть qt, для гуя есть fltk, sciter framework, Awesomium, да хуева гора всего. Без .Net

sage 29 Мар, 20:06 #30 #702375

>>702363
на С++ пишем рендер + физику и пару карт на рисуем
код будем держать на гите..
обсудить все аспекты в токсе.
я начал пока рендер писать.. смотрю вот как мои знания термеха вложить в вертексный шейдер и написать модель маниямира для 6ти степеней свободы для каждой модельки.
такие дела..
потом сеть... звук гденить спиздить.
потоки стабилизировать. и вуаля.. програмач тестит q5-hl3-aninemod

Ответы>>702436

29 Мар, 20:38 #31 #702417

>>702318
Какую-то хуйню несёшь: читать из /dev/video0 по-твоему не платформо зависимо?

694 Кб, 245x180

29 Мар, 20:50 #32 #702436

>>702375
> термех
> вертексный шейдер

Ответы>>702457

29 Мар, 20:58 #33 #702449

Посоветуйте хороший редактор для C/C++. Нужен чтоб консольный, autocomplete, легко ставился.

YouCompleteMe, cppcomplete под vim пробовал. Eclipse и всю эту java не предлагать pls.

Думаю юзать YouCompleteMe, но наверное есть что-от лучше.

Ответы>>702555>>702629>>702658

29 Мар, 21:07 #34 #702454

в том то и дело что в /dev/video0 идет все по гайду а в v4l2 только линупс.. всё!

sage 29 Мар, 21:08 #35 #702457

>>702436
ну я что-то не так сказал? угловые позиции -- результат знаний термеха
матрицы поворотов -- идут в вертексный шейдер
логику собери в кудак

29 Мар, 22:27 #36 #702555

>>702449
Microsoft Visual Studio 2015 + Resharper C++.
Лучше нет ничего. Даже если ты красноглазик.

На работе я один сижу в Студии, все остальные в виме. Бедняги.

Ответы>>702557>>702657>>702828

29 Мар, 22:28 #37 #702557

>>702555
а, я проебал слово консольный. Тогда лишь могу рекомендовать выкинуть нахуй консоль и вступить в 21ый век.

Ответы>>702632>>702828

29 Мар, 23:39 #38 #702629

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

29 Мар, 23:42 #39 #702632

>>702557
>выкинуть нахуй консоль и вступить в дерьмо
Пофиксил тебя.

Ответы>>702660>>702828

30 Мар, 00:07 #40 #702651

Может стоит не тут спросить, но: чем отличается watch и star на гитхабе? Звёздочка - это просто лойс как бы, да?

Ответы>>702652

30 Мар, 00:09 #41 #702652

>>702651
В чем отличие лайка от фоллова в любой другой социалке?

Ответы>>702815

30 Мар, 00:16 #42 #702657

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

Ответы>>702828

30 Мар, 00:18 #43 #702658

>>702449
На больших проектах(от 400МБ исходников) eclipse и clion будут жрать до 6GB. В сочетании с ssd тебя это полностью устроит - никаких зависаний не будет.

Ответы>>702662>>702828

30 Мар, 00:18 #44 #702660

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

30 Мар, 00:20 #45 #702662

>>702658
> от 400МБ исходников
Это как? Что это должен быть за проект, чтобы в нём было 400 МБ исходников?

Ответы>>702664>>702666

30 Мар, 00:21 #46 #702664

>>702662
наукоемкие йоба-тулы как нехуй делать преодолевают этот порог.

30 Мар, 00:27 #47 #702666

>>702662
>702658
> от 400МБ исходников
>Это как? Что это должен быть за проект, чтобы в нём было 400 МБ исходников?

Почти 400 мегабайт текста в проекте в котором работаю. Игра для пека.

Ответы>>702667>>702668

30 Мар, 00:27 #48 #702667

>>702666
>702662
>702658
> от 400МБ исходников
>Это как? Что это должен быть за проект, чтобы в нём было 400 МБ исходников?
>Почти 400 мегабайт текста в проекте в котором работаю. Игра для пека.

>>702666
>702662
>702658
> от 400МБ исходников
>Это как? Что это должен быть за проект, чтобы в нём было 400 МБ исходников?
>Почти 400 мегабайт текста в проекте в котором работаю. Игра для пека.

Не считая вспомогательных тулз естественно.

30 Мар, 00:28 #49 #702668

>>702666
Чо за игра?

Ответы>>704386

30 Мар, 00:28 #50 #702670

Вон в ядре линукса вообще 750MB текста

Ответы>>702672>>702678

30 Мар, 00:29 #51 #702672

>>702670
Во фряхе вообще 1.0G

30 Мар, 00:31 #52 #702675

В codelite - 383MB

Ответы>>702676

30 Мар, 00:31 #53 #702676

>>702675
Не, пижжу - 254MB

30 Мар, 00:34 #54 #702678

>>702670
У меня 640.

Ответы>>703350

29 Кб, 220x444

30 Мар, 00:38 #55 #702683

хуясе знатоки повылезали

Ответы>>702684

30 Мар, 00:40 #56 #702684

>>702683
Так не чистые сырцы, наверное. А собранные.
Я могу .git добавить к этому, будет 2 гига вообще.

Ответы>>702686

30 Мар, 00:41 #57 #702686

>>702684
Не собирал. Только читал, лол
du -ch -I .git .

Ответы>>702688

30 Мар, 00:42 #58 #702688

>>702686
>du -ch -I .git .
du: invalid option -- 'I'
Гм.

Ответы>>702691

30 Мар, 00:42 #59 #702689

Подскажите, сложно найти работу в C++ среде? Реквестирую success stories.
Сам я с 2.5 годами опыта.
мимо-ищу-уже-неделю

Ответы>>702891

30 Мар, 00:43 #60 #702691

>>702688
Попробуй --exclude вместо "-I"

Ответы>>702692

30 Мар, 00:45 #61 #702692

>>702691
[~/sources/linux]
user@host $ du -s --exclude=.git
1.2G.

Ответы>>702694

32 Кб, 421x607

30 Мар, 00:46 #62 #702694

>>702692
При этом

Ответы>>702696

30 Мар, 00:47 #63 #702696

>>702694
Походу ты как раз и собрал его.

Ответы>>702699

30 Мар, 00:50 #64 #702699

>>702696
Нит:
[~/sources/linux]
user@host $ make mrproper
CLEAN scripts/basic
CLEAN scripts/kconfig
CLEAN include/config include/generated
[~/sources/linux]
user@host $ du -s --exclude=.git
1.2G.

Ну и как ты объяснишь 642.6 МБ через гуй?

У меня подозрение, что du считает ещё и директории. А гуй — только размер файлов.

30 Мар, 01:04 #65 #702706

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

Ответы>>702708

30 Мар, 01:06 #66 #702708

>>702706
-P, --no-dereference
don't follow any symbolic links (this is the default)

Ответы>>702712

30 Мар, 01:13 #67 #702712

>>702708
>702706
>-P, --no-dereference
>don't follow any symbolic links (this is the default)
Алиас на комнду в шелле?
Если нет, то ита бах. Репорть, пофиксь, вот это все.

Ответы>>702713

30 Мар, 01:15 #68 #702713

>>702712
Короче, вот
[~/sources/linux]
user@host $ du -s --apparent-size --exclude='.git'
613M.

Ответы>>702717

30 Мар, 01:22 #69 #702717

>>702713
>Короче, вот
>[~/sources/linux]
>user@host $ du -s --apparent-size --exclude='.git'
>613M\t.

Мне кажется, у тебя на диске охуительная фрагментация.

Ответы>>702719

30 Мар, 01:23 #70 #702719

>>702717
А при чём тут фрагментация? Просто дохрена мелких файлов при размере блока в 4 килобайта.

Ответы>>702722

30 Мар, 01:30 #71 #702722

>>702719
>702717
>А при чём тут фрагментация? Просто дохрена мелких файлов при размере блока в 4 килобайта.

Так это же определение фрагментации. Оставшееся место на диске не используется для хранения других файлов.

Ответы>>702723>>702724

30 Мар, 01:31 #72 #702723

>>702722
>на диске
*В блоке
Это тот же механизм, что и paging

30 Мар, 01:32 #73 #702724

>>702722
>Так это же определение фрагментации.
Ну разве что internal.
Вроде ext не умеет паковать несколько файлов в один блок.

Ответы>>702728

30 Мар, 01:36 #74 #702728

>>702724
>Ну разве что internal.
А какие еще бывают?

Ответы>>702731

30 Мар, 01:37 #75 #702731

>>702728
Ну когда у тебя данные нелинейно на диске размазаны.

Ответы>>702732

30 Мар, 01:39 #76 #702732

>>702731
>Ну когда у тебя данные нелинейно на диске размазаны.
А, понял. Кстати ext4 не умеет block suballocation

30 Мар, 07:45 #77 #702815

>>702652

А, вот оно что. Спасибо.

30 Мар, 08:40 #78 #702828

>>702555
>>702557
>>702632
>>702657
>>702658

Бляха-муха все самому писать приходится. Этож пиздец, почему нормальную ide не запилили блять еще? Буду eclipse пользовать, тогда.

И я не только красноглазик, а еще БэЭсДэшник, бля.

Ответы>>702831>>702855

30 Мар, 09:08 #79 #702831

>>702828
Kdevelop

Ответы>>702835

30 Мар, 09:16 #80 #702835

>>702831
Заценю немного позже. Спасибо

30 Мар, 10:04 #81 #702851

>>702363
так что чувак? ты где?
мыло оставь, хоть попробуем

30 Мар, 10:10 #82 #702855

>>702828
оо, бсдшник..
помоги ме с этим!
>>702255

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

Ответы>>702884>>702885

30 Мар, 11:37 #83 #702884

>>702855
Интересно. Не сталкивался с этой задачей, но гугол дает линк https://forums.freebsd.org/threads/19127/
Советуют через mplayer
mplayer tv:// -cache 128 -tv driver=v4l2:width=640:height=480:device=/dev/video0 > /dev/null 2>&1

Но это скорее всего хуйня. Есть мысль копать сорсы webcam прог. Но это платформ-зависимо будет.

Ответы>>702933

30 Мар, 11:38 #84 #702885

>>702855
>/dev/video0 без v4l2
туплю.

Ответы>>702933

30 Мар, 11:51 #85 #702891

>>702689
Устроился по блату на 113 тысяч в ДС с опытом работы полгода (пхпшником лал).

Сделал правильно тестовое (1 из ~50 кандидатов, серьезно), потому-что эйчарка спалила мне, что на нем будет (я эту тему поучил пару дней). Прошел 2 собеса, второй был на английском. Ну и взяли. Сижу уже 4 месяца нихуя не делаю вообще, т.к. ждем, пока проект нам отдадут.

30 Мар, 12:22 #86 #702906

http://ideone.com/BPBcyT

что бы блять в конце не ставил
и system("pause")
и cin.get();
и даже _getch();
постоянно ебанная ошибка
"Вызвано исключение по адресу 0хсссссссссс(ntdll.dll)
Нарушение прав доступа при чтении по адресу 0хсссссссссс"

что у меня не так бл?

Ответы>>702915>>704802

30 Мар, 12:33 #87 #702915

>>702906
даже если убираю все это всеравно эта ошибка

Ответы>>702938

30 Мар, 13:11 #88 #702933

>>702885
>>702884
в принципе utox цепляет камеру в бсд, но смотреть как это в utox сделано -- крайняя мера т.к. тогда срок работы разрастется в недели!
qtlibs не жует видеопоток с камеры. сейчас в поисках гайда от дивелопероа webcamd эти ребята хотябы /dev/video* намутили.. должны же они изигайд оставить!

189 Кб, 1680x1050

30 Мар, 13:17 #89 #702938

>>702915
бляя!! что за нахер??!!

Ответы>>702942

188 Кб, 1680x1050

30 Мар, 13:19 #90 #702942

>>702938
так.. сссоре.. анализатор отвалился..
билд комплит же!

Ответы>>702944>>704778

30 Мар, 13:21 #91 #702944

>>702942
билд компилит, ошибка на system("pause")
0xC0000005: Нарушение прав доступа при чтении

вот полный код!
http://pastebin.com/PwtES5pB

тут ошибка на 118 строке вышеуказанная..

Ответы>>702947>>702952

188 Кб, 1680x1050

30 Мар, 13:24 #92 #702947

>>702944
>д компилит, ошибка на system("pause")

и рабит, прикинь!
system -- это ты кидаешь команду в шел

Ответы>>702948>>702971

28 Кб, 557x316

30 Мар, 13:28 #93 #702948

>>702947

где?

Ответы>>702950>>702952

30 Мар, 13:31 #94 #702950

>>702948
Енжой ёр сипипи

30 Мар, 13:32 #95 #702952

>>702944
>>702948
крч.. ща я буду батхетить о мелко мягктих
ставь qtcreator + mingw
не еби себе мозг! чисто MSstudio херня
зы.. вопросик уровня lab1, вангую ошибка вылетает в дебагере, а бинарь ты не пробовал запустить, а он рабочий

Ответы>>702953>>702954>>702967

30 Мар, 13:35 #96 #702953

>>702952
и добавлю о
char *a;
cin >> a;

28 Кб, 1190x425

30 Мар, 13:35 #97 #702954

>>702952
хреновая из тебя ванга

Ответы>>702955

30 Мар, 13:36 #98 #702955

>>702954
это я бинарь запустил

Ответы>>702960

30 Мар, 13:38 #99 #702957

бам

Ответы>>702960

30 Мар, 13:39 #100 #702960

>>702955
это справа или за окнами??
бля ты заебал вайпать тред со мной!
я просто хочу прочитать qr код вебкамерой в frebsd

>>702957
А ТЫ ВООБШЕ ВЫПЕЛИСЬ В ОКНО! БЛЯ
У МЕНЯ ТОТАЛЬНЫЙ ПИЗДЕЦ АНОНА А ТЫ БЛЯ ВАЙПАЕШЬ ЛЮБИМЫЙ ТРЕД. ЗДОХНИ!!!!111АДИН!11

Ответы>>702963

46 Кб, 1180x635

52 Кб, 997x343

30 Мар, 13:45 #101 #702963

>>702960
вот я еще раз отправлю

30 Мар, 13:54 #102 #702967

>>702952
>Совет на heap corruption - сменить компилятор?
Ты совсем отбитый?

Ответы>>702983

30 Мар, 13:59 #103 #702971

>>702947
>ifstream rstream("test.txt")
>ofstream wsteram("test.txt")
Проиграл

Ответы>>702975>>702983

30 Мар, 14:02 #104 #702975

>>702971
простите, а не соизволите уточнить, уважаемый(нет), с чего именно вы проиграли?

Ответы>>702977>>702983

30 Мар, 14:04 #105 #702977

>>702975
fstream

Ответы>>702979

30 Мар, 14:05 #106 #702979

>>702977
а вы я так понимаю ostream-бог ?

Ответы>>702983

30 Мар, 14:07 #107 #702983

>>702967
>>Совет на heap corruption - сменить компилятор?
>Ты совсем отбитый?
ну да.. проеб

cin.get();
рабочий варик 100% хули он пиздит?

char *a;
cin >> a;
рабочий варик пусть и не тот

бля.. да для hallloword в гуголе гляни и также ебани!

>>702971 лол.. не читал даже до system pause.. так проскролил..

>>702975
с того что ты ебаный обфускатор, вот с чего,
>>702979
бля! когда ты сьебешь туда откуда прикатился? на типичного программиста своего

30 Мар, 14:16 #108 #702989

1. Выкинь нахуй ввод матриц с клавиатуры, ты что отбитый там? Вводишь ручками в файле и передаешь файл как аргумент программе - вот так делают белые люди.

2. Вместо "using namespace std;" делай "using std::cout;"

3. <conio.h> выкинь нахуй.

4. "delete[] dblPtA;" выкинь нахуй, используй unique_ptr

5. Инкапсулируй матрицы в классе, не плоди убожество.

6. Вместо system("pause") юзай std::cin.get(), как сказал товарищ выше.

Ответы>>702990>>703175>>703225

30 Мар, 14:18 #109 #702990

>>702989
> 2. Вместо "using namespace std;" делай "using std::cout;"
> 6. Вместо system("pause") юзай std::cin.get(), как сказал товарищ выше.
В чем разница? Я новенький.

Ответы>>702993

30 Мар, 14:22 #110 #702993

>>702990
>2
Ты переносишь все имена из ::std в неймспейс ::. Если захочешь написать свою функцию sort, тебя ждет сюрприз.

>6
system("pause) платформозависимое говно, которое дергает внешнюю программу через систему. Нахуя этим заниматься, когда нужно просто дождаться ввода любого символа в stdin, что прекрасно делает .get() в istream?

Ответы>>703006

30 Мар, 14:30 #111 #702998

Кстати на счет Рихтера, кто-нибудь его читал строго от начала до конца?
К чему там всякие файлы манифестов, ебала со структурами безопасности. Все эти флаги, ну нахуй они? ИРЛ их кто-то использует? Там ведь все в общем заключается, что твой процесс имеет/нет право что-то читать/записывать, доступ к объектам ядра и т.д. Вот это вот нахуя так подробно все описывать, поясните, кто знает.

Ответы>>703013>>704661

30 Мар, 14:53 #112 #703006

>>702993
На счет 6 понятно, а 2 делает тоже самое, но работает всегда безотказно, так?

Ответы>>703011

30 Мар, 15:00 #113 #703011

>>703006
первое тоже рабтает без отказно.
просто там будет небольшой полипоебизм..морфизм..

Ответы>>703017

30 Мар, 15:06 #114 #703013

>>702998
Я читал. Для общего развития полезно очень.

30 Мар, 15:22 #115 #703017

>>703011
Если сигнатура будет совпадать, то будет стремная ошибка компиляции.

Ответы>>703020

41 Кб, 876x300

30 Мар, 15:26 #116 #703020

>>703017
Классический пример.

Ответы>>703028

30 Мар, 15:48 #117 #703028

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

30 Мар, 17:02 #118 #703071

>>702205
И такие редкие экземпляры есть? Вау!

30 Мар, 19:17 #119 #703175

>>702989
Я тебя правильно понял ?
using std::cout;
using std::cin;

Ответы>>703194

30 Мар, 19:33 #120 #703194

>>703175
Да.

Ответы>>703223

30 Мар, 19:55 #121 #703223

>>703194
lol

30 Мар, 19:56 #122 #703225

>>702989
> вот так делают "белые" люди не знающие про пайпы

30 Мар, 21:27 #123 #703323

Есть два стула...

Нужно хранить массив объектов разных типов. Все нужные типы заранее известны, их кострукторы тривиальны.

Что лучше использовать boost::any или свой костыль с union и флагами?

Ответы>>703398>>703483>>703569

362 Кб, 486x467

30 Мар, 22:03 #124 #703350

>>702678
640 хватит каждому, базарю.

30 Мар, 22:42 #125 #703398

>>703323
>Нужно хранить массив объектов разных типов. Все нужные типы заранее известны, их кострукторы тривиальны.
костыль, обычно, хуже

30 Мар, 23:56 #126 #703483

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

Ответы>>703761

338 Кб, 1279x932

31 Мар, 00:28 #127 #703529

>>702133 (OP)
Помогите начинающему
setlocale в правильное место вписываю?

Ответы>>703537>>703574>>703650>>704164>>705070

31 Мар, 00:39 #128 #703537

>>703529
В правильное же. А в чем проблема?

Ответы>>703541

31 Мар, 00:42 #129 #703541

>>703537
Да ни в чём, просто не уверен.
Решил сегодня таки развернуть свёрнутую ещё в январе книгу и попытаться в погромирование с нуля

31 Мар, 01:14 #130 #703569

>>703323
QVariant

31 Мар, 01:29 #131 #703574

>>703529
>setlocale в правильное место вписываю?
Ею вообще пользоваться не очень правильно. Но почему — расписывать лень.

Ответы>>703577

31 Мар, 01:31 #132 #703577

>>703574
Русек нинужин, или что?

Ответы>>703578

31 Мар, 01:34 #133 #703578

>>703577
Может и нужен, но сама идея локалей в стандарте зделана через одно место.

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

Ответы>>703582

31 Мар, 01:50 #134 #703582

>>703578
>рюзке язык
Задетектил в тебе пассивно-агрессивного хохла.

Так что не так-то с локалями в стандарте?

Ответы>>703584

31 Мар, 01:52 #135 #703584

>>703582
>Задетектил в тебе пассивно-агрессивного хохла.
Пора тебе лечить детектор.

> Так что не так-то с локалями в стандарте?
Всё не так.

31 Мар, 07:34 #136 #703650

>>703529
ЛАБЫ ИДУТ НА ХУЙ

Ответы>>703669

31 Мар, 08:27 #137 #703659

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

Ответы>>703665

31 Мар, 08:45 #138 #703665

>>703659
Помню пересел с RAD Studio на чистые кресты и охуел, вместо пары вызовов стандартной библиотеки я должен был обмазываться гигабайтами бустов, сотнями говнобиблиотек и тысячами строк велосипедов вокруг апи, а вместо гуя только сосноль и хуй за щекой.

Ответы>>703684

31 Мар, 08:48 #139 #703669

>>703650
Что это такое, лул

Ответы>>703684

31 Мар, 09:26 #140 #703684

>>703665
Открой для себя Qt вместо помойного vcl, удивишься.

>>703669
Ето ти ди нах са сваими лабами))

Ответы>>704537

31 Мар, 11:16 #141 #703761

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

Хотя вроде можно без утечек сделать. Попробую так.

Ответы>>703763>>703773

31 Мар, 11:18 #142 #703763

>>703761
Всмысле, пусть будет массив указателей.

31 Мар, 11:36 #143 #703772

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

Ответы>>703779

31 Мар, 11:40 #144 #703773

>>703761
Что, блядь? А пул под каждый тип завести не судьба?

Ответы>>703796

31 Мар, 11:49 #145 #703779

>>703772
Тусуйся ИТТ, висни на ньюфагах с лабами, умоляй дать на аутсорс.

Ответы>>703941

31 Мар, 12:13 #146 #703796

>>703773
Как я раньше не догадался.

31 Мар, 13:32 #147 #703852

Куда библиотеки кидать, чтобы через #include вызавать ?vs15

Ответы>>703897

31 Мар, 14:23 #148 #703897

>>703852
Куда хочешь. Нужно только в настройках потом их подключить.

Ответы>>703903

31 Мар, 14:26 #149 #703899

Посоны, есть кто обмазывался http://beginners.re/ ? Коллега посоветовал для понимания С++ (я и сам подобного рода материал искал (оптимизация, распределение памяти, как работает программа, вот это всё). Вопрос в том норм ли мне зайдёт (с цпп более-менее дружу), если я не знаю ассемблера, даже все РОН не вспомню?

Ответы>>703905>>703925

31 Мар, 14:30 #150 #703903

>>703897
>>703897
Пнятно, как их подключить ?
Говно, мне анон посоветовал eclipse, а эта программка не запускается совсем, пишет :java was started but returned exit code=13

Ответы>>703993>>704084

31 Мар, 14:31 #151 #703905

>>703899
Достаточно про стэк/хип знать

Ответы>>703908

31 Мар, 14:33 #152 #703908

>>703905
Это ты для чтения этой книги имеешь ввиду или этого достаточно вместо неё, лол?

Ответы>>703910

31 Мар, 14:36 #153 #703910

>>703908
Лол, для чтения книги. А так я сам пропускал части с arm/mips (не моя специализация), так что за них ничего сказать могу.

31 Мар, 14:49 #154 #703925

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

31 Мар, 15:07 #155 #703941

>>703779
можешь дать годных линков.. а то на хх только пхп жаба и 1с

31 Мар, 15:50 #156 #703993

>>703903
> Говно, мне анон посоветовал eclipse, а эта программка не запускается совсем, пишет :java was started but returned exit code=13
Сам решил проблему.
> Пнятно, как их подключить ?
bump

31 Мар, 16:55 #157 #704082

Пездюки, может кто нибудь пояснить с хуя ли string& копируется? И почему проблема решается именно константной ссылкой?
И почему это настолько гениальная проблема, что в 17-м стандарте добавили string_view

Ответы>>704088>>704091

31 Мар, 16:55 #158 #704084

>>703903
> Пнятно, как их подключить ?
Читай в документации к твоему компилятору/IDE.

31 Мар, 16:56 #159 #704088

>>704082
>Пездюки, может кто нибудь пояснить с хуя ли string& копируется?
Покажи код.

31 Мар, 16:56 #160 #704091

>>704082
Когда копируется?

25 Кб, 593x224

31 Мар, 17:00 #161 #704101

аноны, помогите, треда по C не нашел, поэтому спрашиваю здесь. читаю k&r главу 1.9, в ней написана функция getline, которая записывает строку в массив s[] размером lim, в конце строки добавляя \n и \0.
собственно вопрос, почему массив не переполняется? допустим, создаем массив arr[5]; записываем в массив, пока i<lim-1, т.е. i от 0 до 3 (4 элемента в массиве), когда i=4, выходим из цикла и помещаем \n в 4(последний) элемент массива, а для нуля места не остается

Ответы>>704104>>704118>>704662

31 Мар, 17:01 #162 #704104

>>704101
> треда по C не нашел
В шапке:
Старший брат: >>683573 (OP) (OP)

31 Мар, 17:05 #163 #704118

>>704101
> записываем в массив, пока i<lim-1
Да. При этом очередного с = getchar() не выполнится.
> выходим из цикла и помещаем \n
Условие c == \n не выполняется.

Ответы>>704124

31 Мар, 17:12 #164 #704124

>>704118
наконец-то до меня дошло, пиздец я тупой. спасибо

31 Мар, 17:26 #165 #704146

https://blogs.msdn.microsoft.com/vcblog/2016/03/30/visual-c-for-linux-development/

Ответы>>704157

31 Мар, 17:34 #166 #704157

>>704146
Ахуеть, на прыщах наконец-то появится нормальная ide! лол

Ответы>>704158

31 Мар, 17:35 #167 #704158

>>704157
Ты не понял. VS как была на винде, так и остаётся.
Этот плагин позволяет по ssh посылать сорцы на удалённую linux-машину и там собирать. Вроде поддерживает удалённую отладку.

Ответы>>704163

31 Мар, 17:38 #168 #704160

Анончики, помогите. Как мне лучше ограничить мой game loop? Проблема в том, что он юзает целое ядро проца, а sleep, как я понял, получает минимальное время на задержку и его использовать нельзя. Как быть?

Ответы>>704232

1749 Кб, 800x600

31 Мар, 17:39 #169 #704163

>>704158
Мне лень читать, но я вижу визуал студию на убунте.

Ответы>>704165>>704169

31 Мар, 17:39 #170 #704164

>>703529
Охуенно. По памяти написал хело ворлд! С 10й попытки, с подсказками дебагера (или как там его), но написал!
Я теперь программист.

31 Мар, 17:40 #171 #704165

>>704163
>я вижу визуал студию на убунте.
У тебя галлюцинации. =)

31 Мар, 17:42 #172 #704169

>>704163
нет, это VS на винде, с remote билдом

Ответы>>704178

6 Кб, 256x144

31 Мар, 17:51 #173 #704178

>>704169
Ну вот же убунту.

Ответы>>704194

1082 Кб, 1366x768

31 Мар, 18:03 #174 #704194

>>704178
А вот рач. Дальше что?

Ответы>>704206

31 Мар, 18:10 #175 #704206

>>704194
Откуда на той гифке взялась убунта?

Ответы>>704211

31 Мар, 18:16 #176 #704211

>>704206
Бля. Ну показали они, что прога запустилась удалённо в убунте, хотя они кодят с винды.

31 Мар, 18:43 #177 #704232

>>704160
Чем ты говоришь sleep плох?

Ответы>>704296

31 Мар, 19:28 #178 #704296

>>704232
ну если у меня есть

current = time()
// Что-то делаю
sleep(1000/60 - (time() - current)),

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

Ответы>>704298

31 Мар, 19:34 #179 #704298

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

Ответы>>704435

8 Кб, 381x381

31 Мар, 20:24 #180 #704348

Пацаны, компилятор оптимизирует такую хуитку или надо выносить за цикл?

Ответы>>704408>>704420>>704427>>704449>>704461

31 Мар, 20:37 #181 #704386

>>702668
Симулятор.

31 Мар, 20:49 #182 #704405

http://ideone.com/0ZZ68E
1. Строчка №8 передача shared_ptr по значению - норм? На передачу по ссылке ругается.
2. Верно ли я понимаю, что унаследовав от этого класса например класс двунаправленного узла, все методы текущего будут не юзабельны, ибо shared_ptr<Mono<int>> не будет конвертироваться/интрепретироваться в shared_ptr<Bi<int>> ?

Ответы>>704430>>704451>>704527

31 Мар, 20:51 #183 #704408

>>704348
Оптимизирует. Не оптимизировал бы, если бы size() был не const методом.

Ответы>>704410>>704411

31 Мар, 20:54 #184 #704410

>>704408
А если мы изменим размер вектора в цикле?

31 Мар, 20:55 #185 #704411

>>704408
Хотя нет, туплю. Оптимизировать не будет, если в теле цикла вызывается не const метод, и класс не темплейтный, его определения не видно. Тогда компилятор не может сделать вывод, что size не меняется.

31 Мар, 21:09 #186 #704420

>>704348
Никогда не надейся на оптимизатор. Просто не создавай себе вредных привычек.

Ответы>>704421

31 Мар, 21:10 #187 #704421

>>704420
Так что? Всегда size вмести с i объявлять?

Ответы>>704428

31 Мар, 21:14 #188 #704427

>>704348
http://stackoverflow.com/questions/8612827/performance-of-stdvector-c-size-inside-loop-in-member-function

31 Мар, 21:15 #189 #704428

>>704421
Здесь auto поможет.

153 Кб, 681x944

31 Мар, 21:19 #190 #704430

>>704405
бамп

31 Мар, 21:20 #191 #704435

>>704298
А если зациклить вызов функции которая запоминает время своего последнего "удачного" ретунра и если достаточно времени не прошло, то выполняет какие-то полезные для игры действия типа расчёта физики, а если время наступило, то рисует новый кадр. В случае отрисовки кадра делает "удачные" ретурн иначе "неудачны". Как обычно игры делают? В какой простой игре посмотреть как это сделано? Дум слишком большой. Мимо проходил.

31 Мар, 21:40 #192 #704449

>>704348
> 2016
> индекс типа int

Ответы>>704453

31 Мар, 21:43 #193 #704451

>>704405
Ты уверен, что тебе нужен shared_ptr?

Ответы>>704466

31 Мар, 21:44 #194 #704453

>>704449
Быстрее писать, чем size_t.

Ответы>>704455

31 Мар, 21:46 #195 #704455

>>704453
А char[255] быстрее, чем string?

Ответы>>704467

31 Мар, 21:48 #196 #704461

>>704348
С вероятностью 146% v.size() заинлайнит и код превратится в i < v.__size, прям как с отдельной переменной.

Ответы>>704477

31 Мар, 21:53 #197 #704466

>>704451
Нет. Но если нода проебется?

Ответы>>704470

31 Мар, 21:55 #198 #704467

>>704455
Так же. Но привык к char[].

31 Мар, 21:56 #199 #704470

>>704466
Для чего вообще нодам владеть указателями? Нода должна быть в нескольких списках одновременно?

Ответы>>704476

31 Мар, 21:58 #200 #704476

>>704470
Я пишу велосипеды.
Это же вариант ноды для однонаправленого списка, кто должен владеть указателем если не нода?

Ответы>>704485

2 Кб, 362x74

31 Мар, 21:59 #201 #704477

>>704461
Мол, сам создаст переменную?

31 Мар, 22:05 #202 #704485

>>704476
Предполагается, что отдельные куски этого списка будут болтаться в программе где попало?

Ответы>>704535

31 Мар, 22:48 #203 #704527

>>704405
Открой для себя typedef, зачем глаза ломать. http://ideone.com/0yVr4f

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

Ответы>>704535

31 Мар, 22:56 #204 #704535

>>704527
Спс. Циклическую ссылку?
>>704485
В основе лежала идея, насоздавать и владеть лишь головой. Ну допустим засуну я в вектор и толку? Списковые операции как выполнять то?

Ответы>>704731

31 Мар, 22:59 #205 #704537

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

Ответы>>704541>>704585

31 Мар, 23:05 #206 #704541

>>704537
Который тред у тебя уже бомбит от C++?

31 Мар, 23:40 #207 #704585

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

Ответы>>704587

31 Мар, 23:41 #208 #704587

>>704585
>Языки до явы вообще все были куда хуже в плане стандартной библиотеки
Бля, ну это вообще жирно. ArrayList, надо же было такое говно выдумать.

Ответы>>704589>>704592

31 Мар, 23:42 #209 #704589

>>704587
Чем тебе не нравится ArrayList, байтоёб?

31 Мар, 23:44 #210 #704592

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

Ответы>>704603

01 Апр, 00:05 #211 #704603

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

Ответы>>704604>>704608

01 Апр, 00:08 #212 #704604

>>704603
> Встроенные типы отличаются поведением от классов, вообще пушка.

Ну, в цепепе фундаментальные типы тоже отличаются от не-фундаментальных.

для классов default construction это вызов конструктора без параметров (это неточно), для фундаментальных — NO-OP

Ответы>>704755

01 Апр, 00:13 #213 #704608

>>704603
Это легаси, байтоёб.

01 Апр, 00:40 #214 #704623

>>702133 (OP)
ОП, это чума! Хотя бы кто-то услышал реквест хорошо/плохо - стиле. Можешь ещё по классике пройтись? У лукоморья, что-нибудь из Евгения Онегина или стихов Маяковского?

Алсо, попробовал передалать стишок про <<травинку и лесок>>.Вышло ничего.

Ответы>>704757

01 Апр, 03:05 #215 #704657

Плюсаны, посоветуйте редактор кода для линукса. Хотелось бы что-то типа notepad++ - с подсветочкой кода и привычными хоткеями (а то я пока не могу привыкнуть к виму).

Ответы>>704658>>704668>>704726>>704727

01 Апр, 03:05 #216 #704658

>>704657
Саблайм.

Ответы>>704660>>704666

01 Апр, 03:06 #217 #704660

>>704658
Разве что у него хоткеи с KDE-шными пересекаются, так что я в настройках WM для этого окна наружние хоткеи отрубаю.

01 Апр, 03:08 #218 #704661

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

01 Апр, 03:12 #219 #704662

>>704101
Пользуйся дебаггером в подобных случаях. По началу будет очень непривычно, но быстро привыкнешь. Тем более в визуал студии дебаггер очень даже охуенный даже в vs 2005

01 Апр, 03:16 #220 #704666

>>704658
Спасибо. Кучу названий уже видел, но все руки не доходили установить (только gvim инстальнул, шобы к vim'y привыкнуть, но заебал пиздец)

01 Апр, 03:20 #221 #704668

>>704657
VS Code

01 Апр, 06:56 #222 #704699

test

01 Апр, 09:07 #223 #704726

>>704657
Geany. Лёгкий, быстрый, функциональный.

Ответы>>705917

01 Апр, 09:13 #224 #704727

>>704657
CLion

Ответы>>704736

20 Кб, 320x466

01 Апр, 09:27 #225 #704731

>>704535
Бамп второму ответу. Про циклическую ссылку я понял, как против такого бороться?

Ответы>>704739

01 Апр, 09:38 #226 #704736

>>704727
CLion не редактор кода, и вообще платный.

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

01 Апр, 09:55 #227 #704739

>>704731
СМАРТ ПОИНТЕРЫ
М
А
Р
Т

П
О
И
Н
Т
Е
Р
Ы

Ответы>>704750>>704934

01 Апр, 10:26 #228 #704750

>>704739
Сасай хуй

01 Апр, 10:36 #229 #704755

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

01 Апр, 10:43 #230 #704757

>>704623
Стал
синьором,
сидя в крестотреде,
Зарплату
имею
тысяч до ста.
Мой
хуй,
как сюжет в легенде,
Джавабляди
нищей
вошел в уста.

Ответы>>704769

01 Апр, 10:52 #231 #704769

>>704757
Вы любите джаву?
А я на нее срал!
Стране нужны байтоебы
И очень жесткий анал
Товарищ,
Не мусоль
словно клитор,
кнопку
Постирай свитер, побрей бороду
Сделал коммит - посылай всех в пизду
Не сделал - смазывай попку

Ответы>>704783>>704847

45 Кб, 1139x387

01 Апр, 11:01 #232 #704775

Что значит в С++ запись "->"? Нашел на вики в описаниях операторов, но все равно не понял. Может кто-нибудь объяснить и привести пример. Спасибо.

Ответы>>704780>>705028

01 Апр, 11:01 #233 #704778

>>702942
>венгенрская нотация
Ты ебанутый?

Ответы>>704779

01 Апр, 11:03 #234 #704779

>>704778
что-то не так?
мимо автор скрина

Ответы>>704796

01 Апр, 11:03 #235 #704780

>>704775
Это как точка, но если вызывается для указателя на объект, а не самого объекта.

Ответы>>704781>>704782

27 Кб, 477x94

01 Апр, 11:05 #236 #704781

>>704780
ты просто прочитал за анона?!
ппц

Ответы>>704782

01 Апр, 11:06 #237 #704782

>>704780
>>704781
а можно пример, пожалуйста

Ответы>>704785>>704786

01 Апр, 11:07 #238 #704783

>>704769
Ночь.
Опять утечку искать.
Липнут ладони к клаве.
Мусоросборщик
Не стану юзать
Назло б-гомерзкой джаве.

01 Апр, 11:10 #239 #704785

>>704782
Блять.

Omega lal("2ch");
lal.say();

Alpha *lel = new Alpha();
lel->say();

Ответы>>704788

44 Кб, 521x474

01 Апр, 11:11 #240 #704786

>>704782
бля..

Ответы>>704788

01 Апр, 11:12 #241 #704788

>>704785
>>704786
спасибо, анончики
думал отпиздите за такие вопросы

Ответы>>704789

01 Апр, 11:14 #242 #704789

>>704788
просто совет, если юзаешь ide часто тыкай не ctrl+space
это избавит эту доску от подобных блядскихтвоих вопросов

Ответы>>704792

66 Кб, 600x600

01 Апр, 11:19 #243 #704792

>>704789
чаще тыкай на
быыыыыыыыыстрофикс

01 Апр, 11:22 #244 #704796

>>704779
Нахуя? Ее придумали чтобы было легче читать код на БУМАГЕ. Я и так вижу что int numB это int.

Ответы>>704800>>704802>>704805

01 Апр, 11:26 #245 #704800

>>704796
я не писал эту фигню.. просто пытался помочь анону же.

Ответы>>704802

01 Апр, 11:29 #246 #704802

>>704800
>>704796

ты крч промазал.. это седа
>>702906

01 Апр, 11:35 #247 #704805

>>704796
http://www.joelonsoftware.com/articles/Wrong.html

Ответы>>704812

01 Апр, 11:43 #248 #704812

>>704805
ну я это не писал и не рефакторил же.
я обычно пишу переменные которые означаютсмысл её применения а не nunB

Ответы>>704813

01 Апр, 11:46 #249 #704813

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

Ответы>>704841

01 Апр, 12:04 #250 #704841

>>704813
стоп стоп стоп..
я типо юзаю переменные формата
int количесто_огурцов_у_анона
ты говоришь что
int num_of_количесто_огурцов_у_анона
из-за проблем с полиморфизмом
..

анон который вытащил мой скрин говорит что
все мыи так понимаем.. по сути это:
int num_of_a, num_of_b1.. bnum_of_Aamf32 // зашквар

но имхо -- не надо хранить данные в переменных и ебаться с этим!
придумали же полиморизм! и все что не попадает под сигнатуросовпадаемые траблы выдавать из класса с данными функцией.
..
хотя я считаю что вот тебе стоит глянуть в то как растет opengl. Он давно отказался от clearcolor3F подобных функций. еще в 200(0-4) ом году. И думаю что нам не стоит вдаваться в это. Новые фичи С++159 избавят нас от совпадений сигнатур и все будет круто

Ответы>>704849>>704850

01 Апр, 12:11 #251 #704847

>>704769
Очень
по-маяковски, товарищ.
Спасибо.

01 Апр, 12:12 #252 #704849

>>704841
Вот смотри. Допустим есть переменная
unsigned int penisSize
мы не знаем в чем Size. Поэтому мы пишем
unsigned int cmPenisSize
unsigned int inchPenisSize
и теперь понимает в каких ед. измерения.

Ответы>>704856>>704876

01 Апр, 12:13 #253 #704850

>>704841
>
>но имхо -- не надо хранить данные в переменных и ебаться с этим!
>придумали же полиморизм! и все что не попадает под сигнатуросовпадаемые траблы выдавать из класса с данными функцией.
Поясни. Желательно с примерами

Ответы>>704876

01 Апр, 12:17 #254 #704856

>>704849
Я имею в виду
unsigned int cmPenisSize
или
unsigned int inchPenisSize.
Вообще, это и есть kind, который ставится префиксом в имени переменной.

01 Апр, 12:27 #255 #704876

>>704849
но вот я ща играюсь с opengl
и такой проблемы у меня не возникает т.к. я мерию все в метрах.
но хотя я понимаю что
unsigned int penisSize = 0.03
будет равносильно
unsigned int penisSize = 0
что крутосыграет на взрыв..
как это 0 см когда 3!
...
...
...
>>704850
ну я не догнал с самого начала о сути венгенрской нотации
но имел ввиду

class penis
{
public:
int GetPenisSize() // В метрах
{
return PenisSize;
}
float GetPenisSize() // тоже в метрах
{
return PenisSize;
}
double GetPenisSize() // а тут уже нахлест сигнатур
{
return PenisSize;
}
private:
double PenisSize; // а тут длинна пениса в метрах
}
...
...
но вот в этом классе лучше всетаки юзать венгенрскую нотацию для члена измеренного в дюймах
и членах в миллиметрах..

и добавим в приват
int GetInchPenisSize()
{
return PenisSize/2.54;
}
float GetInchPenisSize()
{
return PenisSize/2.54;
}

Ответы>>704878>>704879>>704894>>704905

01 Апр, 12:28 #256 #704878

>>704876
боже мама..
я посто хотел взять поток /dev/video0
чем я блядь занимаюсь?
МЕРЮЮ БЛЯДЬ ПЕНИС В ДЮЙМАХ!!!

01 Апр, 12:29 #257 #704879

>>704876
Ну я понял короче с полиморфизмом. В любом случае есть type, а есть kind. Не путай.

Ответы>>704890

01 Апр, 12:34 #258 #704890

>>704879
ну я понял это итт
но можешь дать коротенький гайд по тем как юзать kind в префиксе переменной? я что-то не могу прогуглить?

Ответы>>704896>>704899

66 Кб, 600x600

01 Апр, 12:37 #259 #704894

>>704876
>приват
в паблик
опять быыыыыыыыыыстрофикс

01 Апр, 12:39 #260 #704896

>>704890
Да походу эту нотацию уже и не пользует никто. Был скандал, сказали, что афтор нотации долбаеб.
Разницы между type и kind не поняли.

01 Апр, 12:40 #261 #704899

>>704890
Вообще 99% понимают ее неправильно. Даже рискованно использовать ее.

Ответы>>704905

01 Апр, 12:43 #262 #704905

>>704899
тоесть верно юзать то как тут >>704876
и все? тема закрыта?

Ответы>>704948

01 Апр, 13:09 #263 #704934

>>704739
Что, простите?

01 Апр, 13:24 #264 #704948

>>704905
А вот непонятно. Вот хочу я иметь два типа CmSize и InchSize, которые являются float. Я пишу

typedef float SizeCm;
typedef float SizeInch;

Далее объявляю класс

class Size {
public:
Size(SizeCm size);
Size(SizeInch size);
SizeCm getSize();
SizeInch getSize();
private:
float size;
};

Size::Size(SizeCm size) {
this->size = size;
}

Size::Size(SizeInch size) {
this->size = size * 2.54;
}

SizeCm Size::getSize() {
return this->size;
}

SizeInch Size::getSize() {
return this->size / 2.54;
}

Не компилится. Как быть?

Ответы>>704953>>704954

01 Апр, 13:30 #265 #704953

>>704948
http://www.boost.org/doc/libs/1_60_0/doc/html/boost_units.html

Ответы>>704959

01 Апр, 13:30 #266 #704954

>>704948
typedef это тебе не newtype какой нибудь. Для компилятора SizeCm и SizeInch - один и тот же тип, поэтому он не может разрешить перегрузку конструктора по одному и тому же типу, ну а перегрузка по возвращаемому типу вообще не поддерживается даже если бы компилятор и считал сайзы за два разных типа

Ответы>>704959

01 Апр, 13:33 #267 #704959

>>704953
Тяжеловесная либа, но буду разбираться.
>>704954
Да, понял уже. Спасибо

Ответы>>704960

01 Апр, 13:34 #268 #704960

>>704959
не тяжелее твоей мамки

Ответы>>704995

01 Апр, 14:25 #269 #704995

>>704960
я тут поскролил.. мамка легче

01 Апр, 15:08 #270 #705028

>>704775
a->b эквивалентно (*a).b

01 Апр, 16:02 #271 #705070

>>703529
Это Лафоре? У меня какое-то издание попалось, опечаток дофига, в конце концов листинги из англоязычного переписывал.

01 Апр, 18:09 #272 #705170

Я копипастил и случайно объебался.
http://ideone.com/B0zKQZ
Я хочу получить указатель на шаблон функии сравнения и передавать ее в функию.

Ответы>>705182>>705330

01 Апр, 18:17 #273 #705182

>>705170
Что за хуйню ты вообще написал? Почитай сначала материал до конца, а только потом пробуй. И не заебывай бедного анона.

Ответы>>705330

01 Апр, 18:51 #274 #705211

Class Pisya
{
void pososat() {}
}

vector<Pisya*> v(228);
v.clean();

1) Вызовется ли конструктор 228 раз?
2) Если да, освободится ли память после клининга или удалятся только поинтеры?

Ответы>>705218>>705219>>705303

01 Апр, 18:59 #275 #705218

>>705211
>1) Вызовется ли конструктор 228 раз?
Нет пока не напишешь new.
>2) Если да, освободится ли память после клининга или удалятся только поинтеры?
Только поинтеры.

01 Апр, 18:59 #276 #705219

>>705211
Почему бы не написать код самому и не проверить?

01 Апр, 19:35 #277 #705264

Почему в библиотеке C++ такой убогий интерфейс? Пример говна: vector.erase(vector.begin(), position) вместо красивого vector.erase(position). Библиотеку проектировали индусы, которым доплачивают за размер кода?

Ответы>>705270>>705308

01 Апр, 19:37 #278 #705270

>>705264
>iterator erase( const_iterator pos );
>iterator erase( const_iterator first, const_iterator last );

А вот и пиздоглазые подъехали.

Ответы>>705273

01 Апр, 19:39 #279 #705273

>>705270
>>iterator erase( const_iterator pos );
Пиздюк, ты скажи, как вызывать v.erase(4) вместо уебищного v.erase(v.begin() + 4).

Ответы>>705279>>705293

01 Апр, 19:43 #280 #705279

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

Ответы>>705282>>705283

01 Апр, 19:46 #281 #705282

>>705279
> в этом итт треде
это как lol(int_bla_bla + 4)

01 Апр, 19:46 #282 #705283

>>705279
> почему у итератора нет
Будет же пытатся подставлять вместо всех интов все возможные итераторы какие найдет.

Ответы>>705290

01 Апр, 19:49 #283 #705290

>>705283
Так явно можно же вызвать итератор. if(vector<int>::iterator i(4)==int(4))

01 Апр, 19:50 #284 #705293

>>705273
>конструктора который принимает параметр int
Потому что придется передавать еще и коллекцию в этот конструктор, что мало отличается от текущего решения.

>Пиздюк, ты скажи, как вызывать v.erase(4) вместо уебищного v.erase(v.begin() + 4).
Охуительные у тебя проблемы, скажу я тебе. Просто так сделали и никого это не ебет. Хочешь исправить - сделай proposal и если противоречий не будет, его примут. C++ - это open source, тебе никто ничем не обязан, лалка.

01 Апр, 19:54 #285 #705303

>>705211
>1) Вызовется ли конструктор 228 раз?
Вызовется. Только конструктор указателя. который ничего не делает и вообще его нет, но для формальности
>2) Если да, освободится ли память после клининга или удалятся только поинтеры?
Вектор вызывает деструкторы для элементов, которые он хранит. В данном случае — деструкторы для указателей. которых также нет и ничего не вызывается. А потом освободит память, занимаемую элементами.

01 Апр, 19:56 #286 #705308

>>705264
>Библиотеку проектировали индусы
Хуже: русские.

Ответы>>705701

01 Апр, 19:58 #287 #705311

Сап ананасы.
Имеется концептуальный вопрос.
Напейсал я TCP-сервер и клиента к нему на сокетах.

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

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

Ответы>>705322

01 Апр, 20:03 #288 #705322

>>705311
В идеале сервер должен отсылать сообщение клиенту что он отключен по таймауту. А в общем у проблемы проверки наличия соеденения с сервером нет нормального решения.

01 Апр, 20:04 #289 #705323

>You are given N integers.Then you are given 2 queries.First query consists of 1 integer denoting the position which should be removed.Next query consists of 2 integers denoting the range that should be removed.

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

https://ideone.com/C2RWp3

01 Апр, 20:07 #290 #705330

>>705182
Я >>705170, похоже, объебался дважды.
>Здравствуйте. Может быть я отстал от жизни, но, честно говоря, никогда не слышал о "шаблонных указателях". Указатель на функцию призван хранить адрес машинного кода функции. У шаблона функции адреса нет, он имеется только у конкретной специализации шаблонной функции.
https://social.msdn.microsoft.com/Forums/ru-RU/25d252f4-b45f-425d-a7cb-48a6a3a6f4b1/-?forum=programminglanguageru

02 Апр, 09:17 #291 #705634

Нужен свой проект а гитхабе. Что-то из ИБ или ML. Учить дрругой язык времени нет. Проек на пару месяцев. В голову ничего не лезет. Что сделать?

Ответы>>705853>>705860>>707933

02 Апр, 09:23 #292 #705639

Сложно ли на ++ или просто на С написать простую программу, тот же блокнот?

Ответы>>705642

02 Апр, 09:26 #293 #705642

>>705639
Нет. Он не для этого. Попробуй лучше на brainfuck'е это написать.

Ответы>>705643

02 Апр, 09:27 #294 #705643

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

Ответы>>705647

02 Апр, 09:30 #295 #705647

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

Ответы>>705651

02 Апр, 09:32 #296 #705651

>>705647
Я не блокнот ищу, просто немного похожую программу, и думаю если бы я написал блокнот, то и нужную мне программу написал бы без труда.

Ответы>>705653>>705657

02 Апр, 09:34 #297 #705653

>>705651
А что ты уже умеешь? Может в питонотреде спросишь?

Ответы>>705674

02 Апр, 09:35 #298 #705657

>>705651
Блокнот пишется просто, если не можешь написать блокнот - ты не программист. Сколько времени надо учиться/писать зависит только от тебя. С++ не советую, бери шарп/питон/еще что подобное, они проще.

Ответы>>705663>>705674>>705718

02 Апр, 09:38 #299 #705663

>>705657
Ну и вообще, заплатить фрилансеру, чтоб он сделал нужную программу, будет намного эффективнее.

02 Апр, 09:42 #300 #705674

>>705653
>>705657
Я вот что хотел найти, но не нашёл:
Органайзер.
Вот пик нарисовал, каким должен быть примерный функционал.
1 - окно дат или календарь. Можно форматировать даты.
2 - закладки. На каждую дату или число свои закладки.
3 - собственно тело органайзера, куда я могу писать что хочу. Было бы огромным плюсом если бы там было переключение между обычным текстовиком и эксель таблицей + простенькие форматирования.
Чтобы было портативным и можно было с флешки запускать, при чём на разных ОС - линукс и шиндовс.

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

Ответы>>705675>>705684>>705712>>705716

13 Кб, 946x699

02 Апр, 09:42 #301 #705675

>>705674
Пик отклеился. Смехатично, но думаю ясно.

Ответы>>705682

02 Апр, 09:46 #302 #705682

>>705675
> Смехатично
А то!

02 Апр, 09:49 #303 #705684

>>705674
Ты уже писал раньше на крестах? Если нет учи питон. А лучше не надо самому это делать.

Ответы>>705685

02 Апр, 09:51 #304 #705685

>>705684
Да в общем не особо, год назад хотел выучить ++ чтобы игры писать. Но на начале учебника забил на это дело, но простейший функционал знаю, остановился на векторах, вроде бы.
Сложной выглядит задача?

Ответы>>705687

02 Апр, 09:52 #305 #705687

>>705685
Да. На 2 года тебе работы.

Ответы>>705688

02 Апр, 09:53 #306 #705688

>>705687
А нормальному программисту?

Ответы>>705689

02 Апр, 09:54 #307 #705689

>>705688
Месяц.

Ответы>>705691>>705692

02 Апр, 09:55 #308 #705691

>>705689
За пару недель можно, если регулярно (но не напрягаясь) работать и не на крестах.

02 Апр, 09:55 #309 #705692

>>705689
А в чём различие написания программ на С, ++ и питоне?
Как я понял, на них можно написать одно и то же?

Ответы>>705694>>705695

02 Апр, 09:56 #310 #705694

>>705692
Учить дольше. На крестах писать сложнее.

Ответы>>705696

02 Апр, 09:56 #311 #705695

>>705692
Плюсы сложны, в си мало готовых фич.

Ответы>>705696

02 Апр, 09:58 #312 #705696

>>705694
>>705695
Просто, обычно если я выбирал программы, то старался использовать те, которые были написани на С -> ++ -> Python.
Да и я иногда читаю что программанейм была переписана с крестов или питона на чистом С, т.е. для меня С это как знак качества и производительности.
Или я что-то не так понимаю?

Ответы>>705705

02 Апр, 10:01 #313 #705701

>>705308
>Хуже: русские.
Ещё хуже: русские в психушке

Ответы>>705702

02 Апр, 10:02 #314 #705702

>>705701
Евреи в мраморных офисах с душем.

02 Апр, 10:03 #315 #705704

Кротоны, что быстрее: стд::вектор + стд::сорт или стд::сет, если на руках 5 тыщ элементов?

Ответы>>705706>>705717>>705782

02 Апр, 10:04 #316 #705705

>>705696
>производительности
Да, в среднем, но не всегда. Язык на производительность влияет меньше, чем ты думаешь.
>качества
Нет. На си в среднем выше качество программистов. Потому что многие из них - старперы с хх годами опыта. Что к тебе, очевидно, никакого отношения не имеет. Собственно криво написать на нем наоборот намного проще.

Ответы>>705711

02 Апр, 10:04 #317 #705706

>>705704
> стд::вектор + стд::сорт
сет не предназначен для сортировки

Ответы>>705713

02 Апр, 10:10 #318 #705711

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

02 Апр, 10:17 #319 #705712

>>705674
> А на ++ я слышал что это самый гибкий язык
Тебе явно напиздели, это далеко не так.

02 Апр, 10:18 #320 #705713

>>705706
скорее, сет всегда отсортирован по определению.

Ответы>>705724

02 Апр, 10:22 #321 #705716

>>705674
Возьми qml. Кресты конечно тоже понадобятся изнутри, но ты избежишь маразма по имени "говнякать интерфейс на крестах".

Ответы>>705719

02 Апр, 10:22 #322 #705717

>>705704
Если доьавляешь элементы один раз, то вектор+reserve+sort+ будет самый быстрый вариант.
Если потом еще надо добавлять, то upper_bound.
Вытаскивать элементы через lower_bound.

02 Апр, 10:23 #323 #705718

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

Ответы>>705719>>705721>>705722

02 Апр, 10:23 #324 #705719

>>705718
>>705716
Поясните, что за пауки и проблемы с интерфейсом на крестах?
Я тот ньюфаг.

Ответы>>705723

02 Апр, 10:24 #325 #705721

>>705718
>Блокнот пишется просто
Где там про рич текст-то?

02 Апр, 10:24 #326 #705722

>>705718
Обычный QLabel, блять.

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

Ответы>>705728

02 Апр, 10:27 #327 #705723

>>705719
Короче, интерфейс на крестах - это Qt. Хотя по большей части Qt - это стандартная библиотека крестов, без которыми ими пользоваться для прикладных задач практически нереально.

И вот, интерфейс пишется на языке qml - декларативное описание всей хуйни, для функций - жабаскрипт. А вся технология целиком - QtQuick, смешение крестов/qml/жабаскрипта - все это нужно чтобы писать нормальные гуевые приложения.

Можно хуярить по старинке виджетами, но это ад и сто шагов назад тихо на пальцах

02 Апр, 10:28 #328 #705724

>>705713
Это для интов так.

Ответы>>705727>>705735

02 Апр, 10:29 #329 #705727

>>705724
Для всего же. Там же по хешу ебошится, неважно что внутри, не?

Ответы>>705744

02 Апр, 10:29 #330 #705728

>>705722
>QLabel
>рич текст
арчюю этого:
>ты никогда не работал с крестовыми либами для рич текста

Ответы>>705731

02 Апр, 10:30 #331 #705731

>>705728
QLabel тебе не рич текст?
Оно даже HTML CSS до определенной поры отображать может, разве что минет не делает.

Ответы>>705733

02 Апр, 10:31 #332 #705733

>>705731
Да и блокнот уж точно, а возможно и органайзер целиком сто пудов есть в демках к Qt, ищешь-изучаешь-допиливаешь.

02 Апр, 10:32 #333 #705735

>>705724
Для всего. Ты путаешь с unordered_set

Ответы>>705744

02 Апр, 10:46 #334 #705744

>>705735
>>705727
https://ideone.com/qfu3Gw Он не может их отсортировать. Но да он всегда отсортирован по определению

Ответы>>705750

02 Апр, 10:48 #335 #705750

>>705744
А компаратор кто определять за тебя будет? Феечка?

Ответы>>705752

02 Апр, 10:49 #336 #705752

>>705750
Именно. В сет его нельзя. У встроенного класса не положено. А в сорт передать можно. Значит сет не предназначен для сортировки.

Ответы>>705755

02 Апр, 10:51 #337 #705755

>>705752
Можно же всегда свою функцию сравнения передать. Так же, как и в сорт.

Ответы>>705760

02 Апр, 10:58 #338 #705760

>>705755
В сорт я могу сначала одну лямбду передать потом другую. А в сет только в шаблоне можно компаратор передавать. Это почти тоже сатое что и в класс вписать равнение.

Ответы>>705761>>705766

02 Апр, 11:00 #339 #705761

>>705760
В сете данные всегда отсортированы, але.

Ответы>>705769

02 Апр, 11:03 #340 #705766

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

Ответы>>705769

02 Апр, 11:06 #341 #705769

>>705761
Нет если класс не предназначен для сортировки. Тогда нужно передать компаротор. А у сета это делается 1 раз. На этапе компиляции.

>>705766
Тоже нет. Полохо не потому что некрасиво, потому что нельзя одни данные двумя компараторами отсортировать в отличии от вектор+сорт.

Ответы>>705771>>705772

02 Апр, 11:08 #342 #705771

>>705769
У тебя не получится не передать компаратор, если ты будешь хранить типы, которые он не знает как сравнивать.

Ответы>>705773

02 Апр, 11:09 #343 #705772

>>705769
>А у сета это делается 1 раз. На этапе компиляции.
И в чем ты видишь проблему-то?
>одни данные двумя компараторами
Два сета.

Ответы>>705774

02 Апр, 11:10 #344 #705773

>>705771
Этот случай был выше. Он просто не скомпилируется.

02 Апр, 11:10 #345 #705774

>>705772
>Два сета.
Вдвое больше памяти. Или тратить время на копирование.

Ответы>>705775

02 Апр, 11:11 #346 #705775

>>705774
Наконец-то адекватный аргумент. Вот так сразу бы.

02 Апр, 11:30 #347 #705782

>>705704
Если у тебя все значения известны изначально (загнал пять тысяч потом отсортировал) то лучше использовать вектор, если постоянно добавлять-удалять то сет. У сета выше накладные расходы по памяти, с точки зрения сложности алгоритма - сложность у них одинаковая, но так-то с вектором чуть больше работы потому-что его сначала заполнить нужно а потом отсортировать (сет сортируется при заполнении). Но внутри сета происходит пердолинг с указателями, тоесть в общем работа с вектором будет чуть быстрее, скорее всего. Это если тебе не нужно будет удалять некоторые элементы из вектора.

Ответы>>705783>>707718

02 Апр, 11:35 #348 #705783

>>705782
Блять, для пяти тысяч вся эта хуйня вообще не важна, и писать нужно так, как короче и проще.

02 Апр, 12:14 #349 #705794

Я всё тот же ньюфаг с органайзером, есть небольшой вопрос...

Ответы>>705801

02 Апр, 12:24 #350 #705801

>>705794
Есть небольшой ответ...

Ответы>>705803

02 Апр, 12:27 #351 #705803

>>705801
Вот что хотел спросить. Я давно искал программу, которая бы делала скриншоты игр и других окон, но все мне не подходили.
А в каком-то треде мне сказали что есть какие-то мелкие скрипты на принтскрин, который захватывают текущее окно и выводят куда мне надо, и в них отсутствует чёрный экран.
Это правда? Легко на ++ написать?

02 Апр, 14:15 #352 #705853

>>705634
Бамп.

02 Апр, 14:36 #353 #705860

>>705634
>ML
Напиши факториал/фиббоначи

Ответы>>705861>>707933

02 Апр, 14:37 #354 #705861

>>705860
За пару месяцев?

Ответы>>705869

02 Апр, 14:52 #355 #705869

>>705861
Ну можешь за минуту написать.
Но если есть желание - можешь писать пару месяцев.

Ответы>>705876

02 Апр, 14:53 #356 #705876

>>705869
А ML тут при чём?

Ответы>>705877

02 Апр, 14:54 #357 #705877

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

Ответы>>705885

02 Апр, 14:58 #358 #705885

>>705877
Ты щас про язык?
Я про машинное обучение. Ни в ИБ ни в ML не разбираюсь. Хотя шарю в архитектуре компьютера и алгоритмах. За пару месяцев надо хоть чему-то в этом научиться и хоть что-то написать. Будет быстрее если писать буду на крестах.

Ответы>>705888

02 Апр, 15:00 #359 #705888

>>705885
> Ты щас про язык?
>или ML. Учить дрругой язык времени нет.
Я подумал, что ты на ML что то хочешь написать, лол.

Ответы>>707935

02 Апр, 15:02 #360 #705890

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

Ответы>>705891

02 Апр, 15:03 #361 #705891

>>705890
Отлично. И как это сделать? Что перед этим надо знать?

Ответы>>705893

02 Апр, 15:05 #362 #705893

>>705891
Пфф, хуй знает. Но у тебя же есть 2 месяца.

По идее, чистить изображение от помех, бить на блоки/цифры и пытаться обучить свою парашу их угадывать

Ответы>>705899

02 Апр, 15:09 #363 #705898

Сап аноны.
У меня вопрос по поведению функции select.

Использую ее, чтобы проверить готовность файлового дескриптора (на самом деле сокета) на чтение или запись.
Так вот, при первом запуске программы, когда файловый дескриптор еще не был использован, т.е. это просто int, равный 0, функция при проверке этого "дескриптора" возвращает таймаут (результат работы функции select == 0).

Если же я в программе заюзал дескриптор, поработал с ним, корректно закрыл его функцией close(), то при следующей проверке функцией select, она уже вернет -1, т.е. ошибку.

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

Ответы>>707935

02 Апр, 15:09 #364 #705899

>>705893
Не про то. Я же не умею даже с изображениями работать. Нужен курс по которому я разберусь как такие алгоритмы писать и всё такое. Вспомнил ШАД от яндекса. Ушёл гуглить. Есть что-то ещё?

02 Апр, 15:48 #365 #705917

>>704726
удвою..
geany для питона.. всяких конфиг-хуенфиг файлов.. *.sh фигни для удобства..
а eclipse если файл стоит открытия этого тяжеловеса

02 Апр, 15:51 #366 #705921

Если map реализован на красно-черном дереве, почему вставка в него - O(1)?

Ответы>>705923

02 Апр, 15:55 #367 #705923

>>705921
Кто тебе такое сказал?
В стандарте вообще написано, что вставка в map за logn. Про красно-черное дерево ничего не написано. Но все реализуют красно-черным деревом.
За константу вставка в unordered_map.

Ответы>>705928

02 Апр, 16:00 #368 #705928

>>705923
Все время юзал, думал, что О(1), ппц.

02 Апр, 16:03 #369 #705932

На gcc 4.8.4 что можно больше, чем unsigned long long найти можно?

Ответы>>705936>>705938>>705958

02 Апр, 16:08 #370 #705936

>>705932
напши свой

02 Апр, 16:08 #371 #705938

>>705932
напши свой

Ответы>>705939

02 Апр, 16:10 #372 #705939

>>705938
Это, конечно, можно, но я в таком случае лучше на питон пойду

Ответы>>705940

02 Апр, 16:10 #373 #705940

>>705939
это не сложно прикинь!10 строк

Ответы>>705941

02 Апр, 16:11 #374 #705941

>>705940
Вот сейчас не понял. Я думаю, ручками длинную арифметику писать надо

Ответы>>705956

02 Апр, 16:27 #375 #705956

>>705941
вроде берешь выделяешь байтов памяти скока нужно..
и циклично пишешь мол скинуть/прибавить бит сверху в случае переполнения/окончания предыдущего..
..
в unsigned должно работать..
как ты провернешь это? я бля не представляю.. я просто хочу узнать что хранится в ебаном /dev/video0 и бля я походу вкатился к вам на долго! но я код пишу хуевенька

02 Апр, 16:28 #376 #705958

>>705932
Возьми джяву или опенмп

Ответы>>705961

02 Апр, 16:30 #377 #705961

>>705958
> опенмп
А нет, это другое.

Ответы>>705963

02 Апр, 16:32 #378 #705963

>>705961
Вот нашёл: GMP

02 Апр, 16:51 #379 #705989

Куда кидать документы .h , чтобы их потом вызывать #include в хелоувордах ?

Ответы>>706000>>706004>>706096>>706150

02 Апр, 17:02 #380 #706000

>>705989
Куда хочешь. Более разумно под каждую библиотеку отдельное местоположение выделять, но тут возможны нюансы. Нужно потом только указать комрилятору где искать (настроить в ide).

Ответы>>706006

02 Апр, 17:07 #381 #706004

>>705989
Я тупо кидаю в соседний каталог и инклужу "../liba/header1.h"

Ответы>>706010

02 Апр, 17:12 #382 #706006

>>706000
Покажи настройку. Я скинул скинул этот файл в папку с проектом, а мне вс пишет: Unable to start program ...<путь к проекту> The system cannot find the file specified.
ЧЯДНТ?

Ответы>>706039

02 Апр, 17:15 #383 #706010

>>706004
Я новенький. Где они лежат ?

02 Апр, 17:57 #384 #706039

>>706006
Читай докуметацию к своему компилятору или ide.

02 Апр, 18:44 #385 #706074

Ананасы, вопрос по синтаксису.
Меня Qt просто в ступор вгоняет своими файлами, с миллионом наследований, пространств имен, что я понять нихрена не могу.

Вот простейший код:
http://pastebin.com/Ti2f3SpX

При коньпеляции выводит:
"%localpath%/mainwindow.cpp:30: error: undefined reference to `test::test()'":

Как мне поправить, чтобы я мог области гуевого приложения видеть самописный класс (test)? Делать отдельный хедер под класс не варик.

Ответы>>706119>>706120>>706151

02 Апр, 19:09 #386 #706096

>>705989
За щеку себе кинь, дегенерат.

02 Апр, 19:42 #387 #706119

>>706074
Что такое test();?

Ответы>>706192

02 Апр, 19:46 #388 #706120

>>706074
Ребята, помогите Даше найти, где определена функция test::test().

Ответы>>706128

02 Апр, 19:53 #389 #706128

>>706120
Это же конструктор. Там где ошибка без скобок напиши.

Ответы>>706196

02 Апр, 19:53 #390 #706129

Занимаюсь олимпиадками, и тут возник вопрос про потоки ввода/вывода.
Насколько я понял, есть сишные stdin/stdout и плюсовые cin/cout. И те, и те синхронизированы с IO-потоками ОС.
cin/cout работают медленно. Люди советуют отключать синхронизацию: std::ios_base::sync_with_stdio(0), но это не всегда помогает.
Так вот, я не могу понять, как подать какие-то данные в stdin. В первую очередь для отладки решений, не меняя кода. В cin можно загрузить, используя cin.rdbuf(), но scanf() их не увидит. Какие варианты?

Ответы>>706138>>706153>>706155

02 Апр, 20:02 #391 #706138

>>706129
В старом треде были экспериментики https://arhivach.org/thread/94972/#511941
Решили что cin/cout также хорошо справляются если размер буфера увеличить. В олимпиадках даёт 128 мегабайт и если 1 из них на буфер потратить, то ничего страшного. Даже быстрее сишного варианта работать будет.

Ответы>>706154

02 Апр, 20:03 #392 #706139

Котаны, под винду на MFC гуи мышкой можно натыкать? Дотнет при запуске не потребует?

Ответы>>706146

02 Апр, 20:11 #393 #706146

>>706139
Конечно потребует.

Ответы>>706152

36 Кб, 640x427

02 Апр, 20:20 #394 #706150

>>705989
в гуглодоки или на onedrive
некоторые советуют использовать skype

02 Апр, 20:24 #395 #706151

>>706074
> с миллионом наследований
пиздишь, максимум одно, когда будешь перегружать какую-нибудь QAbstractHuitaModel
>пространств имен
Тоже пиздишь, там одно пространство имен, qt namespace

Ответы>>706204

02 Апр, 20:27 #396 #706152

>>706146
Какие сейчас есть варианты простого создания GUI приложений под винду на плюсах без дотнета?

Ответы>>706162>>706168

02 Апр, 20:27 #397 #706153

>>706129
>Насколько я понял, есть сишные stdin/stdout и плюсовые cin/cout. И те, и те синхронизированы с IO-потоками ОС.
Есть сишные stdin/stdout и cin/cout читают/пишут с/в них. (Пока ты не запретишь им синхронизироваться).
> cin/cout работают медленно
Что, прямо так медленно, что заметно?
> Так вот, я не могу понять, как подать какие-то данные в stdin.
Берёшь и без задней мысли подаёшь.
> В первую очередь для отладки решений, не меняя кода
Поясни подробнее, чего ты хочешь.

Ответы>>706156>>706167

02 Апр, 20:27 #398 #706154

>>706138
Вроде неплохо.

02 Апр, 20:29 #399 #706155

>>706129
>Занимаюсь олимпиадками
>cin/cout работают медленно
Всегда знал, что олимпиады по программированию — бесполезное дерьмо для дегенератов.
Пиздец задача: затюнить cin/cout.

Ответы>>706157>>706178

02 Апр, 20:29 #400 #706156

>>706153
>Что, прямо так медленно, что заметно?
Не проходят решения.

>Поясни подробнее, чего ты хочешь.
В задачах на вход подаются какие-то данные. Чтобы не копипастить каждый раз примеры для проверки, нужно, чтобы перед исполнением они уже были в stdin'е.

Ответы>>706158>>706160

02 Апр, 20:30 #401 #706157

>>706155
Не злись, я еще школьник.

02 Апр, 20:31 #402 #706158

>>706156
Пайпы же.

Ответы>>706160

02 Апр, 20:32 #403 #706160

>>706156
> В задачах на вход подаются какие-то данные. Чтобы не копипастить каждый раз примеры для проверки, нужно, чтобы перед исполнением они уже были в stdin'е.
Сунь в файл и подай программе на вход: ./proga < in.txt
>>706158
Хуяйпы.

Ответы>>706170

02 Апр, 20:34 #404 #706162

>>706152
Qt. Может FTLK посмотри.

02 Апр, 20:38 #405 #706167

>>706153
>и cin/cout читают/пишут с/в них
И, кстати, ты не прав. Синхронизация идет не между ними, а между общим потоком программы.
stdin and cin connect to the same thing (the program's standard input), as do stdout and cout (standard output) and stderr and cerr (standard error)
http://www.drdobbs.com/the-standard-librarian-iostreams-and-std/184401305

Ответы>>706174

02 Апр, 20:42 #406 #706168

>>706152
> GUI приложений
>на плюсах
Мсье знает толк...

02 Апр, 20:43 #407 #706170

>>706160
>Сунь в файл и подай программе на вход: ./proga < in.txt
Геморно, я ж с IDE работают.
В идеале как-то добавить в стандартный запуск такую штуку. Буду пробовать.

Ответы>>706172>>706186

02 Апр, 20:44 #408 #706172

>>706170
Что мешает в ide засунуть бля?

02 Апр, 20:46 #409 #706174

>>706167
Ну и как тогда понимать
27.4.1 [iostream.objects.overview]
1 The header <iostream> declares objects that associate objects with the standard C streams provided for by the functions declared in <cstdio>

02 Апр, 20:49 #410 #706178

>>706155
Кстати я лучше всех кресты знаю из олимпиадников своего региона. Они дипломы взяли, а итератором по мапу ходить не умеют. А учитель вообще #include <bits/stdc++.h> пишет. Думаю они потом на джаву перекатятся.

Ответы>>706212

02 Апр, 20:54 #411 #706183

test

Ответы>>706191

80 Кб, 825x609

02 Апр, 20:57 #412 #706186

>>706170
>Геморно, я ж с IDE работают.

Ответы>>706189>>706356

02 Апр, 21:03 #413 #706189

>>706186
Во, то, что надо.

02 Апр, 21:06 #414 #706191

>>706183
Не так. test::test();

Ответы>>706196

02 Апр, 21:10 #415 #706192

>>706119

Конструктор, вестимо.

144 Кб, 1920x1080

141 Кб, 1920x1080

02 Апр, 21:15 #416 #706196

>>706191
>>706128

Пробовал убирать скобки, не особо помогло.

Ответы>>706197>>706213

02 Апр, 21:17 #417 #706197

>>706196
Ну а definition где для test::test()?

Ответы>>706207

167 Кб, 1920x1080

02 Апр, 21:26 #418 #706204

>>706151

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

Ответы>>706206>>706217

02 Апр, 21:28 #419 #706206

>>706204
http://en.cppreference.com/w/cpp/language/initializer_list

Ответы>>706217

02 Апр, 21:28 #420 #706207

>>706197

Что ты имеешь в виду? Вон там выше класс определен, че не так?
Я не понимаю.

02 Апр, 21:31 #421 #706212

>>706178
>#include <bits/stdc++.h>
Что не так?

Мимо призер всероса

Ответы>>706234

02 Апр, 21:31 #422 #706213

>>706196
>Пробовал убирать скобки
Но ведь ты их не убрал.
test *t = new test;

Ответы>>706216

02 Апр, 21:32 #423 #706216

>>706213
>test t = new test;
И в чём отличие от
test t = new test();

Ответы>>706219>>706221

02 Апр, 21:32 #424 #706217

>>706206
>>706204

Блять, это же конструктор банальный. Сука, какой же я даун.

02 Апр, 21:34 #425 #706219

>>706216
> test()
Это не тип а функция. Когда пишешь new он ожидает, что ты ему тип назовешь чтобы понять какого типа указатель создавать. А ты ему какую-то функцию скармливаешь которой у тебя даже нет и вообще это конструктор.

Ответы>>706226>>706231

137 Кб, 1920x1080

02 Апр, 21:35 #426 #706221

>>706216

Я просто поленился еще один скрин делать.
Вот, смари.

Ответы>>706223>>706224>>706238

02 Апр, 21:36 #427 #706223

>>706221
Где скобки после test?
Тут тебе не дишка, вробе бы так нельзя.

02 Апр, 21:38 #428 #706224

>>706221
Стоп, а какого хуя у тебя класс в .сpp описывается?

Ответы>>706237

02 Апр, 21:38 #429 #706226

>>706219

Есть идеи, как правильно написать, чтобы класс MainWindow (типа основное окно приложения) увидел класс test?

Короче, изначально я руководствовался вот этой статьей:
http://vasinnet.blogspot.ru/2012/08/recommended-way-to-using-qthread.html

Ответы>>706227

02 Апр, 21:39 #430 #706227

>>706226
Ты ебнутый? Опиши класс в хидере!
Откуда он узнает про него узнутри его самого?

Ответы>>706228

02 Апр, 21:40 #431 #706228

>>706227
Стоп, ебусь в глаза.

Ответы>>706233

02 Апр, 21:40 #432 #706231

>>706219
>Это не тип а функция
http://ideone.com/yO55MW
это https://isocpp.org/wiki/faq/ctors#empty-parens-in-object-decl к динамическому созданию объектов не относится

Ответы>>706241

02 Апр, 21:40 #433 #706233

>>706228
Где сам test() то описан, блять?
Я только определение вижу, а реализации нет.

Ответы>>706240

02 Апр, 21:41 #434 #706234

>>706212
Эта же хуитка не в стандарте, а только на олимпиадных площадках?

Ответы>>706239

02 Апр, 21:41 #435 #706237

>>706224

Какая разница, где его описывать?
Раскидывать его на test.h и test.cpp мне будет весьма неудобно, внутри этого класса должны юзаться функции из того файла, где он на скрине. Я их писать пока не стал, чтобы не смущали.

02 Апр, 21:41 #436 #706238

>>706221
class test : public QObject {
Q_OBJECT
public:
test();
virtual ~test();

Вот тут после test 2 скобки напиши фигурные {}

Ответы>>706254>>706256

02 Апр, 21:42 #437 #706239

>>706234
Возможно. Но ведь всегда можно и вручную наподключать, если надо

02 Апр, 21:43 #438 #706240

>>706233
>Где сам test() то описан, блять?
Ему это уже полтреда говорят.

Ответы>>706256

02 Апр, 21:43 #439 #706241

>>706231
Понял. Конструктор по умолчанию.

141 Кб, 1920x1080

02 Апр, 21:52 #440 #706254

>>706238

Clean all && qmake не помогают, лол.

Ответы>>706256>>706257>>706275

02 Апр, 21:54 #441 #706256

>>706254
>>706240
>>706238

В интернетах все твердят про отдельный хедер и цпп с реализацией.
Видимо придется использовать этот геморный вариант.

Ответы>>706259>>706263>>706264

02 Апр, 21:54 #442 #706257

>>706254
QObject это что? Конструктор у него виртуальный?

Ответы>>706260>>706266

02 Апр, 21:55 #443 #706259

>>706256
Необязательно. Но в хедере все инлайнится, так что для больших кусков кода будет трешак.

Ответы>>706265>>706266

02 Апр, 21:56 #444 #706260

>>706257
>Конструктор
>виртуальный

Ответы>>706261

02 Апр, 21:56 #445 #706261

>>706260
Стоп, а как делается наследование? Он же только виртуальные функции заменяет.

Ответы>>706267

02 Апр, 21:58 #446 #706263

>>706256
Если тебе нужен доступ к классу только из одного cpp-файла, можешь прямо в нём запилить этот класс. и объявление и реализацию. Только у тебя реализации не было конструктора test()

02 Апр, 21:59 #447 #706264

>>706256
Чем тебе поможет отдельный хедер в том что ты задекларировал конструктор но не предоставил его реализации?

02 Апр, 21:59 #448 #706265

>>706259
> Но в хедере все инлайнится
definition внутри классов хоть и имеют неявный inline, к реальному инлайнингу в смысле вставки в место вызова это не обязано приводить.

02 Апр, 21:59 #449 #706266

>>706257

>QObject это что? Конструктор у него виртуальный?
Если я правильно понял мануалы, то это базовый класс Qt, от которого все остальные объекты Qt унаследованы.
На счет его конструктора -- хз.

>>706259
>Необязательно. Но в хедере все инлайнится, так что для больших кусков кода будет трешак.

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

Наверное рационально будет мой класс в хедер+цпп, функции тоже в хедер+цпп. А потом хедер с функциями подключить в классе. А класс уже подключить в хедере GUI.

02 Апр, 22:00 #450 #706267

>>706261
Ты как-то вообще про наследование мало знаешь.

Ответы>>706269

02 Апр, 22:01 #451 #706269

>>706267
Пойду ещё почитаю. Сами тогда ему помогайте.

Ответы>>706270

02 Апр, 22:03 #452 #706270

>>706269
Ему уже давно помогли, но он че-то проигнорировал совет и решил что отдельный файл исправит синтаксические ошибки.

Ответы>>706275

02 Апр, 22:09 #453 #706275

>>706270

В посте >>706254 имеется скриншот с пустой реализацией конструктора, че-т не сильно помогло, если ты об этом.

Ответы>>706278

02 Апр, 22:11 #454 #706278

>>706275
А если отключить варнинг?

Ответы>>706289

02 Апр, 22:19 #455 #706289

>>706278

А это можно как-то сделать? Это ж не warning, а самый настоящий compilation error.

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

Ответы>>706296

02 Апр, 22:24 #456 #706296

>>706289
>В общем, я ради интереса изобразил то же самое, но с раскидыванием на отдельные файлы.
Ах, да. Qt != C++ же. Хидеры qmake прогоняет через MOC. Когда как для объявления класса в .cpp-файле этого не произойдёт.

Ответы>>706300

02 Апр, 22:25 #457 #706300

>>706296
Я не могу код с qt компилировать другим компилятором? И как библиотеку его подключить не могу?

Ответы>>706303

02 Апр, 22:28 #458 #706303

>>706300
Класс со всякими public slot: не является валидным для C++. Хидер с объявлением такого класса прогоняется через MOC, после чего все эти slot-ы превращаются в валидный C++.

Ответы>>706309>>706310

02 Апр, 22:30 #459 #706309

>>706303
Значит я могу обычным компилятором подключить нужные мне хейдеры из qt если прогоню их через специальный парсер?

02 Апр, 22:31 #460 #706310

>>706303
Кстати это до препроцесора С++ делается или после?

Ответы>>706311

45 Кб, 499x366

02 Апр, 22:32 #461 #706311

>>706310
Обратитесь к документации.

02 Апр, 23:00 #462 #706346

Че за хуйня с cin.get()? Пишу ,значит, два числа: одно число, энтер, другое число, энтер, энтер и ответа нет - сосноль закрывается, а когда пишу system("pause"), то она выдает ответ и только если я еще раз нажму, то закроется. Может я что не так жму ? Еще хотел бы спросить: cin>> x >> y; то можно будет два числа просто через пробел ввести ? (это не относится к тому, что я выше написал, там итемы другого класса, здесь хочу узнать про простые переменные int)

Ответы>>706355

02 Апр, 23:06 #463 #706355

>>706346
> ответа нет
Ответ есть, просто твой жалкий человеческий мозг не в состоянии его заметить до того как консоль закроется.

Ответы>>706364

02 Апр, 23:07 #464 #706356

>>706186

Ага, эт тема.
Сделай так же, ток наоборот
[code lang="c"]
#ifdef HER
freopen(...);
#endif
[/code]
и пропиши себе в IDE компилять с -DHER

А вообще щас вроде модно стало одновременно класть input.txt и подавать его же на stdin.
В итоге системе пофигу откуда ты прочтешь, а тебе не надо извращаться

Ответы>>706361>>706381

02 Апр, 23:09 #465 #706361

>>706356
> и пропиши себе в IDE компилять с -DHER
Он не найдёт, где это делается.
проще #if 1/#if 0 прописать

Ответы>>706365

02 Апр, 23:14 #466 #706364

>>706355
> ответа нет - сосноль закрывается
В глаза ебемся или ты совсем не гуманитарий, что можешь прочекать и найти ошибки в коде из тысячи строк за минутку, но не можешь прочесть два предложения? Хуй соси. Несите следующего.
Может я что не так написал, но что я имел ввиду: что я не могу оставить консоль, чтобы ответ посмотреть из-за того, что когда числа нет и я жму просто энтер - она выводит ответ и закрывается.

02 Апр, 23:14 #467 #706365

>>706361
>Он не найдёт, где это делается.

А ведь я все удивляюсь, как можно хуячить нефиговые алгоритмы и при этом ваще не понимать "как эта шутка работает"
хотя сам был таким ><

20 Кб, 667x346

02 Апр, 23:33 #468 #706381

>>706356
Уже сделал заебок.

Ответы>>706382>>706391

02 Апр, 23:35 #469 #706382

>>706381
глаза вытекли с кода

Ответы>>706386

02 Апр, 23:41 #470 #706386

>>706382
Олимпиадник же

Ответы>>706389

26 Кб, 746x540

02 Апр, 23:51 #471 #706389

>>706386
Не, я пхпшник. Олимпиадки только начинаю.

Ответы>>706391

02 Апр, 23:56 #472 #706391

>>706389
>>706381

Еще скажи, что у этих скринов общий создатель

Ответы>>706393

02 Апр, 23:57 #473 #706393

>>706391
Да. Это я.

Ответы>>706395

161 Кб, 1284x300

03 Апр, 00:00 #474 #706395

>>706393
Прям проорал

Ответы>>706396

03 Апр, 00:01 #475 #706396

>>706395
Ок, отключу сглаживание для моноширинных шрифтов.

Ответы>>706411

03 Апр, 00:24 #476 #706411

>>706396
надо было всю функцию в одну строчку писать, че

Ответы>>706415>>706422

03 Апр, 00:28 #477 #706415

>>706411
Вообще есть штука __gcd(), но она только на gcc. Приходится костылить.

03 Апр, 00:33 #478 #706422

>>706411
>надо было всю функцию в одну строчку писать
Так нечитабельно.

03 Апр, 12:04 #479 #706616

Долго тред в бамплимит не уходит.

Ответы>>706624>>706633

03 Апр, 12:30 #480 #706624

>>706616
У школьников каникулы же

181 Кб, 1280x427

03 Апр, 12:42 #481 #706633

>>706616
D лучше C++. Дискасс.

Ответы>>706637>>706648>>706761

03 Апр, 12:45 #482 #706637

>>706633
Вот когда стану модером, тогда выгоню всех дэфорсеров из крестотреда.

Ответы>>706640

03 Апр, 12:50 #483 #706640

>>706637
Тебя GC удалил, мусор.

03 Апр, 13:04 #484 #706643

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

Выкатился еще на неделю.

03 Апр, 13:15 #485 #706648

>>706633
Оба говно

33 Кб, 680x816

03 Апр, 13:24 #486 #706659

Анон, есть такая дрисня на пике, это решение задачи на maps'ы: https://www.hackerrank.com/challenges/cpp-maps/submissions/code/18953044

У меня возникают подозрения в этой строчке:
>sheet[student] += mark;

Здесь в хэш-таблицу помещается новая пара, если ее не было, и инкрементируется значение, связанное с ключом. STL гарантирует, что при записи нового значения типа int оно инициализируется нулем, а не чем-нибудь еще?

Ответы>>706662>>706885

03 Апр, 13:26 #487 #706662

>>706659
size_t поставь. Точно 0 будет. А вообще просто вызывается T2 value();

03 Апр, 13:31 #488 #706665

Поцоны, читаю книгу Лафоре ООП, уже 70 страниц прочитал, и сам могу написать без подглядываний только "Привет, мир!". Это нормально?

Ответы>>706674

03 Апр, 13:45 #489 #706674

>>706665
> Лафоре
Ну он там вроде первых страниц 100 именно этим и занимается, наверное норм.

Ответы>>706693

209 Кб, 1115x780

03 Апр, 14:04 #490 #706693

>>706674
Да нет, уже и программу для вычисления площади круга описывает.
Только что прочитал, что 1000000000 можно записывать как 1.0E-9, и нихуя не знаю, как это делать.

Ответы>>706701>>706703

03 Апр, 14:12 #491 #706701

>>706693
>1.0E-9
это 10^-9

Ответы>>706707

03 Апр, 14:15 #492 #706703

>>706693
> вычисления площади круга
Это тот же хелловорлд. Тебе нужно внимательней прочитать тчо он про манипуляторы пишет. Нужно выставить нужный тебе формат числа, что-то типа std::cout << std::fixed << std::setprecision(16) << qwee; Нужно подключить <iomanip> И 10 в девятой будет 1.0Е9 а не 1.0Е-9

Ответы>>706707>>706712

03 Апр, 14:19 #493 #706707

>>706701
Но в книге именно Е.
А так - ошибка.

>>706703
Ничего не понял, что ты мне объясняешь, рано для меня, видимо.

Ответы>>706709>>706711

03 Апр, 14:20 #494 #706709

>>706707
>Но в книге именно Е.
1.0E9

Ответы>>706714

03 Апр, 14:21 #495 #706711

>>706707
Надеюсь ты школьник а не 30-ти летний вкатывальщик.

Ответы>>706714

03 Апр, 14:21 #496 #706712

>>706703
>std::cout << std::fixed << std::setprecision(16) << qwee; Нужно подключить <iomanip>
printf

248 Кб, 1115x780

03 Апр, 14:22 #497 #706714

>>706709
пик

>>706711
Почему тебя это волнует?

Ответы>>706717

03 Апр, 14:27 #498 #706717

>>706714
>Почему тебя это волнует?
Потому что вкатывальщиков у нас тут хватает.

Ответы>>706718>>706724

03 Апр, 14:28 #499 #706718

>>706717
Наоборот. Школьников хватает.

03 Апр, 14:28 #500 #706722

Оп тут? Хочу перекат и новый стишок.

Ответы>>706736

03 Апр, 14:30 #501 #706724

>>706717
Какая разница-то между вкатывальщиком 30 лет и вкатывальщиком - школьником?

Ответы>>706725

03 Апр, 14:31 #502 #706725

>>706724
15 лет

03 Апр, 14:33 #503 #706727

Есть класс с полем а и есть функция-член этого класса с локальной переменой а. Как из этой функции получить доступ к полю класса а?

Ответы>>706735

03 Апр, 14:37 #504 #706735

>>706727
Код покажи.

Ответы>>706740

03 Апр, 14:37 #505 #706736

>>706722
ебать доска быстрая?
Аноны.. я просто хотел узнать о потоке /dev/video0
в последних трех тредах годноты -- веток 5 из 20
хватит топить треды.. т.к. найти годноту надо скролить про то как .h в иде законектить и как сделать lab1_ans=a+b
..
может будем адекватами и не будем раковать хотябы в ставшем мне любимым треде?

03 Апр, 14:40 #506 #706740

>>706735
https://ideone.com/B0QQak

Ответы>>706742

03 Апр, 14:41 #507 #706742

>>706740
Забыл добавить. Он должен вывести 1.

Ответы>>706744

03 Апр, 14:41 #508 #706744

>>706742
this->a

Ответы>>706758

03 Апр, 14:56 #509 #706758

>>706744
A::a идиоматичнее

03 Апр, 14:58 #510 #706761

>>706633
В какой области?

Ответы>>706789

03 Апр, 14:59 #511 #706764

Поясните, действительно такая гадость возможна?
https://ru.wikipedia.org/wiki/C++#.D0.A2.D1.8F.D0.B6.D0.B5.D0.BB.D0.BE.D0.B5_.D0.BD.D0.B0.D1.81.D0.BB.D0.B5.D0.B4.D0.B8.D0.B5
Приведение типов
Некоторые преобразования типов не интуитивны, хотя могут производиться неявно. В частности, операция над беззнаковым и знаковым числами порождает беззнаковый результат; однако, в аксиоматике теории множеств множество натуральных чисел (N) является подмножеством множества целых (Z), а совместное использование элементов разных множеств допустимо лишь на уровне общего надмножества — то есть интуитивным было бы получение в результате целого (знакового) числа, но в С++ происходит наоборот, и возникает риск труднообнаружимой ошибки[22].

22 http://rsdn.ru/?article/cpp/XXtraps64bit.xml
По ссылке подобного не нашел.

Ответы>>706772

03 Апр, 15:12 #512 #706772

>>706764
http://ideone.com/oFJaj3
Сам посмотри

Ответы>>706800

408 Кб, 1092x873

03 Апр, 15:17 #513 #706774

Это книга такая дырявая, или что?

Ответы>>706775>>706776

03 Апр, 15:18 #514 #706775

>>706774
Всё, понял. Там запятые типа.

03 Апр, 15:18 #515 #706776

>>706774
long pop1 = 1, pop2 = 2;
Запятые там

03 Апр, 15:41 #516 #706789

>>706761
Dизайна языка.

Ответы>>706813

03 Апр, 15:42 #517 #706790

>>702133 (OP)
Парни мне нужна библиотека для mvs, чтобы построить графики.
1) График по функции, например y = x;
2) График по таблице, например x = 1, 2, 3; y = 2, 3, 4
Какие библиотеки можно юзать? Желательно, чтоб не сильно геморно прикручивалась.

Ответы>>707464

03 Апр, 15:54 #518 #706800

>>706772
http://ideone.com/0XO6xB
А так все получается нормально

Ответы>>706811>>706815

03 Апр, 16:08 #519 #706811

>>706800
Конечно, потому что ты даешь ему понять, что хочешь инт. Но по умолчанию будет unsigned, как и написано в вики

03 Апр, 16:09 #520 #706813

>>706789
Да, D лучше

03 Апр, 16:12 #521 #706815

>>706800
http://ideone.com/8Ge4mt
и даже так

Ответы>>706816

03 Апр, 16:17 #522 #706816

>>706815
Ты форматируешь unsigned int, как int
http://ideone.com/50NJyG

Ответы>>706827

03 Апр, 16:31 #523 #706827

>>706816
Теперь понял.

03 Апр, 17:42 #524 #706885

>>706659
>STL гарантирует, что при записи нового значения типа int оно инициализируется нулем
Da

03 Апр, 18:02 #525 #706915

C++ - язык для байтоебства. Но какие стандартные байтоебские задачи можно порешать?

Ответы>>706924

03 Апр, 18:06 #526 #706924

>>706915
оно должно быть в крови

>>706864
>>706902

Ответы>>706927

03 Апр, 18:07 #527 #706927

>>706924
То есть я должен что угодно уметь превращать в байтоебство?

Ответы>>706929

03 Апр, 18:08 #528 #706929

>>706927
почему бы и нет? нахера озу засирать?

03 Апр, 18:09 #529 #706931

Посоветуйте книжку по ООП формата:
Теория - пару практических заданий - опциональные советы по практике

В синтаксис и стл уже умею

Ответы>>706937

03 Апр, 18:10 #530 #706937

>>706931
ну на самом деле там да, много тонкостей.. но Бьерн Страуструп же!
..
а по сути трогай ооп больше. Больше вникнешь.

Ответы>>706942

03 Апр, 18:11 #531 #706942

>>706937
Так я просто не знаю, зачем трогать. Мне и в процедурном стиле норм. Проще структурку описать и функций рядом насобачить

Ответы>>706948

03 Апр, 18:20 #532 #706948

>>706942
ну когда пишешь лабу -- да.
но я мимо тот байтоёб который писал игру байтоёбя когда стал работать с большим количеством однотипных, но разных классов/структур. понял что можно взять однотипную вешь и пихнуть её в отдельный класс/структуру, а остальные классы.структуры будут меньше и даже не изменятся!
+ работа с дочерними классами упростится.
..
..
например.. у нас есть бочки ящики оружия..
делаем класс с позицией из вектора vec3 и двумя производными по ней.
унаследуем всё всё от него.
и потом перерасчитываем все разные классы одной формулой!
..
сколько ты будешь трахатся с этой таской в процедурном стиле?
зы я смотивировал?

Ответы>>706952>>706995

03 Апр, 18:23 #533 #706952

>>706948
Не, это я понимаю. Наверное, мне просто это пока не нужно. Хотя мой знакомы даже олимпиадные задачки решает в ооп-стиле

Ответы>>706955

03 Апр, 18:25 #534 #706955

>>706952
ну я щас эклипс подстроил пиздец как под себя от цветов до хоткеев.
мне удобно капец как нажать хоткей и печаткать новый класс одной левой чем в файлике main.цпп что-то городить..
да и пишешь больше 200 строк в файле и открываешь его в ебанутом редакторе (на телефоне в гите) охуеваешь его скролить! а так красиво.. все на своих местах.. понятно

Ответы>>706957

03 Апр, 18:27 #535 #706957

>>706955
Можно вопрос? Ты под чем?

Ответы>>706959>>706962

03 Апр, 18:27 #536 #706959

>>706957
под лизуном

03 Апр, 18:30 #537 #706962

>>706957
фриэлэсде
или ты о чем?

03 Апр, 18:57 #538 #706983

Компилятор крашится после ввода
Хотя в онлайн компиляторе все работает
Что за хуйня?

Ответы>>706984>>706985

03 Апр, 18:58 #539 #706984

>>706983
что за компилятор? ос?

Ответы>>706989

03 Апр, 18:58 #540 #706985

>>706983
Код показать не хочешь? Лог ошибок?

Ответы>>706989

03 Апр, 19:02 #541 #706989

>>706984
dev c++
windows 10
>>706985
cpp.sh/6dm3

Ответы>>706992>>706997

03 Апр, 19:05 #542 #706992

>>706989
У меня в gcc под линем все нормально. Проблемы у твоего компилятора

Ответы>>707007>>707107

03 Апр, 19:09 #543 #706995

>>706948
struct vec3 {
float x, y, z;
};
struct box {
vec3 coords;
};
Ну и зачем тут твое ооп?

Ответы>>707007

03 Апр, 19:11 #544 #706997

>>706989
В крестах нельзя делать динамический массив на стеке. В некоторых компиляторах можно (gcc). Выделяй память в куче.

Ответы>>707057

03 Апр, 19:30 #545 #707007

>>706992
gcc FreeBSD
гоу крч срачеос

>>706995
затем что у дробовика есть функция стрелять, а коробку вот ты написал.

struct drobavik_kobain_lololo : box
{
void babah_alax();
}
все. мы делаем дробаш коробкой, которая умеет стрелять. не переписывая коробку

03 Апр, 19:36 #546 #707009

Как отнять один из элементов массива от среднеарифметического?
sum - a[x]?

Ответы>>707010

03 Апр, 19:37 #547 #707010

>>707009
a[x]-=sum

Ответы>>707011

03 Апр, 19:38 #548 #707011

>>707010
sum-=a[x]

03 Апр, 19:46 #549 #707017

Сука, ну не правильно высчитывает эта блядина.
Мне надо, чтобы находилось среднее арифметическое а1,..,an без элемента a[x], который вводит пользователь, но он выводит все неверно.
cpp.sh/2x24v

Ответы>>707020>>707024

03 Апр, 19:50 #550 #707020

>>707017
> cpp.sh/2x24v
Ты точно не налажал с нумерацией массива? В программе у тебя с нуля, а вводишь ты что?

Ответы>>707021

03 Апр, 19:50 #551 #707021

>>707020
И делить тогда надо не на n, а на n-1

03 Апр, 19:52 #552 #707024

>>707017
cpp.sh/4mtl
А что не так?

Ответы>>707027

03 Апр, 19:53 #553 #707027

>>707024
> cpp.sh/4mtl
Ну, если пользователь введет 4, тебе надо какой элемент от начала не считать? 4 или 3?

Ответы>>707028

03 Апр, 19:54 #554 #707028

>>707027
тогда сделай sum-=a[i-1];

Ответы>>707030

03 Апр, 19:57 #555 #707030

>>707028
Ага, и деление на n-1

03 Апр, 20:00 #556 #707033

Теперь еще и на этот сайт не заходит блядь.

Ответы>>707034>>707035

03 Апр, 20:02 #557 #707034

>>707033
Не нервничай

Ответы>>707035

03 Апр, 20:04 #558 #707035

>>707033
>>707034
Главное, на двач заходит

03 Апр, 20:08 #559 #707039

Я ебал, легче заново код переписать.

03 Апр, 20:32 #560 #707057

Вроде сделал рабочий код, теперь осталось решить проблему с компилятором.
Выше мне сказали
>>706997
Но я не понял о чем идет речь.

Ответы>>707069

03 Апр, 20:35 #561 #707058

ОП в треде, скоро все будет. Блядь, зря я рассчитывал, что тренд до завтра дотянет.

03 Апр, 20:55 #562 #707069

>>707057
Вместо int arr[n]
int звёздочка arr = new int[n];
В конце
delete arr[];

Ответы>>707100

03 Апр, 21:14 #563 #707100

>>707069
>delete arr[];
А не delete[] arr?

Ответы>>707104

03 Апр, 21:15 #564 #707104

>>707100
Да.

03 Апр, 21:18 #565 #707107

>>706992
> Проблемы у твоего компилятора
Нет.

04 Апр, 00:04 #566 #707219

Поясните тупому за move семантику. Мы же когда пишем просто ссылку мы не копируем объект. Зачем это вообще нужно?

Ответы>>707225>>707276

04 Апр, 00:20 #567 #707225

>>707219
>Зачем это вообще нужно?
Для move-конструкторов.

998 Кб, 312x176

Мэтт Матьего Деймони 04 Апр, 01:47 #568 #707254

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

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

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

Подскажите плиз, как в сопроводительном письме правильно напроситься на стажировку\"на работу на полставки" в компанию?

Ответы>>707258>>707260>>707288>>707450

04 Апр, 01:51 #569 #707258

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

Ответы>>707450

04 Апр, 01:53 #570 #707260

>>707254
Что кроме лаб писал?

Ответы>>707268>>707450

04 Апр, 02:04 #571 #707268

>>707260
никаких суперпроектиков не пилил, если ты об этом.
поэтому и хочу напроситься на стажировку или на полставки.

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

Ответы>>707450

04 Апр, 02:45 #572 #707276

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

04 Апр, 03:35 #573 #707288

>>707254
Up

Ответы>>707291>>707294

sage 04 Апр, 03:40 #574 #707291

>>707288
Down

Ответы>>707294

04 Апр, 03:47 #575 #707294

>>707288
>>707291
Вверх-вниз, вверх-вниз. Туда-сюда, туда-сюдааа.

04 Апр, 07:58 #576 #707316

как же хочется перекатика
и тред без лаб

102 Кб, 493x500

04 Апр, 12:26 #577 #707450

>>707254
>>707258
>>707260
>>707268
bump, парни

04 Апр, 12:38 #578 #707462

>>702236
UE4 на с++

04 Апр, 12:39 #579 #707464

>>706790
бамп

04 Апр, 15:09 #580 #707569

НОВЫЙ ТРЕД
https://2ch.hk/pr/res/707568.html (М)
https://2ch.hk/pr/res/707568.html (М)
https://2ch.hk/pr/res/707568.html (М)

04 Апр, 18:55 #581 #707718

>>705782
Вобщем вектор+сорт конкретно в моём случае лучше, т.к. сначала можно сделать ресёрв, потом нужно сорт+юник+сорт другим компаратором. В конце необходим доступ по индексу, т.е. сет вовсе не подходит, т.к. по нему прыгать нельзя, только взад-вперёд елозить.

Кста, кто-нибудь знает, можно ли в бинарном дереве организовать произвольный доступ со сложностью быстрее чем О(Эн)?

04 Апр, 21:56 #582 #707933

>>705634
>>705860
Или что-то наподобе left-pad.

04 Апр, 21:58 #583 #707935

>>705888
>>705898
>просто int, равный 0
0 - это возможно стандартный ввод или вывод, отсюда и растут лапы

Обновить тред
Двач.hk не отвечает.
Вы видите копию треда, сохраненную 28 апреля 2016 года.

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

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

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion