>>201745360 (OP) Скачай стандартный visual и не выёбывайся, а вообще кто как хочет так и дрочит, можно вообще кодить в блокноте, а компилировать на сайтах.
>>201745360 (OP) Вижуал самое то для неофита. Подсказки синтаксиса, подчеркивает любое даунство, разжевывает ошибки так, что, если хоть немного умеешь в ангельский и не даун — разберёшься
>>201748097 От того что ты ошибок в синтаксисе делать не будешь, и разметка у тебя будет читаемая говнокода и логических ошибок меньше у тебя не станет. Так что это больше на маразм похоже.
>>201748359 Ненене, маразм - это отвечать безграмотному дауну, который вкатывается в программирования спрашивая какую IDE ему поставить и будет ли там русек. ОП либо толстый тролль, либо клинический идиот.
>>201748239 Ой, иди нахуй, сначала мне все пиздели, что линукс сложный, перекатился с винды вообще без проблем, потом про вим, ну своеобразный, но не более, вы дауны какие-то, короче.
>>201748594 Ну, иногда, когда вкатываешься во что-то новое хочется сразу начать с нормального ПО, потому что переучиваться тоже время, а насчёт русского, сам я английский знаю достаточно что бы простыни читать, но постоянно его видеть тоже мозг устаёт. Да и может он имел ввиду просто интерфейс с поддержкой русской локализации.
>>201745360 (OP) Если не нужно формочки рисовать то продолжай ебошить в блокноте. Сам пользуюсь vs codium (опенсорс форк visual studio code), реально сила. Фигачь плагин на c/c++ intellisense, code runner, и еще всяких на удобство кодинга.
>>201750950 Я честно говоря все на нем пишу. И игори под винду, и приложухи под андроид, и утилиты по обработке разных файлов, и файлокачалки, сейчас вот на emscripten и сайты делать начал. Удобно, все на одном языке.
>>201750170 Она и так табуляцией видна, но мы же хотим больше строк кода, верно? Чтобы потом открывать эту полотнину полупустого текста, скроллить её и дрочить
>>201751579 Ну можно, например, написать что-то типа f(smart_ptr(new Object()), Thing()) и типа т.к порядок вычисления аргументов не определён, может быть так new Object() Thing() smart_ptr() и если Thing() выбросит исключение, то будет утечка. Но это пиздец тонкости уже, нормально пиши и нормально будет. auto ptr = smart_ptr(new Object()); f(ptr, Thing()) например.
>>201752025 А, или ты имеешь ввиду, что тупо аргументы передаём, а в функции уже создание smart_ptr происходит и проблема исчезает? Ну да, но это как пример, можно сделать код с утечкой, но гораздо тяжелее. >>201752239 Что что? >>201752226 В смысле? try catch сделал, а утечка осталась.
>>201752348 >try catch сделал, а утечка осталась. Так не надо делать, пусть проваливается до конца, падает, виртуалку рестартуешь и вся память с нуля свободна.
>>201752348 >можно сделать код с утечкой а можно не сделать. те кто не делают код с утечкой - получают много денег, а кто делает - пишет на JS и ПАЙТОНЕ
>>201752371 Все работает, но если ты не знаешь язык заранее то привыкаешь к специфичной хуйне от которой потом тяжело отвыкать (а не зная о их существовании можно и проблем огрести).
>>201752440 Ну типа да, про то и говорю, что язык предоставил кучу возможностей не делать код с утечкой и писать вот так f(smart_ptr(new Object()), Thing()) вряд ли кто-то будет. Это специально надо так стараться.
>>201752693 Можно. Но не вкатывальщику. Потому что, например, без экстеншена половина Windows.h отвалится, а большинство примеров/книг к нему обращаются.
>>201753259 Если ошибка записи у тебя штатная ситуация, которая подразумевает игнор-ретрай-аборт, то это и не ексепшном должно идти, а проверкой кодов возврата, состояния файлового драйвера и т.д. А эксепшн это значит что у тебя жесткий диск сгорел нахуй.
>>201754375 Я так понимаю что у тебя сценарий типа class Cat: Animal { meow() } class Dog: Animal {bark() } void meow(Animal& c) { try{ std::dynamic_cast<Cat&>(c)->meow() } try { std::dynamic_cast<Dog&>(c)->bark() } } Но ты знаешь да пошло оно в таком случае.
>>201754566 Лол, мультметоды делаются над произвольным типом с ref-семантикой. Но ты не можешь контроллировать использование своего кода за пределами собственно своего кода.
>>201754403 > состояния файлового драйвера Охуительные истории, может еще число inode-контроллировать и всегда принудительно буферизацию вырубать чтобы самомальный filesystem велосипед не обосрался ненароком?
>>201754663 Ладно будем считать что мне этого не понять. Видимо какой-то контейнер, который молча хавает в трай-катче когда в него что-то неподходящее положили, зато без падений. Пусть лучше потом портит данные.
>>201754717 Это один из множества примеров. Посыл в том, что плюсы это не тот язык где нужно поверх абстракций языка накручивать еще и свои искуственные ограничения, конфликтующие с реальностью.
>>201754704 Он прав. На нагрузках тебе тот же ofstream может выдать фалс на открытие файла, но при ретрае ты можешь получить доступ. Для обычной приложухи это, наверное, перебор, а вот для нагруженных систем такие вещи встречаются.
>>201754830 Если без исключений компиллировать на уровне объектника - то да. Но в нормальном режиме ты без этого размантирование носителя, например, не определишь. Если скажем у тебя на амазоновской тачке ECB диск отключился, или, тривиально, флешку вытащили из компа.
>>201754919 Ну я вот не согласен. Функция чтения файла по сути возвращает тупл (данные, статус). Если во время чтения прочиталось меньше чем надо, и вылез статус ошибка чтения, спокойно исполняется логика где конечный автомат переходит в другое состояне или там посылается сообщение компоненту который отобразит попап на экране пользователя. Зачем тут городить исключения? Ну видимо кому-то скучно жить и ему нравится дебажить вон те утечки памяти при создании объктов через жопу.
>>201755153 Смотря что ты пилишь. Например итерируемый адаптер до ECB/Hadoop/CephFS. В плюсах это обычно типизированный не-константный итератор, который соответственно можно использовать для записи в хранилище.
Если ты жестко завяжешься на локальную/сетевую/цодовскую файловую систему то ты проебешь как консистентность, так и скорость (кеши у нас под LFRU по дефолту втыкаются), намертво привяжешься к конкретной реализации конкретной файловой системы. Банально это пускает по пизде быстрое масштабирование-развертывание-репликацию в уже работающей системе.
>>201755490 Обычно mmap без оберток, ofstream это дохуя непредсказуемая вещь в конкретной реализации, когда он будет флашить буфер, а когда нет. Это если жесткий диск вообще используется, а не RAM-массив.
Самому нравится sublime text, а запускаю через командную строку, там удобнее выделение и подсветка, но начать лучше с visual studio, и ему подобных, а вообще сверху верно написали, IDE - дело вкуса
>>201755811 Это просто была проверка на аутистов. Наверное можно было догадаться, что вместо модального попапа это может быть уведомление в области уведомлений или что вы там сейчас любите.
>>201755571 >Обычно mmap без оберток ох уж мне этот сишный онанизм.
>ofstream это дохуя непредсказуемая вещь в конкретной реализации, когда он будет флашить буфер, а когда нет флаш ты сам делаешь, а остальное есть с стандарте. нужны строгие гарантии - пишешь сам. не вижу причин самому допилить ofstream под mmap.
>>201755977 Так о том и речь. Если ты пишешь что то большое распределенное и перфомансное - то для этого ты используешь то, что предлагают вендоры профильных решений. Банально ни одна контора не выделит бюджет на свой хадуп, по крайней мере в здравом уме.
И обратный случай - ты пилишь что-то маленькое и пользуешься стандартной библиотекой со всеми ее исключениями и семантиками, потому что опять же ты не можешь выкатить конкурирующее доказуемо работоспособно изделие, оно само будет тяжелее твоего проекта.
>>201756013 Что "это"? Возьми в своей ОС большой файл, начни копировать его на флешку и вытащи, у тебя не будет сообщения об ошибке копирования? Странно.
>>201756241 Я тебя перестал понимать. На сях трудно тестировать гуй? Да пожалуй, но библиотеки компьютерного зрения есть, можно детектить где должен находиться попап и текст на нем. Или хотя бы найди соответствующее окно в ОС.
до этого эксперементировал только с php в блокноте