Этого треда уже нет.
Это копия, сохраненная 29 апреля 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
2 1888636
>>888626 (OP)
2 из 3 оппиков проприетарные!
38225a.jpg67 Кб, 500x651
3 1888665
Инкапсулировался в тред

>>888636

> 2 из 3 оппиков проприетарные!


Лучше всё равно не придумали
4 1888752
>>888636
у нас тут С++ тред, а не петушиная параша
5 1888758
>>888665
Тупая картинка. То, что на современных плюсах делается в одну строку, на С надо пилить на 20 строк. Да даже плевать на плюхи из коробки. Автоматический вызов деструктора - это уже величайшее изобретение человечества, из которого вытекли смарт поинтеры, локеры мьютексов и другое авто управление ресурсом.
6 1888763
>>888758

> Автоматический вызов деструктора


При эксепшене тоже вызовется?
валера.png26 Кб, 800x536
7 1888777
как обмазаться интеловским компилятором на линукс не выкачивая при этом полтора гигабайта сопутсвующей хуеты?
Pepe ASCII dancing.gif198 Кб, 336x468
8 1888825
На днях начал пытаться в программирование и С++ в частности с прицелом на Unreal Engine (уже своровал нужные курсы с Udemy), но немного свернул с нацеленного пути и решил написать себе программу-секундомер своей мечты под Виндовс 10, которая могла бы:
- иметь кнопки с настройками и циферки секундомера как два разных окна
- держать окно с циферками поверх всех окон, в то время как окно с настройками было бы НЕ поверх всех окон или могло бы сворачиваться в трей отдельно от окна с циферками
- реагировать на комбинации нажатых клавиш даже если окно секундомера не активно
Ну пока наверное всё. Пока асилил логические/циклические конструкции, вот это всё, ООП прям на четверть шишечки (вроде всё понел, но хуй знает как пойдет). Скачал Qt для своей цели, планирую посмотреть на Ютубе какой-нибудь плейлист по обучению Qt и пытаться что-то зделоть параллельно гугля код Qt приложений и секундомеров в целом.
Насколько сильные по шкале от 1 до 10 меня ждут обосрамсы и превозмогания?
9 1888829
>>888825
Все это проще на шарпе написать.
10 1888940
Анон, есть какие-то средства чтобы узнать - сколько у меня занято памяти по глобальные переменные и статики?

С динамической памятью -то понятно. А тут я хз как

(в идеале вообще чтобы можно было увидеть все имена таких переменных, но это совсем хотелки)
11 1888974
>>888825
Сначала effective modern c++ прочитай а потом уже переходи к конкретной сфере.
12 1889009
>>888763
Да, а что?
13 1889050
>>888940
Без задней мысли ищешь размер data & bss в листинге и складываешь.
Выпускайте кракена.mp41,7 Мб, mp4,
576x1024, 0:10
Глуповатый вопрос, но я попытаюсь 14 1889077
Сап, господа. Есть вопрос по мануалу:

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



У меня типичная ситуация: я в 2014 еще будучи школяром выбрал ПЛЮСЫ как язык для вката (до этого знал qbasic и Pascal, но эту хуйню даже в расчет не беру, поэтому будут плюсы первыми), прочитал книгу "С++ для чайников", дошел до указателей, охуел, закрыл книгу. Вернулся через два года, прочитав параллельно Таненбаума про архитектуру ПК. Дочитал ту книгу "для чайников" полностью, но особо не въехал, при попытке самостоятельного кодирования не мог ничего сложнее чем калькулятор сделать. Еще через два года поступил на ИБ, там был сем где мы кодили на плюсах, плюс я параллельно прочитал Лафоре про плюсы и сделал все задания. Но при попытке самостоятельного кодинга ситуация почти полностью повторилась. Сейчас решил заново изучить плюсы, чтобы работать с Unreal Engine, но решил сделать это более цивильно, чтоли.

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

Огромная просьба не крыть меня хуями, и не орать о том, что такому дауну как я даже пытаться нихуя не надо, а сразу идти в макдональдс. Спасибо заранее
15 1889093
>>889077

>прочитал книгу


>дошел до указателей


Прочитал твой пост
16 1889180
>>889077
Бери да читай Страуструпа. Там минимум информации об >алгоритмы, архитектура пека, операционные системы
ты получишь.
17 1889200
>>889180
Понял, спасибо
18 1889334
>>888777
никак
19 1889520
Как подготовиться к собесу? Опыт работы есть, но со временем что-то из головы улетучивается, а что-то просто со временем и стандартами меняется, вроде этого https://pastebin.com/raw/HBAv7Knj в 17 стандарте собирается, а в 20 нет
20 1889532
>>889520
такие вещи на собесах не спрашивают, лал.
21 1889545
>>889520
А почему в 17 это собирается?
Безымянный.png10 Кб, 584x372
22 1889610
Как заставить это работать?
23 1889613
>>889610
auto ⚹arr[] = { данные };
Image image( arr, 10, 6 );
24 1889617
>>889610
У тебя временный объект крякнется после );
А ты на него ссылку сохранил
Безымянный.png18 Кб, 584x372
25 1889619
>>889613
Неверно вопрос задал. В зеленом квадрате ничего менять не нужно
26 1889620
>>889610
Никак, initializer_list<int> не кастится в указатель на unsigned
27 1889623
>>889619
Тогда переделай конструктор на вектор или задрочись с шаблонами и сделай std::array
28 1889627
>>889619
У тебя в зеленом квадрате лажа написана.
29 1889640
>>889623
Так если на вектор переделывать, нужно дрочиться будет с копированием элементов и как в си с памятью работать. Про шаблоны я даже не понял о чем ты, если честно.

>>889627
Да это не мой код собственно, это из каты. Если кому интересно:
https://www.codewars.com/kata/58c8c723df10450b21000024
30 1889643
>>889640

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


https://wandbox.org/permlink/exdgSm1CtJUsK4a1
31 1889650
>>889640
Исходя из того что я там прочитал, ты должен копировать элементы.
32 1889659
у вас в прошлом треде нерабочая ссылка сюда
33 1889663
>>889659
Переживаешь за тех, кто не сможет сюда перекатиться? А ведь они так и будут сидеть в прошлом треде, пока он не уйдёт в архив, и тогда им придётся уйти из C++.
34 1889670
>>888626 (OP)
postfix ++ возвращает rvalue, или как?
35 1889675
>>889670
Если быть точнее, то prvalue
https://en.cppreference.com/w/cpp/language/operator_incdec
The result is prvalue copy of the original value of the operand
1608829799754.png1,4 Мб, 1000x1400
36 1889699
Кто нибудь разбирается в Qt и 3д графике одновременно?
37 1889700
Анансы, подскажите, где можно найти курсы\туториалы\книги по изучению плюсов согласно современным стандартам? В идеале сразув 20, но хотя бы 17. А то везде говно мамонта, тот же труп страуса 4 издания 13 года. А стандарт там еще более дрвений.
38 1889707
>>889699
В 3д графике не разбираюсь, но за пикчу спасибо.
39 1889709
>>889700
17 и 20 стандарты - это сахарочек и суперадванцед фичи. Для изучения - С++14 достаточно, серьезно.
40 1889712
>>889699
Пиши вопросы, заебал
41 1889713
>>889709
C++03. Дальше наркомания пошла.
42 1889715
>>889713
Ты хотел сказать CFront
43 1889717
>>889712
Помогите советом пожалуйста. Я хочу вращать плоскую фигуру в 3 осях, и отображать получившуюся проекцию на плоскость картинки.
В документации Qt нашел подходящий метод rotate, но почему то он вращает фигуру неправильно, смещает и искажает ее. Как сделать правильно? Может есть другие методы?
transform.rotate(60.0, Qt::YAxis);
poli->setTransform(transform);
На второй картинке результат.
44 1889720
>>889709
Да изучить я уже более менее изучил QT. Хочется как то окунуться в более продвинутую часть, а информации по ней хуй да нихуя.
45 1889722
>>889707
Это я на пикче кста.
46 1889724
>>889717
А ты в таймер запихни свою вращалку и посмотри, как она крутится.
47 1889727
>>889717
Похоже, ось Y это "вверх", а тебе нужно вращать его с осью, направленной на "экран". А это обычно ось Z.
С кутэ не работал-кун
48 1889728
>>889724
Я кручу ее по клику мыши. Неправильно крутится, очевидно же.
49 1889730
>>889717
Матрица проекции как настроена?
50 1889731
>>889727
Ось Y это вниз обычно, а Х вправо. Вокруг оси Z правильно вращает кста. А вот вокруг X и Y искажать начинает почему то.
51 1889732
>>889730
Я ее не трогал вообще. Просто создал QTransform, крутанул его и сделал setTransform() для QGraphicItem-а.
52 1889733
>>889720
Читай Николая Джоссутиса по С++17, и жди пока он допишет про С++20, хуле
53 1889734
>>889731

>Ось Y это вниз обычно


В opengl емнип вверх, хотя особой разницы нет.
54 1889739
>>889731

>А вот вокруг X и Y искажать начинает почему то


Правильно. Представь как ты в 3D вращаешь по оси X или Y.
55 1889740
>>889734
Ну в OpenGL то да, но у меня здесь оконные координаты, получается.
56 1889741
>>889739
Представляю, это может быть правильно, только если ось Z направлена ко мне под каким то углом, а не точно перпендикулярно монитору. А она направлена перпендикулярно монитору.
57 1889744
>>888626 (OP)
если виртуальная функция занимает место поинтера, то она прост по другому названный указатель на функцию?
58 1889745
>>889728
А ещё очевидно, что твоя фигура вращается буквально вокруг оси Y
59 1889748
>>889741
Кажется, твой QTransform делает тебе перспективу, откуда такой и эффект.
QTransform differs from QMatrix in that it is a true 3x3 matrix, allowing perspective transformations. QTransform's toAffine() method allows casting QTransform to QMatrix.
60 1889750
>>889745
Чел...
А еще у меня угол поворота с каждым разом становится все меньше и меньше, хотя я ожидаю, что он всегда будет на 60 градусов поворачивать.
А еще когда он все таки поворачивается на 90 градусов, он дальше не поворачивается, хотя по идее должен крутиться и дальше, в том числе и в отрицательном направлении.
Только мне бы сначала разобраться, почему при повороте происходит искажение.
1608832197642.jpeg60 Кб, 1120x772
61 1889754
>>889748
Сработало, анончик!
Сделал poli->setTransform(QTransform(transform.toAffine())); теперь перспектива исчезла.
Теперь бы разобраться с еще двумя проблемами >>889750
62 1889756
>>889754

>Сработало, анончик!


Пусть будет тебе урок: RTFM
63 1889758
>>889756
Я читал вчера весь вечер, но как то упустил этот момент.
64 1889770
>>889750

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


Функция принимает угол в радианах или градусах? Угол там суммируется при повороте или просто присваивается новое значение?
65 1889772
>>889770
Градусы. Скорее всего он просто каждый раз умножает на cosa текущую длину по оси Х. А для того, что мне нужно, он должен умножать на cosa изначальную длину фигуры по оси Х. Хз, как это контрить, видимо я должен сам ручками скейлить фигуру после поворота, видимо так и задумано. Плюс еще надо каждый раз ручками сдвигать фигуру подальше от оси Y, иначе она к ней постоянно стремится.
66 1889892
>>888626 (OP)
int ::* coolpointer;
хуле не даёт?
67 1889906
>>889610
Переименовать файл в .py
68 1889909
>>889906
Проиграл.
69 1889931
>>889892
И что это должно означать?
70 1889934
>>889931
==
int *coolpointer;
н
71 1889935
>>889934
не?*
72 1889955
>>889934
но только для статичных мемберов
73 1890060
Sup, потсоны! Спешите обоссать видеть, великовозрастной питонщик пытается освоить плюсы за 21 день карантина, пока все идет гладко как ментовская дубинка в сухую сраку и вот сразу трабл, не могу понять сути const / extern, точнее этот конкретный случай:
- главный app.cpp, дополнительный alpha.cpp
- alpha.h инклюд в оба, но ввиду указания ифндеф в какой-то один, какой?
- если в app заинклюд а в alpha.cpp нет - тогда откуда pts знает о SOME, ведь она const а значит static и должна быть видна только в alpha.h & app.cpp
-если в alpha заинклюд а в app.cpp нет - откуда в мейн знает о pts?
74 1890064
>>890060
подозреваю конечно что это тупой вопрос, наверное в app инклюдит сначала а pts просто начинает искать SOME в области видимости app.cpp
ну короче можете начинать обсирать
75 1890065
>>890064
энивей эта залупа в ^1488 раз сложнее пистона и в столько же интереснее!
76 1890067
>>890060
оба сипипишника инклудят alpha.h и знают, что там внутрях.

ифдефы работают по другому.
77 1890078
>>890060
Тут прикол в том что дефайн объявляется не глобально на весь проект. А только конкретно внутри каждого cpp.

Поэтому на самом деле и app.cpp и alpha.cpp инклюдят все содержимое из alpha.h...

Вот так:
- app.cpp инклюдит alpha.h и объявляет дефайн из ифндефа.
- alpha.cpp инклюдит все содержимое из alpha.h, потому что оно не знает ничего про app.cpp и то что там был дефайн

Вся суть что в с++ единица трансляции (тобишь файл cpp) не имеет никаких связей с другими единицами - она не знает ни о каких переменных /дефайнах/функциях из других единиц.

Поэтому, какие бы дефайны не были объявлены в app.cpp, но в alpha.cpp их нет. Тяжелое наследие древних времен, когда код писали в одном-двух файлах.

Так для чего нужен этот ифндефайн? А для того, что у тебя может быть длинная цепочка инклюдов, и чтобы внутри например app.cpp этот alpha.h не вставлялся стопятсот раз.

Короче, смотри как
- каждый cpp файл независим и ничего не знает о содержимом других cpp файлов
- исключение, если cpp файл видит что-то типа extern, тогда он знает что эта переменная/функция описана где-то в другом месте и это будет разруливать уже линковщик, а не компилятор.
- команда include - это не какой-то там подключение чего либо, как в других языках. Это команда "взять содержимое из файла, и вставить его в место этой команды". Вставлять можно что угодно - например строки текста в стринг

Поэтому если еще не понял, просто скопируй все содержимое из файла alpha.h, и вставь в оба файла app.cpp и alpha.cpp это содержимое вместо инклюда. Тогда по компилятору поймешь как работают дефайны

p.s. сейчас лучше использовать "#pragma once" вместо ифндефайна - быстрее будет компилироваться и не придется придумывать ебанутые названия дефайнов.
78 1890292
>>890067
>>890078
Спасибо парни!
>>890078
Тебе вообще респект за длиннопост и внятное объяснение. Добра в новом году!
79 1890618
>>888626 (OP)
каждая виртуальная функия занимает место в классе? или только 1 указатель за полиморфизм
80 1890650
>>890618
Согласно стандарту, это имплементейшн-дефайнд™. Ну а вообще всё хранится в виртуальной таблице, так что да - один указатель. Можешь сдлеать sizeof на различные классы и посмотреть, когда он появляется.
poehavn.png352 Кб, 991x658
81 1890702
Хацкерский интерфейс установщика. Они там совсем поехали?
82 1890703
>>890702
Похоже на установщик драйвера от нвидии.
83 1890723
Как посчитать минимальную асимптотику алгоритма? Ну или сколько действий чисто математически нужно совершить для решения задачи
84 1890727
Я чет понять не могу что такое QT? Это типо IDE как visual studio или штука типо openGl или DirectX
85 1890732
>>890727
Этл штука для клепания интерфейсов. Огромная либа. Там пол стандарта, но в своей реализации
86 1890736
>>890727
QT - это QuickTime, такая эппловская штуковина для слушания музычки.

А Qt - это фреймворк, в первую очередь для создания десктопных приложений с окошками, но в нём есть ещё всякое, в частности, работа с сетью и БД.
Также есть Qt Creator -это уже IDE с поддержкой Qt.
87 1890744
>>890736
>>890732
ну короче WinApp для зумеров неосиляторов? Таким кончено хакерские интерфейсы в загрузчике и нужны!
image.png18 Кб, 557x467
88 1890751
>>890744

> WinAPI


А ещё LinAPI, MacAPI, AndroidAPI ...

> неосиляторов


Осиляторы, наверное, вместо одной строчки на Qt каждый раз пишут пикрил, где в каждом блоке кода по 100 строчек заполнения структур, выделения памяти, дескрипторов, ресурсов, вызовов процедур, проверок, обработок ошибок.
89 1890762
>>890751
print("Всё так")
images (17).jpeg4 Кб, 224x224
90 1890897
>>888626 (OP)
Зачем создали язык си++, ведь можно было улучшать си. В чем профит ? Я гуглил ответа не нашел
91 1890906
>>890897
Название "c++" буквально означает "улучшенный си".
92 1890908
>>890897
Сишка должна быть простой насколько возможно, чтобы было легко написать компилятор даже для самых экзотических платформ и мочь портировать на эти платформы существующий код. Можно было бы улучшить сишку до уровня крестов и юзать на таких платформах подмножество, но это подмножество было бы везде разное, и вместо универсальной сишки получилось бы дохуя диалектов.
93 1890954
>>890906
Нет, оно означает что мы улучшили си, но вы получили прежнее значение.
94 1890969
>>890897
Комитет Си невероятно консервативный, хрен чего добавишь. Поэтому все пишут на GNU C, а не обычном
95 1890975
>>890897
Так C++ это и есть улучшенный С. Просто в Си добавили классы и шаблоны, а дальше пошло поехало.
96 1891228
>>890969
Это больше похоже на правду
97 1891424
В сишку можно было бы завезти нормальные макросы и потом превращать сишку во что хочешь, добавляя при помощи макросов новые конструкции языка. Почему так не сделали, а если сделали, то почему такое не прижилось? Я нашёл ролик любительский проект, интересно мнение других. https://github.com/eudoxia0/cmacro
На голой сишке приходится очень много однотипного кода писать, и при этом в некоторых местах требуют именно сишку из-за её простоты.
98 1891455
>>891424
Матрасы и шаблоны плохо на скорость компиляции влияют. Есть конечно кросскомпиляция, но с ней тоже возни хватает.
99 1891482
>>891424
Представляешь, как поверх таких макросов появится овердохуяллион кривых языков без документации? Читая исходники проектов на сишке, будешь каждый раз учить кучу языков?

> cmacro


M4 давно придумали.
100 1891486
У меня есть структура состоящая из трех полей. Одно поле это значение, а другие просто какие то свойства (число от 1 до n). Допустим я отсортировал кучу таких объектов (n^n) по возрастанию значения. Теперь мне нужно сделать так: перебираю каждый объект и мне нужно посчитать сколько элементов, которые по значению меньше чем текущий объект и при этом у них ни одно из оставшихся двух полей не совпадает. Есть ли в плюсах или вообще в программировании для этого какая нибудь структура данных для быстрого подсчета таких объектов?
101 1891495
>>891486
std::count_if
102 1891498
>>891495

>для быстрого подсчета


нет
103 1891527
>>891495
>>891498
Мой вопрос как бы больше по алгосам, а не плюсам
104 1891539
>>891527
Тогда иди к сишникам, там пишут алгоритмы самостоятельно.
105 1891546
>>890908

>и мочь портировать на эти платформы существующий код


Пишешь int на десктопе: 32 бита, всё работает.
Пишешь int на ардуину: программа багает по непонятной причине, у тебя нет COM-порта, чтобы отладить, бежишь покупать новый программатор, он не работает, для него нужны проприетарные драйвера, закачиваешь проприетарные драйвера и прошиваешь прогамматор, программатор видит, что ты работает не с винды и говорит строгое "нет", бежишь за новым программатором, бежишь за новым ПК с ком-портом, принтфишь ошибки в UART, спустя час узнаёшь, что здесь sizeof(int) равен двум байтам.
106 1891549
>>891546

> узнаёшь, что здесь sizeof(int) равен двум байтам.


А ещё здесь, внезапно, нельзя вызывать функции WinAPI, ой, как же так?
107 1891553
>>891498
Он может не сортировать и тогда да.
108 1891556
>>891486
Какое нибудь дерево, в котором ты рассовываешь по корзинам.
109 1891563
>>891546

>спустя час узнаёшь, что здесь sizeof(int) равен двум байтам.


Так а тебе никто не обещал что будет определенного размера
110 1891571
>>891556
Так и называется? Как гуглить?
111 1891612
Крестаны, если у меня в хедер файле есть класс всего лишь с одним методом (допустим, это класс, наследующий от std::exception, который оверрайдит метод what для кастомного исключения), нужно ли все равно разделять объявление и определение между .hpp и .cpp файлами? Я знаю, что можно и так, и так, но что там по конвенциям по этому поводу?
112 1891670
Бля, аноны, как же очко болит. Кресты слишком нудные и перегруженные, но от любых других ЯП жопа сгорает из-за ущербности и ограниченности. Пилят же всякие обётки над сишкой с сахаром, так почему нет обёрток над крестами? Чтоб ценой производительности я получил чуть меньше ебли. Согласен даже на производительность уровня гоферов, главное чтоб совместимость с крестами была. Недавно хотел на WinRT покодить на чём угодно кроме крестов, но все биндинги от самих майков работают максимально через сраку. Нахуй так жить?
114 1891678
>>891676

> Influenced by


> C


Ему же на основе крестов нужно, а не сишки. Если уж сишка, то тут можно и Objective-C, и D предложить.
115 1891691
>>891670
Вот в каком месте они перегружены? Может если ты пытаешься выучить плюсы со всеми их нюансами за неделю, то да, так может показаться. А иначе нет. Никто же не заставляет тебя в каждой твоей laba1.cpp использовать как можно больше нюансов
116 1891694
>>891691
Стой. Ты винапи используешь что ли? Там да. Хуйня бывает не удобная, но потом втягиваешься. А так есть всякие штуки из std для упрощения жизни. Можно почти как на питоне писать
shapka1cppfix.jpg375 Кб, 1280x1439
117 1891720
сновымгодомпогромистыплюсплюснутые!
image.jpg58 Кб, 556x628
118 1891727
>>891720
Рано.
119 1891741
>>891727
охуенно, утащу на перекате
image.png2,2 Мб, 1080x1399
120 1891782
>>891741

>>охуенно, утащу на перекате

121 1891849
>>888626 (OP)

>Код на C++, как правило, медленнее аналогичного кода на C приблизительно на 0-20% а в ряде случаев C++ оказывается даже быстрее


И в каких интересно случаях кресты быстрее Си??
122 1891857
>>891849
В любых, где нет десятка бесплатных си-пердолей.
123 1891863
>>891857
А по факту есть что сказать? Пример кода где быстрее и т.д.
124 1891866
>>891849
Когда на си ручками циклы анроллят. В наши дни переиграть компилятор практически нереально.
125 1891868
>>891863
Ну например покажи json-либу быстрее крестов.
126 1891883
>>891849

> Неоптимизированный код на C++, как правило, медленнее аналогичного оптимизированного кода на C++

127 1891902
>>891866
Меня не интересует кто там что анроллит, мне интересно посмотреть пример кода на С++ который быстрее кода на Си. И Все.
128 1891916
>>891727
Странная пикча. Рейму бедная и глупая, совершенно не похожа на программистов C++!
image.png174 Кб, 722x714
129 1891924
>>891916
Пойдёт?
130 1891931
Двачик умоляю помоги,я сама это не решу

Описать структуру с именем TRAIN, содержащую следующие поля: название пункта назначения; номер поезда; время отправления. Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из шести элементов типа TRAIN;
записи должны быть упорядочены по времени отправления поезда;
вывод на экран информации о поездах, направляющихся в пункт, название которого введено с клавиатуры;если таких поездов нет, выдать на дисплей соответствующее сообщение.
131 1891934
>>891924
ебани еще парочку таких

Заказываю сейбер
132 1891941
>>891924

>хиккарь астматик


Теперь да
133 1891948
>>891934
Кто-то должен был уже написать генератор.
134 1891949
>>890702
Надень наушники, там небось еще 8-битка играет, в лучших традициях так сказать
135 1891951
>>891948
охуительно
136 1892000
>>891902
Мне лень писать, используй воображение, на си цикл for(int i=0; i<100000;i++)
на c++ перед ним #pragma omp parallel for
137 1892001
Исключения - единственный верный и годный способ обработки ошибок при учете разработки кода пространства ядра с фулл ООП подходом. Change my mind.
138 1892003
>>892001
быстрофикс
пространства пользователя
139 1892005
>>891931
Город? Если дс2 могу пояснить.за поезда при личном визите.
140 1892006
>>892000
Ты утверждаешь, что в C нет OpenMP?
141 1892007
>>892001
Всё так, только "фулл ООП подход" не пересекается с перформансом.
142 1892011
>>892001
Исключения действительно правильный и годной способ обработки ошибок. Но, сцуко, легаси в котором миллиарды ликов ты уже не перепишешь.

В новых проектах активно в проде использую, брат жив
c++initforest.gif8 Мб, 400x170
143 1892048
>>891691

> Вот в каком месте они перегружены?

image.png49 Кб, 647x371
144 1892095
>>891849
Ну вот например. Охуенное type safe форматирование обгоняет парашный сишный printf.
145 1892148
>>888763
При эксепшене где? Если в конструкторе соответствующего класса, то нет, вызовутся только деструкторы объектов-членов, которые успели сконструироваться. И тем не менее, ничто не мешает отловить исключение в конструкторе и зачистить ресурсы хотя за такое и положено пиздить.
146 1892149
>>891931
Бамп :3
147 1892159
>>892005
ДС 2,но я никуда не пойду пока не сделаю 7 лаб,а это только вторая и мне нужно УСПЕТЬ ДО НОВОГО ГОДА ААААААААААА
148 1892194
Пацаны,как написать программу, которая считывает текст из файла и выводит на экран только цитаты, то есть предложения, заключенные в кавычки?
149 1892203
>>892001
Правильный способ в 2021 - это std::optional<T>
150 1892208
>>892194
Набыдлокодил на сишке
https://pastebin.com/DxqpRWA3
151 1892231
>>892208
Бля,а как в плюсы переделать?
152 1892249
>>892231
std::regex
153 1892251
>>892249
Сложно
154 1892254
>>892251
Смотри ёпт, взял пример из офф доки и немного переделал
https://pastebin.com/KHyHf211
Сам еще учу ++
155 1892256
>>892254
От души братуха,не проверял работает ли твоя прога,но спасибо огромное,я бы год голову над этим ломал
1598735821286.jpg460 Кб, 1000x758
156 1892259
>>888626 (OP)
есть какой нибудь дарк веб сайт где можно заработать? а то работы нет нихуя на плюсах
157 1892281
>>892259
Это где лаба1 и лаба2 делают за лайк?
158 1892311
Как кастануть двумерный вектор к си указателю?

Типа такого

std::vector<std::vector<int>> tmp(10, std::vector<int>(10, 1));
int⚹⚹ ptr = (int⚹⚹)&tmp[0][0];
std::cout << ptr[0][0];
159 1892318
>>892311
Никак, вектор векторов - это не двумерный массив интов, а одномерный массив указателей на самостоятельные одномерные массивы интов.
Через tmp.data() можно получить указатель на "внешний" массив.
160 1892321
>>892318
Спасибо, не знал
image.png6 Кб, 750x37
161 1892356
Что ця хуйня хочет, я не понимаю? Сложно+сложно.
162 1892360
>>892356
Код
163 1892366
>>892360
Да хуита ваш код, ниразу не ide. И вообще майкрософта рот ебал, ща убунту накачу и будет 0 проблем.
164 1892391
>>892366
Хочу, чтобы единственную нормальную ide вижуалку портировали на линукс, но там в легаси-исходниках всё настолько плохо, что даже на x64 не могут портировать, что там лялех.
165 1892394
>>892391
Перекатывайся на emacs + clang как нормальные люди, чё как лох.
166 1892404
>>892394
Я на vim и gcc сижу. Шланг когда-нибудь потыкаю, к емаксу так и не привык.
sage 167 1892495
ПОСОНЫ.
Установил vcpkg. Пытаюсь через него подтянуть sfml. Ошибка линковщика 2019: ErrorLNK2019 unresolved external symbol _WinMain@16 referenced in function "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ)
. Пробывал абсолютно все, что только можно. Вскод вроде как саму либу видит, синтаксис подсвечивает, но все равно почему-то выдает ошибку.
Что за хуйня? Гугол не помогает.
sage 168 1892499
>>892495

>вскод


Вижуал студио в смысле.
169 1892509
>>892356
Подсказки для автодополнения внутри шаблонов. Единственная иде, которая может в эту фичу.
170 1892512
>>892495

>Error LNK2019 unresolved external symbol _WinMain


https://stackoverflow.com/questions/12972134/sfml-linker-error-unresolved-external-symbol-winmain16-visual-studio-2012

Это специфика SFML.

>>892394
В емаксе и виме сидят деды и каргокультисты. Третьего не дано.
sage 171 1892526
>>892512
Спасибо! Почему-то на этот вопрос не получилось сразу наткнуться.
172 1892569
>>892203
пчел, как ты используешь свой обоссаный optional, если у тебя в конструкторе происходит неведомая хуйня, требующая обработки? Вставишь булевый флаг валидного состояния объекта в качестве костыля? Камон...
173 1892573
>>892007
В плюсах ты можешь выжать максимум хотя бы.
Исключения при правильном использовании не дают ебейшего пенальти по рантайму, уже не 2000 год.
174 1892664
>>892573
Лучший перфоманс дает pure C. Он и компилируется шустрее
175 1892744
>>892664
Только писать на чистом си - анальный ад. Правильные проекты смотрят, где реально перф проседает, и то переписывают на чистый си, который идеально юзает кэш ЦПУ, а все остальное, за пределами hot-loop'ов можно хоть на джаваскрипте писать.
176 1892759
>>892281
мб где номера кредитных карточек воруют. и за деньги. джуниор с++ - 0 вакансий
177 1892789
>>892391
QtCreator попробуй под Винду
178 1892790
>>892789
Пробовал. Всё равно вижуалка - лучшая ide всех времён и народов.
179 1892838
>>892095
Зверович, залогинься
image.png40 Кб, 913x621
180 1892850
Блять ну и какого хуя SFINAE считает, что шаблон с параметром по умолчанию важнее чем его специализация использующая base_type?
181 1892865
>>892789
Ладно бы ты еще Clion посоветовал, но культекреатор это прям классическое попенсорсное малоюзабельное уебанство.
182 1892866
>>892850
ты явно хотел использовать идиому void_t здесь
183 1892897
Lower bound бинпоиском ищет или нет? А если массив не отсортирован он же тоже находит, не?
184 1892898
>>892897

> Lower bound бинпоиском ищет или нет?


да

> А если массив не отсортирован он же тоже находит, не?


Хуйню находит нерелевантную
185 1892930
Имхо, есть смысл переписать немного устаревший FAQ. Как бы, основу оставлю, но хочу добавить туда как минимум "как учить правильно", "знания на джуна" и примерных работодателей.

Что-то еще, как вы думаете?
186 1892931
>>892897
Где связь между бинарным поиском и неотсортированным массивом, ты совсем поехавший что ли?
1592964340-124ba0f512366aec4c25b78f5e4f6897.jpeg30 Кб, 454x398
какой контейнер взять? 187 1892962
Стасян, есть возрастающия последовательность чисел, которые надо где-то схоронить. нужно две вещи:

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

2) в идеале, константная проверка на есть ли число в контейнере или нет. ну можно, конечно, и log_n

выручай, Стасян.
188 1892964
>>892962
1. Вектор
2. Unordered_set
189 1892983
>>892964
а если оба условия?
190 1892986
>>892983
2 контейнера оберни в класс, пушь в оба, лукапь в сете
1592907711001.jpg57 Кб, 268x265
191 1892995
>>892986
ну так тоже можно, ебобо, конечно.
192 1892998
>>892986
>>892995
короче, наверно ебану просто в сет
193 1893041
>>892790
ретроград, плес...
194 1893042
>>893041
Ретрограды в консоли пердолькаются, пока VS-боги пишут код
195 1893271
>>892962
Запили на обычном set, потом проверь, удовлетворяет ли тебя производительность. Если в результате профилирования оказалось, что виноват set, то только тогда можешь начинать думать в сторону танцев вектора и lower_bound
image.png11 Кб, 617x92
196 1893335
Стимопомойка рили юзает это говнище? Гы, ну тупые.
197 1893345
>>893335
То что-то имеешь против SDL?
198 1893379
>>892790
Настраивать её по-моему какая-то пытка, цветовую схему просто так не поменяешь, ЕМНИП. Да и за лицензию надо платить, Community по-моему в коммерческих целях использовать нельзя.
199 1893397
>>893379
Майки же не просто так выпустили vscode. Это как переход с COM на .Net. Деды продолжают копротивляться, а прогрессивная часть комьюнити уже вовсю перекатывается.
200 1893428
>>893345
Да я. Ещё вопросы?
201 1893452
>>893397
VS Code - это же просто текстовый редактор типа Vim/Atom/Notepad++/Emacs/Sublime, где часть функционала необходимо прикручивать сторонними программами, где даже настройки необходимо выполнять через конфигурационные файлы. Или я отстал от жизни?
202 1893454
>>893452
Да, но для линукса хватает с головой
203 1893514
>>893454
Для пердоли и такой огрызок - уже счастье. Ведь нормального софта не завезли и не завезут
204 1893520
>>893397

> Это как переход с COM на .Net


Скорее как переход с C++ на пхп.
205 1893522
>>893335
Более того, насколько я помню главный разработчик в вольво и работает.
206 1893529
>>893522
да, а до этого работал в Blizzard Ent
207 1893552
Ебануться нахуй,как это говно сделать?

Описать структуру с именем TRAIN, содержащую следующие поля: название пункта назначения; номер поезда; время отправления. Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из шести элементов типа TRAIN;
записи должны быть упорядочены по времени отправления поезда;
вывод на экран информации о поездах, направляющихся в пункт, название которого введено с клавиатуры;
если таких поездов нет, выдать на дисплей соответствующее сообщение.
208 1893570
>>893552
Прочитать хоть 1 книгу и думать головой
209 1893592
>>893452
И что? IDE это не какая то магия, а набор модулей.
210 1893593
>>893552
Асечку писечку?
211 1893594
>>893570
Нет :3
212 1893596
Написал программу,которая переставляет столбцы в соответствии с ростом характеристик,но почему-то неправильно считается сумма элементов столбца,в котором есть хоть один отрицательный элемент.В чем может быть проблема?

#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <ctime>
#include <cmath>
using namespace std;

int main()
{
srand((int)time(0));
int n, m;
cout << "Введите количество строк "; cin >> n;
cout << "Введите количество столбцов "; cin >> m;

int a = new int[n];
for (int i = 0; i < n; i++)
a=new int[m];

int
c = new int[m]();

cout <<"Matrix a:\n";
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
{
a[j]=rand()%19 - 9;
cout << setw(3) << a[j] << " ";
}
cout << "\n";
}

for (int j = 0; j < m; j++)
{
for (int i = 0; i < n; i++)
if(a[j]<0 && a[j]%2!=0) c[j]+=abs(a[j]);
cout << "col " << j+1 << ": sum=" << c[j] << "\n";
}

for (int j = 1; j < m; j++)
for (int k = 0; k < m-j; k++)
if (c[k]>c[k+1])
{
swap(c[k],c[k+1]);
for (int i = 0; i < n; i++)
swap(a[k],a[k+1]);
}

cout <<"\nSorted matrix a:\n";
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
cout << setw(3) << a[j] << " ";
cout <<"\n";
}

for (int i = 0; i < n; i++)
delete[]a;
delete[]a;
delete[]c;
system("pause");
return 0;
}
212 1893596
Написал программу,которая переставляет столбцы в соответствии с ростом характеристик,но почему-то неправильно считается сумма элементов столбца,в котором есть хоть один отрицательный элемент.В чем может быть проблема?

#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <ctime>
#include <cmath>
using namespace std;

int main()
{
srand((int)time(0));
int n, m;
cout << "Введите количество строк "; cin >> n;
cout << "Введите количество столбцов "; cin >> m;

int a = new int[n];
for (int i = 0; i < n; i++)
a=new int[m];

int
c = new int[m]();

cout <<"Matrix a:\n";
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
{
a[j]=rand()%19 - 9;
cout << setw(3) << a[j] << " ";
}
cout << "\n";
}

for (int j = 0; j < m; j++)
{
for (int i = 0; i < n; i++)
if(a[j]<0 && a[j]%2!=0) c[j]+=abs(a[j]);
cout << "col " << j+1 << ": sum=" << c[j] << "\n";
}

for (int j = 1; j < m; j++)
for (int k = 0; k < m-j; k++)
if (c[k]>c[k+1])
{
swap(c[k],c[k+1]);
for (int i = 0; i < n; i++)
swap(a[k],a[k+1]);
}

cout <<"\nSorted matrix a:\n";
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
cout << setw(3) << a[j] << " ";
cout <<"\n";
}

for (int i = 0; i < n; i++)
delete[]a;
delete[]a;
delete[]c;
system("pause");
return 0;
}
213 1893599
>>893593
Потом
214 1893607
>>893596
int mod(int a, int b) {int ret = a%b; return ret>=0? ret: ret+b; }
215 1893613
>>893599
Сперва пезда потом поезда.
216 1893628
>>893613
пукнула тебе в нос
217 1893687
Как эффективно свапнуть два вектора? Не переносить же каждое значение из одного в другой
218 1893689
>>893687
std::swap(vec1, vec2) ?
219 1893690
>>893607
А куда это?
220 1893694
>>893689
Он указатели просто поменяет?
221 1893710
>>893687
vec1.swap(vec2);
222 1893715
>>893694
Да. Есть специализация swap для векторов: https://en.cppreference.com/w/cpp/container/vector/swap2
223 1893730
нубовопрос, есть ли в std функция позволяющая верно с заданным допуском определить:
(0.3 == (0.1 + 0.2)) или все пишут велосипеды по алгоритмам умных дядек?
224 1893737
>>893730
Зачем для этого отдельная функция? Набирать её название будет дольше, чем написать это:
abs(0.3 - (0.1 + 0.2)) < 1e-8
225 1893740
>>893737
тоже верно, спрашиваю что бы потом не быть обоссаным что пишу свои бициклы вместо либ
226 1893745
>>893740
Где точно не обоссут за бициклы - так это в крестах, в которых на любой вопрос "подскажите либу, чтобы X" отвечают "напиши сам, чо как не мужик".
227 1893910
>>893596
залей для начала на pastebin
image.png8 Кб, 759x131
228 1893917
Что значит первая колока процентов? И как понять что это за функция в топе? Это я часто память выделяю или через size и [] часто к элементам обращаюсь?
229 1893918
>>893592
И отсутствие пердолинга с конфигами, удобные настройки (а не так, как, например, в Atom, где хоткеи настроить целая наука)
230 1893956
Нахуя enum этот ваш, если можно
const PREFIX_HUI = 0;
const PREFIX_PIZDA = 1;
?
231 1893964
>>893956
еще и вываливает свои кишки в глобальную область, вместо
name::member или name.member
232 1893967
>>893956
enum в Сях юзают
233 1893970
Зацените пацаны,какую мне лабу задали.

Составить описание класса для определения одномерных массивов целых чисел(векторов). Предусмотреть возможность обращенияк отдельному элементу массива с контролем выхода за пределы массива, возможность задания произвольныхграниц индексов при создании объекта и выполнения операций поэлементногосложения и вычитания массивов с одинаковыми границами индексов, умноженияи деления всех элементов массива на скаляр, вывода на экран элемента массива позаданному индексу и всего массива.Написать программу, демонстрирующую работу с этим классом. Программа должна содержать меню, позволяющее осуществить проверку всех методов класса
234 1893976
>>893689
using std::swap;
swap(vec1, vec2);
235 1893980
>>893967
Труъ бояре пишут
struct enum_name
{
enum { ... };
};
236 1893984
>>893980
все равно на мой взгляд залупа рудиментарная
мимо-нуб-пистонщик
237 1893987
>>893984
по-этому ты и пистонщик
238 1893990
>>893987
ну это пока..
239 1894030
>>893984
хотя если enum class name может пригодиться
я вас еще заебу тут всех своим нубством
240 1894031
>>894030
ну принудительное добавление break после каждого case и проваливание выполнения до конца всех case это точно уебанство, я думал намного лучше будет, сколько раз программировал,
241 1894040
>>894031
бля дошло, это для мультивыполнения кейсов в некоторых условиях
не баните только за флуд
242 1894101
Пользователи Visual Studio Code здеся? Помогите разобраться.
Вот есть tasks.json. Там задаются параметры сборки: путь к компилятору, с какими аргументами запускается, etc. Запускается по Ctrl+Shift+B.
Есть launch.json. Там описан запуск экзешника, дебаг. F5, Ctrl+F5.
А есть ещё c_cpp_properties.json. Он нахуй нужен?
243 1894110
>>893956
>>893964
Потому что enum в теории - это
enum MyEnum {FOO, BAR};
MyEnum myEnum;
myEnum = MyEnum::FOO; // ок
myEnum = BAR; // пошёл на хуй, не знаю что за BAR.
И во всех нормальных языках оно сделано так. Но в крестах то ли ради совместимости с сишкой, то ли ещё за каким-то хуем имеем то, что имеем.
244 1894294
>>894110
Для тебя enum class сделали, нет, хочу ебаться с легаси говном.
245 1894345
>>893956
Чтобы не проебатьса, когда значения должны быть Па Парядку.
246 1894365
Пришлось переставить винду и не могу найти в VS Community 2019 расширение чтобы цветом выделялись скобки { } Bracket Pair Colorizer 2. Начал искать и понял что оно под VS Code который у меня вроде тоже был установлен, хотя работало расширение у меня не в VS Code.
Безымянный.png12 Кб, 411x304
247 1894380
Что за хуйня на пике???? За каким мужским половым хуем код лезет на диск D? И что ещё более странно что всё это работает/компилируется на другом ПК где подобной папки вообще нет. Где вообще этот путь прописан в проекте???
248 1894401
>>894380
Тебе же блядь на человеческом языке прямо в ассерте написали, что нужно читать документацию по ассертам.
в коде есть assert, который разворачивается во что-то, где есть __FILE__ и __LINE__, которые подставляются на этапе компиляции
249 1894402
>>894401
вопрос не в ошибке а в том откуда в проекте этот путь? пытался найти вручную, не нашёл нигде упоминаний
250 1894408
>>894402
Ты чё, тупой блядь? Есть макрос __FILE__, который при сбороке нетвоей говнолибы раскрылся в то, что ты видишь. Найти него можешь в скомпилированной dll
251 1894413
>>893452
Это по сути конструктор IDE. У тебя есть проект, ты решаешь какими инструментами его лучше делать (языки, версионка, тулчейн, devops) и потом всё что тебе нужно накатываешь плагинами (и чутка донастраиваешь json конфигами). Всё что нужно под рукой, в едином UI и под любую ось.
252 1894453
>>893552
Программирование - это не твоё.
253 1894468
>>893552

>Описать структуру с именем TRAIN


Гуглишь структуры с++. Читаешь, создаёшь её с необходимыми полями:

>содержащую следующие поля: название пункта назначения; номер поезда; время отправления.


>ввод с клавиатуры данных в массив, состоящий из шести элементов типа TRAIN;


Гуглишь чтение с клавиатуры с++, массивы с, циклы с++

>записи должны быть упорядочены по времени отправления поезда;


Гуглишь сортировка массивов пузырьком/перестановкой

>вывод на экран информации о поездах, направляющихся в пункт, название которого введено с клавиатуры;


Гугли вывод в консоль с++

Надеюсь как писать хелоу ворд ты знаешь сам.
254 1894517
>>894380
Если ты скачал заранее предсобранную либу - то это путь на той тачке, где эту либу собирал кто-то другой.
255 1894527
Чем мать вашу заняться после Страуса и Мейерса? 0 инфы что здесь что вообще в интернете. Просто в тупую либы учить? Киньте топ 5 мастхев.
256 1894547
>>894527
Та же беда, вроде конструкции языка знаю, однако что по архитектуре почитать - чёрт знает.
257 1894552
>>894547
Короче если не получу ответ то в новогоднюю ночь буду в уе4 закатываться.
oscilloscope.png33 Кб, 497x607
258 1894560
>>894552
Музыкальный плеер. Чтобы был осциллоскоп прямо как у меня в фубаре. Хард мод: декодирование и вывод аудио сам, без библиотек.
259 1894562
>>894560
Зачем? Чтобы что? Я хочу делать то, что до меня никто не делал.
260 1894569
>>894562

>Я хочу делать то, что до меня никто не делал


Лмао. "То, что до тебя никто не делал" ты будешь делать, только работая в R&D какой-нибудь топовой в своей области компании. Всё остальное, что бы ты ни придумал, было уже сделано 10 раз
261 1894578
>>894562
Возьми сколь угодно маленький, но полноценный, практически полезный, проект и охуей от того, сколько там существует собственных решений - от самого приложения до функционала которое оно реализует. На выходе всегда получается нитакоекаквсе решение.
262 1894579
>>894569
Ок, когда вкачусь со своим стартапом в Долину скажешь мне то же самое.
263 1894586
пчелы, решил реализовать бинарное дерево, такой думаю - "ну щас по изи пойдёт, чё там делать?". А вот нихуя!!! У меня почему то в зависимости от порядка объявления указателей меняется поведение, и из-за того указателя, который объявлен последним по порядку приложуха падает, что делать, кто то сталкивался?
264 1894591
>>894586
Ну во-первых телепаты давно тут не работают. Давай код. Желательно не пейст биние.
265 1894592
>>894591

>Желательно не пейст биние.


https://pastebin.com/AqYW3Bjw

только за код не бейте, новичок
266 1894597
>>894592
Код не запускал, но возможно, что дело в неинициализированных указателях. Если ты явно им не присвоишь nullptr (например, в конструкторе или прямо в объявлении полей), то там может лежать случайный мусор. Более того, некоторые компиляторы в дебаг режиме специально инициализируют указатели в невалидные значения, чтобы потом можно было легче ловить баги. Можешь пройтись дебаггером и посмотреть, чему равны твои right и left.
1597916664812.webm342 Кб, webm,
280x240, 0:04
267 1894598
Боже, какая же хуйня ваш питон, хуже крестов. 4 часа ставил torch+cuda через pip, в итоге залупа на воротник. Подбери нужную версию питона, подбери руками зависимости, прочитай пол гитхаба чтоб найти issue с ошибкой, прочитай как обойти баги питона - прям в ошибке интерпретатора дают ссылку на костыль, блять. В итоге нихуя не работает. Установка по инструкции в документации не работает. Куча открытых issue с 15 решениями и ни одно не работает. Другие либы конфликтуют между собой, pip ставит пакеты через раз. Ну и пиздец. Сейчас полез на ютуб за инструкцией для дайнов и сразу нашел двухчасовой видос по установке tensorflow, где чел больше часа не мог сделать pip install tensoflow.
268 1894601
>>894598
Вам в бугурто-тред.
269 1894605
>>894592
Как минимум, в методе m_add при добавлении нового узла хоть под него выделяется память, но указатель на нее в this->right или в this->left предыдущего узла не записывается
270 1894608
>>894605
Там ссылочная магия, сищник.
271 1894609
>>894527
>>894547
Читатели, вы заебали. Пишите код. Любой. Консольный тетрис, беспонтовый чат, 2хмерная уебищная поделка уровня денди. Что угодно, только пишите.
272 1894612
>>894608

>ссылочная магия


Опять молодежь хуйню навыдумывала, а нам разгребать. не заметил
273 1894615
>>894605
>>894608
так чё делать то, ёпта?
274 1894652
>>894612
Эту хуйню выдумали 10 лет назад.
275 1894672
>>894652
Если ссылки так хороши, то почему this не ссылка?
Страуструп считает это своим самым большим проёбом в дизайне языка.
276 1894703
>>894672
пусть считает. нн какой то, он вообще кто? все юзают - пусть и он юзает
277 1894764
>>894598
Так я о чём. Потушил пердак. Теперь вопрос. Как мне ML пердолить на крестах без питона? Cuda слишком сложно, уже пробовал, на уровне написания игрового движка. А есть ли более высокоуровневые фреймворки? Чтоб хуяк-хуяк слоёв, трэйндату на них и в продакшен. Или только в D или джулию вкатываться с такими запросами?
278 1894783
>>894764
Тебе придётся юзать питон, и точка.
279 1894791
>>894783
Но я не смог...
Слишком сложно...
280 1894792
>>894791
Но крестики-то изи, да?
281 1894798
>>894764
dlib, но это калмоча
282 1894824
>>894792
Крестики просто работают. Они делают что я хочу. А питон живёт своей жизнью в аквариуме. Даже у красноглазых пердолей нет такого, у них хоть man есть. А в мире животных питона даже кодеры фреймворков не знают что делать с багами и как фиксить.
283 1894888
>>894791
Мне нужно было пару лет назад для диплома поставить pytorch. Внезапно оказалось, что на венде было намного проще поставить, чем на бубунте.
284 1894893
>>894888
Так под CPU он одной командой ставится, да. А вот как с CUDA завести не понятно, гуглится тысяча проблем и миллион нерабочих костылей. Всё сводится к откату на прошлогодние версии или использование старой Винды.
285 1894918
>>894893
Я именно с кудой ставил. Ну ладно, разбирайся.
286 1894991
>>894609
Сформулирую свою мысль иначе. Что писать идеи есть. Вопрос, где можно посмотреть на структуры программ. При этом не уровня hello world но и не архи сложные проекты. Дабы не набивать набитые другими шишки.
287 1894992
>>894991
Самое лучшее ПОЗНАНИЕ - это набивать шишки самому. Только так понимаешь, те или иные бест практисы. Или наоборот, понимаешь, что они хуйня (такое тож есть, например все многоуровневое ООП с паттернами от банды 4х)
288 1895038
Bitset count за линейное время считает?
289 1895040
>>894824
какой блять man? ты что мужика хочешь, содомит?
290 1895052
>>894764
Сама по себе куда очень простая и учится за один-два вечера. Только вот для того, чтобы писать на ней нейронки, нужно абсолютное понимание как они работают. С простыми архитектурами ты справишься, но писать с нуля state-of-the-art - заебешься. Вдобавок, большая доля машоба - это обработка данных и анализ результатов. Для этого всего тоже необходим питон.
image.png178 Кб, 628x471
291 1895057
292 1895068
>>895057
Спалю мини инсайдик. В Озоне идет серьезный разговор о переписывании самых нагруженных микросервисов с го на С++, т.к. го просто не вывозит. Такие делы.
293 1895070
>>895068
В гугле вывозит, а в озоне не вывозит. Хыч хыч. Инсайд в туалете смыть забыли и ты подобрал?
294 1895085
>>895070
Поиск в гугле сто лет написан как на крестах
295 1895088
>>895085
При чем тут поиск? Да и я не понмаю зачем ты срач хочешь начать, гошка никогда не позиционировалась как более быстрый язык, чем плюсы, суть в более простой и быстрой разработке. Да и вообще это тред плюсов
296 1895104
>>895088

>я не понмаю зачем ты срач хочешь начать


Проорал
297 1895115
>>895104

> проорал


Когда увидел сколько памяти на проде утекло?
298 1895298
Анон, чтобы не насиловать контейнер объектов, я использую vector<reference_wrapper<const Foo>>, и сортирую, ищу и храню индексы уже этого контейнера ссылок. Это нормальный подход? Тем самым я отвязываюсь от основного контейнера Foo (который у меня umap), и при обработке не насилую данные лишним копированием. Альтернатива, как я понимаю, контейнер указателей, но ебана, в 2к21 сырые указатели использовать это пиздос. А умные, на мой взгляд, здесь избыточны.
299 1895302
>>895298

> Это нормальный подход?


Не очень, попробуй использовать голэнг
300 1895359
>>894764
Так свой напиши чё лох чтоле))
301 1895401
>>895302
А почему не раст?
302 1895419
>>895298
Итерируй по значениям в своей мапе
303 1895468
>>895038
bitset::count? Смотри исходники библиотеки. Недолгое гугление показало, что MSVC через цикл считает (https://news.ycombinator.com/item?id=20915547).
Если хочешь гарантированной скорости, то используй напрямую интринсики __builtin_popcount / __popcnt, правда тебе на всякий случай предстоит сношаться с CPUID, если хочешь полной переносимости.
304 1895492
>>895088
Я кстати недавно делал ачивку на кодингейме, где надо решить 15 задач на каждом языке. Так вот среди всех поддерживаемых языков, включая баш, пхп, паскаль, перл, бейсик и хаскелль, самым хуёвым и дегенеративным я считаю именно ГО.
Тому есть несколько причин. Во-первых, довольно мудацкий кодстайл, закреплённый СИНТАКСИЧЕСКИ. Пиздец даже в питухоне такого нет, поставил скобочку на следующей строке - всё критикал еррор нахуй, переписывай.
Во-вторых, отсутствие дженериков не обоссал только ленивый. Гофобляди очень долгое время сопротивлялись что НИНУЖНА, пока даже их необучаемый фюрер (выступающий, кстати, еще и против подсветки синтаксиса) не осознал, что копипаста и ?interface в 2020 это нихуя не хорошая идея. Тогда они, конечно, мгновенно переобулись.
Ну и наконец множество просто откровенно ебанутых решений в дизайне, наподобие оператора := , имени типа справа, НЕИСПОЛЬЗУЕМЫЕ ПЕРЕМЕННЫЕ как критические ошибки. В целом, ГО считает тебя за дебила, и похоже только они, не замечая подвоха, языком и пользуются.
305 1895498
>>894764
В opencv есть DNN. Глянь, может тебе хватит.
306 1895500
>>895492
Ты прикалываешься? У меня даже в c++ настроено чтобы неиспользуемая переменная давала ворнинг, а все ворнинги ошибки. Потому что в реальном применении (а не хеллоуворлдах на кодегольфах) это 99% опечатка где то и ошибка в логике или вообще дыра в безопасности
307 1895648
>>895068
я не путаю: сначала "старые пердуны" написали инфраструктуру озона на си-шарпике и все более-менее работало, потом пришли эффективные менеджеры или старым манагерам моча в голову ударила, они разогнали старую команду, выкупили новую команду хипсторов, которые начали пилить им микросервисы на говне, и тут, внезапно, инфраструктура перестала держать нагрузку?
лол
308 1895650
>>895648
или я че-то путаю
заранее извиняюсь!
хотя уже и насрал!
image.png21 Кб, 510x357
309 1895749
КАк с этой хуйней бороться?
310 1895766
>>895749
А какие именно типы складываешь? предположу что-то в духе int и long int
Как я понимаю она тебя тупо предупреждает о том, что в начале нужно привести всё к 8 байтовому типу а потом уже складывать.
311 1895782
>>895648
все плюс минус так, за исключением того, что инфраструктура на сишарпике не видела и 1\20 от текущих нагрузок Озона.
image.png66 Кб, 273x257
312 1895783
>>895492

> пук среньк

313 1895785
>>895648
>>895782
Да нет, на всех толках говорят, что сначала эксперементировали с гошкой и плюсами, перевели на них пару сервисов и решили писать на гошке, т.к. на плюсах слишком запарно
314 1895850
>>895783
Нет, ну в каком-то смысле ты прав. Язык все-таки имеет право на существование.
Гоферы они как дети же. А спички, как известно, детям не игрушка. Дай типичной гомакаке кресты, так он и сам покалечится, и хату спалит такого в проект накоммитит, что откатывать замучаешься.
Без ГО некоторым категориям людей программирование было бы недоступно. А так они могут работать в тех областях, где не важна производительность, читаемость и здравый смысл.
315 1895861
>>895850
Фига маняпроекции, то-то же требования для джу на на гошке - знать как работает память и шелдуеры горутин с шелдуером процессора, элкэшей и поднаготной ос, а для синьора с++ достаточно в штаны не срать
316 1895935
Как наладить взаимодействие сайта с программой? Как например её показать кнопку "создать тред"?
317 1896112
>>895749
там же сука английским по белому написано, сначала кастуй, потом плюсуй. ты читаешь хоть, что тебе пишут, сучёнышь?
318 1896116
>>895068
некого не спалю, ведь и так все знают, в озоне работают пидарасы, клиенты озона пидарасы. вот такие вот дела.
319 1896305
>>895068
>>896116
по деньгам чего?
если по рынку собираетесь переписывать - отсеивайте нахуй всех кандидатов пока бюджет не повысят
320 1896310
>>895749
нельзя складывать числа одного типа - всегда оверфлоо будет
321 1896312
>>896305
Про деньги не знаю, т.к. дружаня, который имел там 350к, и потенциально бы занимался этим всем - сьебал в другое место на 400к
322 1896320
>>896310
Нужно сложить два лонг лонга, твои действия?
323 1896321
>>896320
достаю свой лонг лонг из штанов
324 1896337
>>896312
350к брутто или нетто?
325 1896339
>>896337
На руки денюшками. Нахера писать зарплату брутто, у нас тут не штаты с формулами анальными.
326 1896351
>>896320
Приключения крестобляди или как сложить int a + b

Как все уже поняли, недостаточно просто написать

sum = a + b;

Ведь при переполнении это UB.
Понятно, но наверное можно же проверить?

sum = a + b;
if(a + b > INT_MAX) error();

Стоп. Так же условие никогда не выполнится из-за переполнения.
Да и это уже целых 2 UB

sum = a + b;
if(sum < a) error();

Ну не, так не выйдет, ведь UB уже произошло, компилятор имеет право выкинуть всю проверку.
Ладно, шутки в сторону, давайте проверим заранее. Так, а что писать?
(a + b < INT_MAX) мы уже пробовали. (Ахаха, подловил. Надо писать не меньше, а меньше или равно) А, точно.

if(a <= INT_MAX - b)
sum = a + b;
else error();

Так, пагадите!
Что-то тут не так.
Допустим у нас a < 0 и b = 0
И мы только что (наберите воздуха в грудь), во время сравнения
Вычли с underflow.
Минус сколько-то минус макс_инт меньше чем влезает в инт.
Переполнение в другую сторону, тоже UB
Переписываем нахуй

if((b > 0 && a <= INT_MAX - b) ||
(b < 0 && a >= INT_MAX - b))
sum = a + b;
else error();

Скобочки посчитали? && и || не перепутали?
Вот теперь заебись!
И это крестоблядь должна писать вместо каждого сложения в программе.
Ассемблерный выхлоп показывать не буду. Чтобы ночных кошмаров не было.
326 1896351
>>896320
Приключения крестобляди или как сложить int a + b

Как все уже поняли, недостаточно просто написать

sum = a + b;

Ведь при переполнении это UB.
Понятно, но наверное можно же проверить?

sum = a + b;
if(a + b > INT_MAX) error();

Стоп. Так же условие никогда не выполнится из-за переполнения.
Да и это уже целых 2 UB

sum = a + b;
if(sum < a) error();

Ну не, так не выйдет, ведь UB уже произошло, компилятор имеет право выкинуть всю проверку.
Ладно, шутки в сторону, давайте проверим заранее. Так, а что писать?
(a + b < INT_MAX) мы уже пробовали. (Ахаха, подловил. Надо писать не меньше, а меньше или равно) А, точно.

if(a <= INT_MAX - b)
sum = a + b;
else error();

Так, пагадите!
Что-то тут не так.
Допустим у нас a < 0 и b = 0
И мы только что (наберите воздуха в грудь), во время сравнения
Вычли с underflow.
Минус сколько-то минус макс_инт меньше чем влезает в инт.
Переполнение в другую сторону, тоже UB
Переписываем нахуй

if((b > 0 && a <= INT_MAX - b) ||
(b < 0 && a >= INT_MAX - b))
sum = a + b;
else error();

Скобочки посчитали? && и || не перепутали?
Вот теперь заебись!
И это крестоблядь должна писать вместо каждого сложения в программе.
Ассемблерный выхлоп показывать не буду. Чтобы ночных кошмаров не было.
327 1896354
>>896339
уточнил, потому что у нас в гейвропе на руки столько не платят, хоть ты супер мега Себястьян Лёб 15 чемпионатов мира по погроммированию подряд выиграл

вот пример, гугол в Австрии предлагает аж целых
43 тыщи евро год конечно брутто - Васян конечно съёбывает со мкада в Австрию, получает первую зарплату жалкие 2 тыщи на руки азаза и охуевает, половину надо за жильё отдать
328 1896358
>>896354
Та самая причина, почему я так и не сьебал в европу, хотя было минимум 3 оффера

Мимо-700к-сами-знаете-кто
329 1896368
>>896305

>по деньгам чего?


уу, сука, сразу жалом заводил!
330 1896371
>>896358
ты когда последний раз больше 100 строчек с++ кода написал? а, бля
закрывай тред, он не для тебя, епт
331 1896372
>>896371
Пару месяцев назад было! Честно!

А сейчас одни батники, и, ВНЕЗАПНЕЙШЕ, симейкопараша
332 1896381
>>896368
не понял, что значит жалом заводил?
333 1896390
>>896351
о том и речь...
вот приведи пример реальной задачи, где надо инта сложить, чтобы оверфлоо не запорол нам
допустим привёл пример, тогда как два лонг лонга сложить?
на что ты оветишь - а нахуй оно?
логично, что если пиздец как приспичило факториалы комбинаторики высчитывать - то ты воспользуешься длинной арифметикой, а в 99.999992% случаев складывая 2 инта проверку на оверфлоо ты только за бонус к зарплате сделаешь
334 1896392
>>896390

>где надо инта сложить


самофикс на джва инта
335 1896394
>>896351
Если мне память не изменяет, то на ассемблере после сложения проверить флаг переполнения надо и всё.
336 1896411
>>896394
тогда у конпелятора должен бить интринс на проверку этого бита, не?

или как идиот писать ассемблерный кусок и фраппер на него?
хотяяя для дядиного кода почему бы и нет... и заодно добавить пятистрочник со скобочками и битовыми операциями
и ведь хуй кто настучит - формально и практически код правильный и надёжный, дядя не потеряет клиентов и бабки изза оферфлоо
337 1896426
>>896394
После сложения уже поздно.
338 1896451
>>896426
В ассемблере всё детерминировано, там нет никакого UB, так что ничего плохого не случится в отличие от "высокоуровневых" крестов.
339 1896452
>>895302
педо-раст. пишы правильно.
340 1896472
Аноны, привет. Не бейте плиз палками за вопрос не по языку
В общем мне 24, есть опыт работы во встраиваемых системах - 2 года, и в разработке высокого уровня (пилим один научный софт на Юнити-с# + задачи по комп зрению на питоне) - тоже два года. Присутствует профильная вышка
Сейчас контора, а точнее стартап, в котором я работал - распался и ищу новую работу. вопрос следующий: стоит ли вкатываться в с++ разработку, имея следующие факты
1. С++ знаю на уровне курсов, поделок и пр, то есть НЕ промышленная разработка
2. Не хочу терять в зп (на прошлом месте было 80)
3. Запас денег на два месяца - ровно столько могу зарыться и ботать
И вообще в целом стоит ли вкатываться в с++? Что на нем сейчас разрабатывают? Что именно Вы делаете на своей работе?
Вообще я сильно в недоумении что делать: легче всего свалить также в Юнити или питон, но душа лежит в нормальное программирование, на нормальном языкеочень прошу не кекать с меня и палками не пиздить) буду очень рад адекватным анонам)
341 1896473
>>896472
оставайся на решётке и питончике. более злачного места чем зрение сейчас трудно найти. пройдись по конторам, которые автоматы приёма стеклотары и прочей встраиваемой хуйни производят.
342 1896475
>>896472
Ну только если вкатываться в комп. зрения на крестах... Если есть такие вакансии - то можно, иначе - нахуй не надо. Помни, что предметная область важнее языка.
343 1896566
>>896472
Тебе верно советуют - смотри на содержание/предметную область. Сам копаюсь со зрением в эмбед. И у нас всё что ты перечислил плюс вёб. Вкатываться можно через любое место.
344 1896613
Как наладить взаимодействие сайта с программой? Как например её показать кнопку "создать тред"?
345 1896650
>>896566
так а я кому-нибудь нужен без опыта на крестах? у меня зрение на питончике было, а вакансии питон + cv это, как правило, пилить сеточки. Хз насколько это интресно, но звучит не очень.
А что касается крестов, так куда ни гляну, там кресты
сбердевайс, беспилотник, яндекс беспилотник - сполшные кресты
эшелон ниже - тоже сплошные кресты, так что черт его знает кому я там всрался со своей решеткой да питоном
346 1896653
>>896475
так хочется же. Да и в основном интересные предметные области - это кресты
347 1896661
>>896473
ну, как я уже говорил, я хз нужен ли я кому-то без промышленного опыта в плюсы
348 1896681
Как наладить взаимодействие сайта с программой? Как например её показать кнопку "создать тред"?
349 1896697
>>896451
Если ты напишешь
int c=a+b;
_asm jo ...
То это не сработает.
350 1896701
>>896681
Ты не догадываешься, почему тебе никто не отвечает? Что значит "наладить взаимодействие"?
Ты хочешь встроить в свою программу браузер, или что? Если да, копай в сторону веб-движков, в том же Qt есть WebEngine.
Или тебе нужно просто отправлять HTTP-запросы? Тогда бери любой HTTP-клиент и копай в сторону API (например, https://2ch.hk/api/index.html (М) ), только с двачем тебе всё равно придётся юзать webEngine, чтобы показывать капчу.
351 1896702
352 1896710
>>896701
создать тред
353 1896717
>>896358

>Мимо-700к


Это ты тот чел, который в нвидии работает?
354 1896737
>>896650
Не, ну а каких задач ты ожидаешь например от беспилотников?
Сбор данных с навигационного оборудования (радары, лидары, камеры) - системы реального времени и низкоуровневые пердоли с железом.
Обработка данных - овердохуя матана. Лидары - дифгем. Трекинг объектов - теорвер. Камеры и радары - функциональный анализ. Конечный автопилот для коптера - теория управления (самое сложное).
По всем сценариям на голом с++ не вывезещь и будешь обоссан.
355 1896746
>>896351
Дебич, ты когда последний раз работал с числами больше 262?
Что ты собираешься делать во время выполнения, если overflow всё-таки произойдёт?

В общем, пиздуй в py-js тред, быдло
356 1896750
>>896746

> Дебич, ты когда последний раз работал с числами больше 262?


Толсто.

> Что ты собираешься делать во время выполнения, если overflow всё-таки произойдёт?


В приведенном коде не произойдет.
357 1896751
>>896737
да, в этом треде полно беспелотников
358 1896753
>>896717
о, этот запах денег
очередной шакал
359 1896759
>>896381
это значит что ты проявил интерес не к тому чем занимается человек и к самому человеку, а к тому что он зарабатывает много денег
360 1896777
>>896750

> Толсто.


Ты уж потрудись ответить.

> В приведенном коде не произойдет.


Ну дык и в c = a+b не произойдет. Пруф ми вронг
361 1896780
Как наладить взаимодействие сайта с программой? Как например её показать кнопку "создать тред"?
362 1896893
>>896737
Почему теория управления самая сложная?
мимо студень
363 1896987
>>894560

> фубар


Уверен, что им пользуются только из-за кулхацкерского названия, а на самом деле это не плеер, а неюзабельное говнище.
364 1897009
>>896717
ну а кто же еще
365 1897035
>>896987
Им пользуются потому что больше нихуя нет.
366 1897112
>>896987
Наоборот, фубар самый удобный, в отличие от неюзабельного говна выебывающегося внешним видом.
Но я фубар всё равно дропнул, но из за звука. У фубара плохой звук, так что удобство уже перестало иметь значение.
image.png91 Кб, 1072x702
367 1897119
>>895749
Я решил просто нахуй отключить варнинги и все. Как вообще можно их использовать если при подключении ЛЮБОЙ библиотеки там какая-нибудь хуйня да будет. Вот банальный пример, библиотека которая уже почти часть стандарта все равно срет варнингами. В итоге оно все перемешивается и хуй поймешь где твой варнинг, а где либовский.
368 1897179
>>897119
Эти хуёвины нужно тщательно настраивать, иначе пиздец
мимо 1.5кк варнингов с этой хуйнёй
369 1897243
>>897112
Нигде не замечал разницу качества в фубаре. Чем пользуешься на венде?
370 1897250
>>897119

> не забивать хуй на ворнинги в языке такого низкого уровня, что без костылей вообще невозможно работать



А ты недавно в плюсах, да?))0
371 1897277
>>896351
К слову, понимаю что кормлю толстого, однако в стандарте есть описание NaN (Not a Number)
Как итог переполнение можно определить через сравнение самого с собой.
372 1897293
>>897277
NaN только для float и double, с целыми не сработает.
373 1897566
enum или array?
374 1897586
>>897566
class enum или enum classic?
375 1897590
>>897586
А судьи кто?
376 1897593
Может кто-нибудь порекоммендовать библиотеки для шифрования? Особенно интересует шифрование AES.
Нашёл пока Crypto++. Но может есть ещё годные варианты?
377 1897595
>>897593
OpenSSL?
378 1897651
>>897250
Так я и забиваю
379 1897665
380 1897787
Доброго времени суток. В общем у меня ситуация такая: закончил универ на погромиста, нашел вродебы нормальную работу на C#, но за время обучения в универе больше всего нравился С++, и я вроде бы и не против поучить его в свободное время по гайдам/книгам, но до сих пор не уверен нахуй он мне нужен будет? Учить язык ради того, чтобы просто его знать - затея явно не для меня. Тут и вопрос к вам: нахуй нужен С++? Мне известно, что на нем делаются вставки кода во всяких узких местах приложения (но я же не могу быть программистом узких мест, который приезжает как слесарь на проект?). Наверняка пишется физика/графений для игр, но я не знаю линал/геометрию/физику/матан. Какие основные направления использования С++ и что еще там нужно знать?
381 1897791
>>895861

>для синьора с++ достаточно в штаны не срать


Найс маняфантазии, чмонь.
382 1897794
>>896451

>детерминировано


>нет никакого UB,


Вась, ты понятия не имеешь что означает UB.
383 1897796
>>895068
Тогда уж лучше раст, а не кресты.
384 1897805
>>897794
Пошёл нахуй.
синий колобок.png50 Кб, 200x200
385 1897863
>>896351
uint64_t a, b, c;

c = a + b;
if (~(a ^ b) & (a ^ c) & 1ul<<63)
overflow();
386 1897864
>>897796
На кресты на рынке реально найти людей, на Раст - нет
387 1897866
>>897864
Это да, но для написания веб сервисов раст больше подходит. Хотя очень сомнительно что go не может закрыть эту потребность.
388 1897871
>>897866
Собстно го они там люто профилировали, меняли\тюнили GC и прочее прочее, в итоге пришли к выводу, что надо переписывать.
389 1897873
>>897863

> uint64_t


unsigned overflow is defined.
390 1897875
>>897871
Почему у других компаний таких проблем нету? В вебе основной затык же идет в io или они числа фибоначчи в заказе считают?
391 1897877
>>897875
Компаний с нагрузкой уровня озона на карантине - не так много. И учитывая, что бэкенды тех, о ком я знаю - на С++ (Амазон\Гугл\етц), то вероятно по-этому у других компаний затыков и нету. Ну и там люди еще работают сильно квалифицированнее и опытнее, чем микрочелики из озона.
392 1897879
>>897877
Яндекс Еда вроде на го, ну и куча подобных сервисов.
393 1897882
>>897879
Сомневаюсь, т.к. меня хайрили в лавку на крестовика. И тот же маркет и такси - все на С++, например.
394 1897888
>>897877
Не очень понятно, у Озона по идее тоже не очень большие нагрузки должны быть.

Сколько у них заказов в день? Ну миллион, допустим. В пике может быть до 100 заказов в секунду.

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

Естественно, количество просмотров будет больше, то это более простые операции.

По-моему это и на питоне можно сделать.

Мне кажется, что в таких случаях сам бекенд спроектирован неудачно, база товаров и магазинов и работа с ней.
395 1897898
>>897888
у озона гигантские нагрузки, но про проектирования бэкенда и прчоее я уже не знаю
396 1897903
>>897888
Ну никогда не поверю что для такого не хватило go, ну и думаю что там куча микросервисов и на передачу данных тратится гораздо больше времени чем на вычисления.
синий колобок.png50 Кб, 200x200
397 1897949
>>897873
Там обнаруживается знаковое переполнение для 2's complement.
398 1897960
>>897863

> uint64_t


Опциональный тип, который может отсутствовать по стандарту.
399 1897974
>>897888
мне кажется они так решили сэкономить, потому что типа считается что держать инфрастуктуру на технологиях майкрософт выходит дороже, чем на каком-нибудь опен-сорс стеке
ну это первый слой понимания
ну а второй слой понимания, что когда решают перейти с одного технологического стека на другой, это просто топ-менеждеры наебывают реальных собственников компании, это идеальный способ выдоить с фирмы как можно больше бабла
как правило, после такого переписывания компания начинает загибаться
очевидно что в россии озон сегодня давит вайлдберрис, да даже ламода, лол, также его дават небольшие специализированные интернет-магазины
те не смотря на то что объемы озона растут, они растут не так хорошо как должны были
а сейчас кризис будет долгий, снижение потребления, не вариант вообще что озон не загнеться
400 1897978
>>897960
uint_least64_t
401 1897988
>>897863
>>896351

Пацаны, эти двое же рофлят? В крестах нельзя просто сложить два числа и словить ошибку без этого говнокода?
402 1897990
>>897988
Ну, они правильно все говорят, другое дело, что в 99% кода это нахуй не надо делать
403 1898011
Пишу либу динамической бинарной инструментации на плюсах. Есть немало классов, методы которых я не хочу вынимать наружу в API, при этом мне известно, что злоупотребление вложенными классами - это не есть good practice. Что посоветуете сделать?
404 1898018
>>898011

> Что посоветуете сделать?


Переписать на пхп
405 1898037
>>898011
pimpl в public хедерах
406 1898044
>>898011
namespace detail просто
407 1898115
>>898011
Посоветую не высирать новый говнокод, а взять существующий типа dyninst.

Ну и бросай IT. 1 января, нормальные люди в миске оливье задыхаются, а ты сидишь в С++ треде на дваче. Задумайся.
408 1898118
>>898044
Двачую.
409 1898155
>>898115
Я ноулайфер-задрот, наевшийся оливьешки уже вчера. 1 января, самое время кодить на плюсах.
410 1898162
>>898115
олсо, dyninst - оверкилл для меня. Вся моя инструментация по большому счету заключается в инжекте бряка в адрес каждого базового блока в заданном диапазоне адресов, потом процесс трейсера ловит сигтрапы и снимает соответствующие бряки.

Нужно было бы мне инжектить трамплины - заюзал бы dyninst или в крайнем случае фриду.
411 1898226
>>898162
Это в упомянутых дби влёт делается без надобности городить всякие трейсеры.
Берешь фриду, пишешь пару строк на JS которые выполнятся в контексте нужного процесса, получаешь трассу

Единственная с натягом причина писать что-то новое - минимальный функционал для каких-нгибудь обрезанных систем. Но даже в этом случае выдрать из той же фриды кусок и подпилить - более быстрое решение (если ты не шиз офк)
412 1898228
решил тут вспомнить как обучался по самоучителю, нашёл свои стары файлы. Поясните почему элемент массива n1array[1] равен нулю если он инициализирован с const int
https://ideone.com/zweIS9
n1array[1]=0 второй элемент не был инициализирован явно

Позже заметил...Ой, нихуя себе, с++14 с идеона даёт другой ответ...
413 1898234
>>898228

> int n1array[n1] {1}


Когда в {} не указываешь оставшиеся значения, они по умолчанию считаются нулями.
414 1898240
>>898234
как видите на первом скрине вторые элементы заполнены случайным числом. компилятор gcc 9.3.0
415 1898245
>>898240
В n1array, про который ты спрашиваешь, везде 0. В других массивах ты не юзал {}, вот он и не инициализировал их чем попало.

> int n1array[n1] {1};


> int n2array[n2];


> int n3array[2];

416 1898262
>>898228
Твой const int ничего не инициализирует
Он просто указывает какого размера будет массив (забитый мусором)
Снимок экрана от 2021-01-02 01-05-49.png28 Кб, 558x217
417 1898264
>>898245
про инициализацию значениями в {} вроде понял, но вот такой ещё момент https://ideone.com/oQgVyD
418 1898284
>>898264
Что за момент? Если тебя удивляет, что в неинициализированных то нули то нет, считай, что это просто совпадение. При обращении к неинициализированным переменным в программе начинается undefined behavior, это значит, что дальнейшее поведение программы не определено стандартом, то есть вести себя она может как угодно. Поэтому нельзя вообще допускать подобных ситуаций.
419 1898290
>>898284
всё понял спасибо. Иду дальше грызть.
420 1898310
Анончики есть кто разбирается в WASM и Emscripten ( + возможно в неткоде )
421 1898433
Правильно ли я понимаю что везде где есть возможность заюзать вектор стоит юзать именно его?
422 1898520
Сап двач. Пишу код, в котором ассемблерную вставку вставляю в PE файл. На моменте, где надо скопировать эту самую вставку и изменить пару адресов начинается ебала)) Пытаюсь скопировать один участок памяти в другой участок памяти, но вместо ассемблерной вставки копируется какая-то хуйня(вместо 60 e8 ... копируется e9 ca). Подскажите плз где я объебался и как это пофиксить(я думаю что с указателями, но не понимаю как). На первом пике то что нужно копировать, на втором то что копируется.
423 1898558
>>898520
Тебе дебаггер подсказывает, что shellcode - это указатель на функцию. Ты уверен, что именно его хочешь писать?
424 1898586
>>898558 Т.е. у меня сейчас переписывается не функция, на которую указывает указатель, а сам указатель? Мне надо содержимое функции shellcode переписать.
425 1898590
Память ввделенная через new сама освобождается при выходе из блрка или ее нужно через delete освобождать?
426 1898603
>>898586
Сообщил куда следует.
427 1898614
>>898590
Нужно вызывать delete. Используй смартпоинтеры.
428 1898615
>>898590
Обязательно через delete, это динамчески выделенная память в куче, а в С++ нет сборщика мусора.
Когда почитаешь о выделении динамической памяти, почитай про RAII, и будет тебе счастье.
429 1898622
>>898614
>>898615
Спасиьбо
430 1898655
>>898603
Так у меня ниче не работает, ты мне сначала помоги указатель починить, а потом сообщай куда хочешь))00)
431 1898663
>>898226

>без надобности городить всякие трейсеры


Нет. В Линуксе dyninst использует ptrace в качестве отладочного API, засим тот процесс, где используется dyninst, и является т.н. "трейсером"
432 1898710
>>898586
Что значит "содержимое функции"?
433 1898712
Как сделать графический редактор по типу Paint
1579823579922.png12 Кб, 675x255
435 1898719
436 1898720
>>898719

> stdlib.h


Ему же на C++ надо, а не C.
# include <cstdlib>
std::system("mspaint.exe");
437 1898727
>>898716
Хотелось бы самому всё сделать. Сначала там ввести понятие сетки пиксилей, потом создать инструмент кисть, который при зажатой кнопке перекрашивает близ лежащие к курсору пиксели. Вот на что нужно опираться ТУТ?
438 1898739
>>898727
Очевидно, нужно вводить какое-то состояние и изменять его, подключившись к событиям ОС.
439 1898774
>>898727
На грамотную иерархию классов. Начни с RisovableFactoryInterface.
440 1898783
>>898663
Я фриду имел в виду, написал же js-скрипт
А логику ведения логов можно в самом скрипте реализовать (правда раз это ИО из джса, то могут быть проблемы со скоростью)
441 1898859
>>898727
бери текстуру OpenGL и рисуй в ней
442 1898920
>>898710
То что у меня на первом пике в первых двух строчках памяти записано(60 e8 00 00 00...), если перевести эти 16ричные числа, то это будет набор ассемблерных команд, которые я оформил в виде ассемблерной ставки, на которую ссылается shellcode.
443 1899104
>>888626 (OP)
Сап, двач.
1. Хочу сделать такой же красивый gui, как пикрелейтед1. В окошке несколько прямоугольников c надписями(до 10^6), между некоторыми рёбра-курвы. Разумеется далеко не все прямоугольники надо рендерить одновременно, нужна навигация в таком окне + изменение масштаба - удалить, приблизить, чтобы не слишком эти самые прямоугольники руинило.
2. Хочу сделать такой же красивый gui, как пикрелейтед2

Чем воспользоваться, чтобы сделать, так чтобы не лагало? Qt, Opengl, winapi, directx?
444 1899135
>>897119
>>897179
>>897250

> не забивать хуй на ворнинги


> нахуй отключить варнинги


> мимо 1.5кк варнингов с этой хуйнёй


Пиздец говнокодеры. С кем только в одном треде сижу...
Даже жалко стало того, кто запустит ваш проект через пару лет и не сможет собрать это говно с тысячами варнингов. Или будет отладчиком десятки багов вылавливать...
445 1899153
>>899135
Ну и что по твоему надо делать если либа с 10к звезд на гитхабе срет тебе варнингами в проекте?
446 1899172
>>899153
Очевидный gcc -w
447 1899180
>>899104
imgui + SDL2
448 1899269
Возможно меня пошлют нахуй.

Правильно ли я сделал, что скачал визуал студию и поставил галочку только у "стандартные приложения виндовс на С++"?

Только вкатываюсь, собираюсь хеллоу ворлд писать из книжки какой-то птицы 2016 года. Пофилософствовать любит автор конечно, неудивительно для пернатых.
449 1899281
>>899269
да, все правильно
almost googol.png28 Кб, 668x402
450 1899340
Симёныч, что посоветуешь чтоб хранить и считать числа до гугола? (он же 10^100, он же 1e+100, он же 1 и тыща нулей). Конкретно в этой задачке перебираю все тыщу чисел, что состоят из девяток и выявляю остаток при делении на некоторые числа.
451 1899355
>>899340
Отмена Симён, ебанул модуло делением поразрядно столбиком, прямо как Клара Гершомовна в третьем классе учила.
452 1899381
>>899135
Кретин. Варнинги варнингам рознь. У меня вчера студия написала "ОШИБКА: название функции должно быть с большой буквы", при том что это имя она сама сгенерила))
453 1899517
Кто vs code юзает там можно как в mvs ide настроить выравнивание текста? Чтоб точку с запятой или закрывающую скобку ввел и автоматечески отступы, пробелы там появились.
454 1899659
>>899517
Да, там галочка какая editor.autoIndent вроде
455 1899761
>>896737

>низкоуровневые пердоли с железом.


Как перестать работать низкоуровневым пердолей за копейки и стать нормальным программистом?
456 1899893
Что происходит, если в std::find(first, last, val) передать в первые два аргумента итераторы из разных массивов?

std::array<int, 4> arr {10, 20, 30, 40};
std::array<int, 2> arr2 {60, 70};

int what = 50;

const int res = std::find(arr.begin(), arr2.begin(), what);

std::cout <<
res //10 -- чего блядь?

Оно работает, но выдаёт хуйню. Что там происходит внутри?
457 1899894
Почему у меня SEGFAULT?
https://pastebin.com/z0BXNTze
458 1899905
>>899893
Undefined behavior
459 1899948
>>899894
Отбой, тредом промахнулся
460 1900014
>>899761
перекатиться в жс и признаться самому себе, что оплот компьютерных технологий на данный момент и на ближайшие лет 30 - веб. Лоу лвл пердолинг остался в 80ых, сейчас не нужОн, так как 80-90% этой работы выполняют сами железячники, которые высирают платы и двигают электронами туда-сюда.
461 1900032
Привет, двач-крестач. Начал изучать кресты - понравилось. Далее планирую обмазаться QT. Сейчас учусь по степику и на данный момент из 38-40 задач не вкурил только 2-3, остальные так или иначе решаю. Также читаю книгу "С++ без страха". Вроде как на степике программа ничего так составлена, буду продолжать.
Посоветуйте еще какие-либо ресурсы, книги, каналы, etc.
Кроме этого, прошу пояснить за операторы изменения типа данных: статик и динамик каст. Со статиком ясно, я даже его применял, а динамик-то как используется?
462 1900033
>>900032
А, еще в свободное время смотрю лекции по Архитектуре ЭВМ и основам ОС. Насколько это вообще нужно крестовику?
463 1900034
>>900032

>динамик-то как используется


Практически нет, в 99% это признак хуевой архитектуры, и _ОЧЕНЬ_ _ОЧЕНЬ_ редко он нужен в каких-то сложных плагин-системах, и то не факт
464 1900053
>>899893

>Что там происходит внутри


Зайди дебаггером и посмотри.
465 1900055
>>899893
Какая разница что там происходит? Ты не можешь на это полагаться в своих программах.
466 1900069
Sup /pr/, я в пизде, мне срочно нужна ваша помощь с С++
Тупо дальнейшая жизнь вместе с зачетом решается сейчас этим

Есть две задачи, которые нужно сделать, они обе решаются через fstream или чот такое
Я валенок, нихуя не понимающий в С++, я пытался блять чот нагуглить, чот решить, но просто нихуя не помогает и меня кроет паничка сейчас, я не в состоянии тупо это написать

Если кто-нибудь из анонов сможет написать за меня эти две проги - скину косарь или мб даже 2, мне уже похуй на деньги на всё остальное, есть вот ток эти два косаря из того что могу предложить, реально пизда как нужно

Задачи:
1) В файле задан список слов. Составить список уникальных слов с указанием, сколько раз они встречаются в исходном списке.
2) В файле задан текст. Написать функцию, определяющую длину слова. Применяя эту функцию, в выходной файл записать слова с указанием их длины.

Вот, сегодня последний срок, иначе еду в армейку
467 1900076
>>900069

>Тупо дальнейшая жизнь вместе с зачетом решается сейчас этим


Нет
468 1900077
>>900069
Сделаю обе прямо сейчас, но по предоплате.
469 1900080
>>900077
я в шаге от роскомнадзора, можно без этого, пожалуйста?
470 1900081
>>900080
Пишешь в телегу. Кидаешь 2к. Через 10 минут присылаю решение обеих задач. Только так.

danetta
471 1900087
>>900081
Ладно, я спать, теперь ты забота кого-нибудь другого.
472 1900108
>>900069
Кайф, минус один неосилятор.
473 1900116
>>900069
Короче с мобилки мне писать лень да и твоя судьба мало интересна.
В первом случае тебе нужна структура данных хэшмап. Алгоритм примерно такой
Пока есть слова в файле
Прочитать слово
Если слово есть в хешмапе увеличить этой записи значение на 1
Если нет то добавить в хешмап запись об этом слове с значением 1
Потом вывести все слова где счетчик ровно 1
Вторая задача примерно так
Заводишь два вектора, для слов и для длин
Пока есть слово в файле
Прочитать слово, записать его в первый вектор, а посчитав его длину, во второй
Потом выводить в файл чередуя слово и длину
474 1900141
>>900116
Анон, спасибо тебе огромное, спас <3
475 1900146
>>900116
кинь кстати телегу и скрин с супом что твой пост, если нужно 2к
обещал же
476 1900175
>>900116
Могу написать сегодня
477 1900184
>>900014

>так как 80-90% этой работы выполняют сами железячники


Ну нет же. В любой конторе, которая делает что-то, что можно потрогать руками, нужно к одной железке присобачить другую. Оттуда и возникают пердоли.
478 1900199
>>900014

>оплот компьютерных технологий на данный момент и на ближайшие лет 30 - веб


в тесной связке с эмбед и его пердолями
479 1900221
480 1900228
>>900175
все сделал и отправил, спасибушки)
481 1900405
>>899659
Да не, это же просто отступы, после открывающей скобки, например. А мне нужно выравнивание текста когда нажимаешь ; либо }
ну как в visual studio, я ж написал
482 1900414
>>900199
которые получают 20к деревянных, жря говно с паяльником в очке и имея х50 знаний веб-господин по объему. Веб-господин же получает 100к+, не будучи даже синьором, и ссыт на пердолю-опущенца свысока.
483 1900436
О бля, только заметил, в вижаке модули появились.
Кто-нибудь юзал уже? Какие подводные?
484 1900499
>>900436
Давно уже. Багов много, фиксят быстро. Толку пока мало.
485 1900755
>>900014

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


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

>перекатиться в жс


Так и сделаю. Уже все коллеги-железячники выучили жс и стали веб-господами, один я прогаю микрики как долбобоб за копейки.
image.png32 Кб, 513x397
486 1900757
Как это фиксить?
487 1900763
>>900757
Поменять прокладку между стулом и клавиатурой
488 1900816
>>900755

>выучили жс и стали веб-господами


кек
sup.png41 Кб, 685x638
489 1900870
>>900146
Лови
1530838610251.png47 Кб, 342x332
490 1900961
>>900870
Бесит, сука.
491 1900972
>>900961
Привет субпиксельному рендерингу. Благодаря нему больше в своей жизни ты никогда не увидишь чётких букв.
492 1901010
>>900972
Да ты шиз, всем похуй на рендеринг. Бесишь даже больше звёздочки.
493 1901086
>>900436
Это для чего? Что за модули?
495 1901115
>>901111
А в чем разница/преимущество перед прекомпилированной либой с хедером?
496 1901116
>>901115
Ортогонально
497 1901118
>>901116

>100500й способ решить одну и ту же задачу, чтобы теперь ты мудохался еще и с либами на модулях.

498 1901125
Анон подскажи есть ли альтернативы получше (используются qt фреймворк)?
https://godbolt.org/z/Y8xW3M
499 1901144
>>901115
По идее с модулями можно обеспечить нормальную область видимости без всяких namespace detail, модули изолируют максросы и, программа максимум, можно в большинстве случаев вообще обойтись без хедеров, а просто сделать import foo.

И в конце концов получится мешанина из всего подряд
500 1901154
>>901125
Альтернатива чему?
501 1901160
>>900870
Фотошоп
502 1901192
Зачем вообще юзать треды отдельно, когда есть std::async?
503 1901196
>>901192
Зачем юзать хедеры, когда есть модули ? ? ?
504 1901221
Анонче, какие навыки на работе нужны кроме синтаксиса языка? Вот из вакансий понятно, что к синтаксису ещё нужны алгоритмы и структуры данных, гит, паттерны иногда и в принципе всё. А что по остальному? Есть ли какие-то мастхэв либы или фреймворки? Boost и Qt первыми приходят в голову, но что если накидать условные шахматы с эффектами в SFML или работодателю вообще похуй на мой гитхаб и всратые пет-проекты уже 10 раз всеми реализованные?
505 1901225
Вопрос по инициализации. Допустим, у меня есть класс

class Book
{
std::string name;
double price;
Book(double _price, std::string _name): price(_price), name(_name) {}
}

Если я делаю массив из интов, мне достаточно одних фигурных скобок
std::array<int, 2> ints {10, 20};
Но если делаю массив объектов, мне нужна дополнительная пара фигурных скобок. Почему?
std::array<Book, 2> books { {49.15, "Akunin"}, {20.90, "Bulgakov" } }; //не робит
std::array<Book, 2> books { { {49.15, "Akunin"}, {20.90, "Bulgakov" } } }; //робит
506 1901311
>>901221

>работодателю вообще похуй на мой гитхаб и всратые пет-проекты уже 10 раз всеми реализованные


this м на либы тоже похуй - они постоянно новые появляются
507 1901347
Парни, есть у кого "C++ Concurrency In Action,2E" 2 издание на русском и C++. Практика многопоточного программирования ?Не получается найти их,пасиб.
508 1901353
>>901347
У меня есть, но в очень хуевом качестве
509 1901355
>>901353
да хоть что-то будет неплохо (особенное если C++ Concurrency In Action,2E)
510 1901394
>>901347
https://dropmefiles.com/GoRNY
Ааа, вирус/скачал и умер брат/ВNШМАСТЕР v2.28, никому не советую
511 1901420
>>900972
Разве нельзя отключить в системе?
512 1901683
Скажите вот что. Рекуосивный вызов функции это дорого? Если как то ухитриться и переписать чисто с циклами это будет быстрее?
513 1901686
>>900757
Почитай про маршалирование
514 1901696
Ребят, что спрашивают вообще по цпп на собесах? Никогда не ходил на собесы, на работу попадал по научке в универе.

Стэк у меня с компьютерной графикой.

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

Сейчас почитываю про cpp14/17/20, решаю задачки на литкоде. На плюсах я давно пишу, и читал всякие бест практисес конечно, но код у меня на уровне cpp11 всегда или даже ниже, так как в компьютерной графике все эти новые фичи особо не нужны.
Что мне стоит знать/уметь? И стоит ли на новые стандарты вообще налегать?
515 1901703
>>901696
Может сходишь куда хочешь устраиваться и спросишь/посмотришь требования?
516 1901704
>>901683
Вызов функции всегда не бесплатный. Дальше зависит от глубины рекурсии, способа передачи параметров и того, что функция делает.
517 1901707
>>901704
Глубина примерно 10. Параметр один: usigned long long. Но она впринципе очень часто вызывается. Каждую губину несколько раз. Если я перепшу это через какие нибудь циклы с goto это может существенно ускорить?
518 1901708
>>901703
Ну так требования уровня "хорошее знание C++". Мне и интересно, что люди в индустрии понимают под "хорошее знание С++".
519 1901709
>>901707
Ты там наносекунды считаешь чтоли, челс?
520 1901710
>>901683
Вызов никогда не "бесплатный". Нужно сохранить какие-то регистры, какие-то восстановить, провести несколько манипуляций со стекаом. Но дорого или нет - зависит от конкретной решаемой задачи. Если у тебя внутренний цикл больше трёх-четырёх десятков инструкций процессора, то скорее всего вызов функции вообще не играет роли с точки зрения скорости.
521 1901714
>>901707
>>901704
>>901683
Понятно, что идейно рекурсия всегда дороже и по времени и по памяти. Но еще даже в сишке была tail recursion оптимизация, не говоря про современные компиляторы. Зависит от юзкейса кароче. Иногда это будет прочти то же самое. Иногда нет.
Ну и непонятно, что происходит с кэшем на самом деле.
522 1901715
>>901709
НУ почему же. У меня однажды была задача, которая рекурсивно не решалась, а решалась тем же алгоритмом, но переписанным через обычные циклы
523 1901721
>>901696
c++11 вполне хватит. если на графений пойдёшь - спросят за геометрию, модели освещения/тени, работу с текстурами. начнут с простого и пока не завалят, чтоб понять насколько хорошо соображаешь.
524 1901731
>>901721
Понял, спасибо. Нормально тогда.

А, еще. Обычно нужно разбираться в многопоточности? Я просто стандартными либами вообще не пользовался, только intel tbb.

>работу с текстурами


Это еще что? В смысле интерполяции всякие и мипмапы?
525 1901749
>>901731
ну ла. фильтрация, мипмапинг (сколько памяти ему нужно). альясинг - как бороться. лоды там всякие (в общих чертах).
526 1901755
>>901731
многопоточность скорее как плюс ко всему остальному (этим обычно какой-нибудь синьёр заведует).
ну и там традиционно спрашивают контейнеры и оценку сложности алгоритмов (O-нотация)
527 1901758
>>901755
>>901749
Не, ну это вообще заебись тогда. Прям сейчас начну аплаиться.
528 1901914
Что занимает меньше места в памяти: массив из трех енумов или один лонг?
529 1901921
>>901914
зависит от дохуя всего, включая базовый тип енума, битность платформы и тд
530 1901928
>>901914
Сравни 3*sizeof(std::underlying_type_t<MyEnum>) и sizeof(long)

Enum под капотом может оказаться и int8t, и uint64_t.
Размер long зависит от разрядности и от ОС (в win64, win32 и unix32 это int32_t, в linux64 это int64_t)
531 1901948
>>888825
9/10 превозмаганий, но ты справишься. В основном из-за кривых кутей а лучше ничего нет
Сделай сначала все в одном стандартном окне, потом по запросам в Гугле поймёшь как сделать второе модальное окно и глобальные хоткеи.
532 1901965
>>892931
Ну давай сюда свою реализацию двоичного поиска по несортированным данным.
image.png56 Кб, 265x219
533 1901977
Не врублюсь в чем смысл колонок и почему слева сумма процентов больше 100
534 1901982
>>901977
Потому что вызовы вложенные. Если у тебя три функции, внутри одной из которых вызывается две других, которые занимают по 40% общего времени, то слева у тебя будет 80+40+40, справа 80
535 1901984
>>901977
И что значат циферки? Я алгоритм ускорил, а цифры наоборот увеличились. Нихуя не понимаю.
536 1901986
>>901977
Слева время работы с учётом всех вложенных функций. Cправа - без них.
537 1901988
>>901984
Так ты на общее время выполнения смотри, а не на его распределение между кусками кода.
539 1901991
>>901982
>>901986
Спасибо
>>901988
Так мне надо узнать какой кусок медленнее всего работает
>>901989
Спасибо
540 1901992
>>901989
valgrind man
541 1901994
>>901992
Пердольный супергерой?
542 1901996
>>901994
Чому пердольный? Я ещё vtune и aqtime юзаю.
543 1901998
Ок, спасибо, я понял, что vs по времени считает. А она может посчитать сколько на каждую функцию в тактах тратится? А то время это такое. Вдруг у меня в момент замера процессор на что то другое отвлечется.
544 1902004
Профилировщик студии самый лучший
нодискас
545 1902006
>>901965
Я наоборот говорю, что бинарный поиск не работает на неотсортированных массивах, ты в глаза что ли ебёшься?
546 1902014
>>902004
А самая лучшая система контроля версий VSS/TFVC.
547 1902015
>>902004
Профилировать прод все равно реально через xperf\WPR
548 1902019
>>901996
да просто смищно VALGRIND MAN

я понимаю, что ты имел ввиду man valgrind
549 1902032
>>902006
Ты там написал так, что я прочитал как: "сортировка контейнера не связана с двоичным поиском".
550 1902036
>>901998
Он вроде честно считает сколько времени выполняется именно твой код без учёта переключения контекста.
Всё что в большинстве случаев нужно - сократить количество вызовов и время вызова каждого метода.
551 1902037
>>901998
Ты лучше тест дольше гоняй (на большем объеме данных)
552 1902043
Хочу создать игру как agar io если зайти и увидеть как она устроена внутри то это c++ код скомпилированный в wasm причем клиент обращается на какой то адресс api получает в формате json сервера и подключается к ним.
Вопрос как сделать типо такую игру? у меня есть идея сделать clash of clans но в браузере. То есть чат плюс строительство.
Как это все устроено изнутри?
я так понимаю сервер должен принимать много сообщений, общаться с базой данных (я выбрал postgres) отсылать что то назад при этом копий сервера должно быть много то есть впереди нужен прокси балансировщик какой то(наверно?)
так что реквестирую гайды (и книги) по таким темам как

- как на c++ писать свое api
- как писать такие сервера, которые и жнец (общение с базой) и на дуде игрец (принимает и отсылает сообщения)
- как работать с базой (right way)
- как написать вот эту приемку сообщений ( я так понял нужен типо брокер сообщений)
- как писать прокси балансер, возможно писать его не придется и есть готовые решения (я нищюк и мне нужно чтобы я смог арендовать какой нибудь серверок за 4 баксов на дигитал океане, при необходимости взять еще один ввести пару команд, и вуаля у меня уже два сервера)
- как все это соединить вместе

библиотеку общения я уже выбрал это будут uws - websokect

для клиента меня интересует - как наилучшим образом делать графику в веб ( opengl норм?)

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

Сенкс!

советую всем посомтреть как сделана игра agar io и deep io (их сделал один человек)
553 1902045
>>902043
Используй профилировщик студии, базарю
554 1902046
>>902036
Ок. Спасибо
>>902037
Я и так жду по 10 секунд пока оно досчитает, чтобы помех не было
555 1902074
>>901160
Где мои бабки сучара?
556 1902081
>>902043
Собери из готовых компонент. На c++, gl и прочем ты до седых мудей будешь проект делать.
557 1902186
>>902043
почему у некоторых маслят есть непонятная привычка выбирать неправильный инструмент для достижения цели?
558 1902198
559 1902253
560 1902271
>>902253
Деточка! А вам не кажется, что ваше место возле параши?
561 1902364
>>902043
Я бы посоветовал пикнуть С# для твоей цели, на плюсах охуеешь все это писать с нуля в одиночку, особенно если у тебя опыт программирования на плюсах меньше 6 лет.
562 1902367
>>902364

> wasm


> Я бы посоветовал пикнуть С#


Чел, не советуй такое. Васм в шарпе очень медленный, медленнее жс. Если уж хочется игру в браузере на шарпе, то комбайн в виде Юнити и то лучше будет. Алсо, 2дэ можно и на жс написать.
563 1902629
Как рейтите этот курс по крестам? https://www.coursera.org/specializations/c-plus-plus-modern-development
Чем можно его заменить в полной мере, учитывая что там практики много?
image.png46 Кб, 946x351
564 1902661
>>902629
Чё то пахнет хуем. Ничего такого чего нельзя прочитать у Бьярна я не увидел.
565 1902703
>>902629

> курс


> по крестам

566 1902709
>>902703

>гринтекст вместо нормально построенного предложения

567 1902715
>>902709

> пук

568 1902933
Надо прикрутить к проге работу с файлами. Прога будет крутиться пару часов, а то и суток на компе. Время пиздец как важно. Поэтому вопросы следущие: стоит ли мне думать о процессе записи в файл или оно само все сделает? Чтобы оно не открывало и закрывало файл каждый раз, чтобы число записать, а таких очень много (около 10^10 ). Если в несколько файлов буду писать и при этом для каждого создам свой fstream оно же сначала в буфер для каждого файла писать будет? Можно буфер настроить как то для большей эффективности или нет? Можно ли сделать, так чтобы он писал в буфер пока оперативка не кончится, а потом начинал в файл данные писать, но не мешая основной программе, чтобы она не простаивала?
569 1902936
>>902629
Лучший курс из существующих, увы. Если сам не можешь читать книги - то надо брать.
570 1902960
Есть разница какой log считать? Или они по времени одинаково считаются?
571 1902968
А я чё то не понял, а когда С++20 то примут?
572 1902972
>>902933
Заведи несколько буферов в оперативке. В один пишешь числа свои и при заполнении свапаешь. Полный буфер вторым потоком дампаешь в файл.
Ну эт топорное решение. Тебе ещё надо будет придумать как дамп сделать если exception вылетит.
573 1902976
>>902968
Приняли давно уже, официально редакция в декабре вышла.
574 1902979
>>902972
А fstream разве сам буферы не создает?
575 1902996
>>902979
у тебя будут большие накладные расходы при вызове методов fstream (если ты по одному числу записывать будешь)

https://stackoverflow.com/questions/12997131/stdfstream-buffering-vs-manual-buffering-why-10x-gain-with-manual-buffering
576 1903011
>>902972
Спасибо большое. Вероятно, я потом еще вернусь с вопросами при потоки и организацию записи, чтобы не было такого, что первый буфер заполнился, а второй еще не освободился, а я писать в него хочу.
577 1903032
>>901683
используй гото и не еби мозг.
578 1903052
>>902996
Еще вопрос. Как числа быстро записывать? То есть их в строку надо переводить. Это не долго?
579 1903097
>>902933
Напиши прогу тестер, там может быть много нюансов, этож профилирование. Тоже таким занимался для читалки проприетарного формата файлов.
580 1903114
Блин, а нельзя как то просто в другом потоке записывать? Просто мне не хочется кучу времени на это тратить.
581 1903124
анон, вопрос по конструкторам
перекатываюсь к вам из си шарпа, и немного удивился, когда увидел крестовый синтаксис конструктора
можно написать так:
struct P
{
P(int x, int y) : x(y), y(y) {}
int x;
int y;
}

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

struct P
{
P(int x, int y)
{
this->x = x;
this->y = y;
}
int x;
int y;
}

Есть какие-то причины писать 1 способ, а не 2? Вроде как второй с способ понятнее и читабельнее
582 1903131
>>903114
Дебил, пока не напишешь код и не запустишь профилировщик студии, всё свои высеры про "медленно" и "не хочу тратить время" можешь засунуть себе в очко
583 1903135
>>903052
std::to_chars отработает очень быстро
584 1903138
>>903131
Я имел ввиду время тратить на наисание кода, потому что задачу совсем о другом. Ну ок
585 1903139
>>903124
Конструктор принимающий дохуя параметров - code smell, так что все ок
586 1903140
>>903139
так, а всм 1 или 2?
587 1903147
>>903124
В первом случае члены класса сразу инициализируются, во втором сначала вызываются конструкторы по умолчанию, потом происходит присваивание.
На практике обычно пишут что-то вроде:

MyClass(int param1, int param2, ...)
````: m_param1(param1)
````, m_param2(param2)
````...
{}
588 1903150
>>903147
прикольно, спасибо
589 1903151
>>903140
Идиоматически - 1
590 1903153
>>903124
Первый способ работает быстрее. Хотя компилятор скорее всего догадается как сделать из второго то же самое.
591 1903161
Куда дальше двигаться после stl и многопотока? Пойти на хх и брать либы из вакансий чи шо? Мейерса читал.
592 1903162
>>903161
Делай говнопроекты любые.
image.png12 Кб, 499x142
593 1903164
>>903162
Да уже делаю, но цель устроиться на работку, потому и хочу освоить теор. минимум. Winapi норм тема или нужны пререквизиты какие-нибудь?
594 1903168
>>903161
работать иди. иначе ты через пару месяцев всё забудешь.
595 1903174
>>903164
Winapi нишевое говно. На собесе за него не спросят.
596 1903175
>>903168
Да я рад бы. Но моих знаний же объективно мало, не?
597 1903177
>>903174
Ну а хотя бы общее представление о нём имеет смысл получить?
598 1903185
>>903175
Идёшь и беседуешь. По месту станет понятно что тебе ещё освоить. Чтоб не рефлексить сходи сначала в конторы которые тебе не сильно интересны.
599 1903189
>>903164

>Winapi


Там давно норма mfc, которое говно канеш, но лучше чем випнапи.
600 1903190
>>903185
>>903189
Буду пробовать, чё. Спасибо.
601 1903192
Именно на крестах, так там дотнетовские языки сейчас.
602 1903195
Как организовать адекватное закрытие программы? Прога в файл данные пишет, но мне ее надо будет закрывать и заново открывать. Нельзя же просто закрыть, а то данные повредятся
603 1903196
>>903190
Ну типа в школе инсте универе у тебя есть 2-3 попытки сдать. А собесов у тебя штук 20 в разные конторы и потом каждый год ещё повторно можно собеситься. Короче изи мод.
604 1903207
>>903195
std::atexit
а воообще возьми да загугли.
605 1903211
>>903207
Да не. Так бы я написал просто return 0. Как закрыть ее в нужный мне момент?
606 1903216
>>903211
Ну я конечно могу раз в секунду проверять нажата ли кнопка или что то такое. Но выглядит костыльно
607 1903226
>>903211
Чел, ...
std::exit
608 1903239
>>903226
Какая разница?
609 1903246
>>903216
В винде придётся задавать callback через winapi. Создай оконный проект в студии и копипастой оттуда забери нужный код.
В линуксе можешь сделать callback на нажатие Ctrl+C:
void on_exit(int);
signal(SIGINT, on_exit);
610 1903265
>>903246
Спасибо. То что надо. Если использовать только обычный fstream, то ситуация печальная. Из за дрочки диска проц грузится на процент. Завтра буду делать что то
611 1903272
>>903246
SetConsoleCtrlHandler в шинде
612 1903342
1) если std::cout << "mamku ebal";
откуда компилятор знает что это стринг? он ведь считает этот литерал массивом чаров, верно?
2) использование макросов моветон?
#define to_int(x) static_cast<int>(x)
так, например.
613 1903343
>>903342
1. Там и нет стринга. Там operator<<(const char*)
https://www.cplusplus.com/Й/ostream/operator-free/
(А вообще то бывают неявные приведения типов)
2. Пиши просто функцию. Она оптимизируется скорее всего. В макросах нет типов, это минус.
614 1903345
>>903343

>А вообще то бывают неявные приведения типов


это когда:
std::string s = "mamku"
std::cout << s + "ebal"
я так понимаю
за макросы пример неудачный, просто в общем не раз читал что говно и нинужно
615 1903346
>>903345
бля тут еще приоритеты надо учитывать и скобки расставлять сложнаа лул, пистон конечно как для деток после крестов
616 1903347
>>903346
*приоритеты операторов
Снимок экрана от 2021-01-07 05-20-03.png27 Кб, 1026x206
617 1903348
>>903347
вроде верно
618 1903349
>>903345
Тогда вызовется https://www.cplusplus.com/reference/string/string/operator<</

Не парься operator<< это просто функция
Принцип не отличается от того как компилятор различает вызов foo(int) и foo(char*)
619 1903350
620 1903528
>>903124
Есть причины. Если у тебя есть константные member variables в классе, ты не сможешь их инициализировать, не используя первый вариант.
621 1903560
Почему Дефендер начинает ругаться и удалять программу без подписи, если создавать её ярлык в Startup?
Вроде нету вредоносного кода, но всё равно ругается.
622 1903575
>>903528

> константные member variables в классе


Антипаттерн.
Правило звучит так: always const, except for class members
623 1903631
>>903560
Лучше бы он браузеры мейл ру так удалял.
Алсо я однажды скомпилировал пример программы для подмены событий с клавиатуры. Так там такое началось, что я подумал мне сейчас омон дверь вынесет..
624 1903745
За сколько времени можно до джуна по плюсам доползти если с языком знаком на уровне "Си с классами", а алгоритмам и прочему научили в ВУЗе? Одной книги Страуструпа и одной Мейерса ведь недостаточно, надо же ещё что-то, наверное.
625 1903752
Нужно учить различные сортировки и деревья? Слышал мнение, что это крайне мало где нужно. Сам за несколько лет максимум использовал std::map, списки, векторы и ещё пару костылей, вызывал std::sort. Не зря начал изучать?
626 1903758
>>903752
Нигде нахуй не нужно, кроме собеседований
627 1903759
>>903745
Надо писать код. Постоянно. А не читать книги.
628 1903852
>>903759

> Надо писать код


Код из туториалов? Из книг? Свои проекты? Используя фреймворки? Решая задачи на литкод? Опен сорс проекты на гитхабе? Всё сразу?
Постоянно это слышу, но никто не объясняет какой именно код нужно писать.

мимокрокодил
629 1903885
>>903852
Ты не понимаешь. НАДО. ПРОСТО. ПИСАТЬ. КОД. Пусть он не компилится и пишешь ты синтаксическое говно - главное писать. А потом хоба - и ты сео яндекса. Ясно?
630 1903890
https://ideone.com/xnOaCb

Подскажите, можно ли здесь получить размер динамического массива через указатель name? Насколько я понимаю, нет, но понимаю я пока примерно нихуя, поэтому обращаюсь с вопросом.
Про искусственность примера знаю.
631 1903910
>>903890
strlen(name) + 1
632 1903919
>>903890
Кури string_view
633 1903938
>>903910
>>903919
Спасибо
634 1903973
>>903852
Любые хуевые пет-проекты. Хуевый тетрис, марио для даунов, беспонтовый п2п чат. Что угодно, главное писать самому, пытаться хуево дизайнить.

Самый важный совет, который я могу дать с высоты своего помидорского опыта - никогда не старайся сделать идеально. Перфекционизм не нужен. Самое важное - делать корректно, а хуевый код потом порефакторишь.
635 1903980
>>903973

> хуевый код потом порефакторишь


Ахуенный совет. По своему опыту знаю, что говнокод из первых свои проектов проще переписать с нуля, чем рефакторить.
636 1903981
>>903980
Да даже если переписать - все равно ок. Самая распространенная ошибка, на которую и я наступал - пытаться сразу написать хорошо, и в итоге не написать вообще ничего.
637 1903983
>>903910
Я тормоз, имелся в виду размер в байтах. sizeof по отношению к name вернет размер указателя, а не массива. Можно ли узнать его?
638 1903993
>>903983
(strlen(name) + 1) ⚹ sizeof(char) или sizeof(⚹name)
639 1903998
>>903993
ну то есть длина массива: strlen(name) + 1 (+1 потому что в конце строки /0)
размер одного элемента sizeof(char) == sizeof(*name) == 1 байт (но не всегда)
640 1904006
>>903998
Понял, спасибо еще раз
641 1904015
>>903973
В с++ это так не работает. Тут надо дрочить и практику, и теорию (чтобы знать все 13 видов инициализации)
Просто писать говнокод никуда не продвинет.
642 1904019
>>904015
Вот единственное, что продвинет любого программиста куда-либо, это писать код. Я не знаю 13 видов инициализации, это не мешает мне работать. Но штук 7 знаю, да.
643 1904056
>>904015
Не надо ничего дрочить. Нужно научиться стабильно закрывать таски (закрывать чтоб работало и стабильно, чтоб не упираться в крупный рефакторинг).
Ты не поверишь, но кроме тебя ещё есть целая стая долбаёбов, которые обсираются с выработкой требований, тестированием, сроками, бюджетами и прочими делами. Твой код никогда не дойдёт до прода, если ты его будешь облизывать.
644 1904072
ЕБУЧИЙ DIRECTX БЛЯДЬ
645 1904074
>>904072
Да, чистый директс с COM обьектами та еще залупа, я знаю.
646 1904080
аноны, а кто что делает на работе? интересны области применения крестов на реальных примерах
647 1904086
>>904080
Из моих знакомых: Бэкенд яндекс маркета, поиск мейлру, Местный 3Д около-САПР в Align Technology, Говнобраузеры в яндексе и мейле, кернель драйвера в Нвидии, всякие роутеры\свитчи. Ну и игры само собой.
648 1904093
>>904080
недавно пилил видеонаблюдение с распознаванием лиц, машин, забытых сумок и прочей хуйни. сейчас ADAS систему пилим - чтоб машина сама подсказывала водиле, что впереди столб и надо руль повернуть.
649 1904137
Мне нужно вычисления произвести очень большие. На моем компе часов 15-20. Есть ли аренда какая компов мощных? Чтобы во первых быстрее, а во вторых свой комп не насиловать
650 1904148
>>904137
Платформа имеет значение?
651 1904155
>>904148
Нет. Я сейчас чекнул в инете эту тему. Там часто много чего мне не надо. Мне важно чтобы проц на ядро был сильный. Программа не параллелится. И 10гб диска. Видюха не нужна. Программа должна отработать. Гигов 5 файлов она на диск запишет. Я это потом заберу к себе.
652 1904157
>>904155
https://cloud.google.com/compute/docs/benchmarks-linux
Могу на полтора часа дать N2 с 6 ядрами и 24гб ОЗУ.
653 1904159
>>904157
Чому только полтора? Боюсь мне надо больше. И цена вопроса какая?
654 1904160
>>904159
Могу и 3 часа, только надо будет машину пересоздавать.
Бесплатно.
655 1904162
>>904159
А ты можешь, например, вычисления разбить на части? Могу 5 машин дать, только они работать будут полтора часа.
Как работать перестанут можно ещё сделать.
656 1904168
>>904160
>>904162
Спасибо большое за услуги такие. Я могу и заплатить. Но на данном этапе я не могу распараллелить. Но могу параллельно делать на следущем этапе. Сейчас все же приоритет на одно ядро. А у тебя tg есть?
657 1904172
>>904168
Дай свой, я напишу.

> на данном этапе я не могу распараллелить


Всё таки нужна машина более чем на полтора часа?
image.png146 Кб, 1366x768
658 1904175
>>904172
@DoniR112

> Всё таки нужна машина более чем на полтора часа?


Да. Я пикрил пока присмотрел. 160 рубей в сутки.
659 1904181
>>904175
https://cloud.google.com/compute/all-pricing
Тут смотрел?
На GCP как раз платишь за то, сколько ты пользовался.
660 1904223
где перекот
661 1904247
>>904223
через 340 комментов
662 1904275
>>904247
бля забыл что тут другие лимиты
663 1904281
>>904175
Ну естественно, что ты нихуя не можешь себя выдавить, я же тебя на протяжении пяти лет в череп ебал без усталости, в частности в уши. Раздолбал все в твоей смешной пониёбской башке до неузнаваемости. Забавно осознавать, что ты еще способен функционировать как живой организм, тупо калобактерия, пародия на человека разумного, хотя с какой стати парашная прыщеблядская грязь стала походить на человека, я хуею блять, нахуй ты такой говнопидор живешь?
664 1904295
>>904074
Если обмазаться ComPtr, то вполне себе норм.
image.png404 Кб, 930x520
665 1904331
Какого хуя эклипс блять, его вообще кто-то юзает? Есть же вс, есть же лион. Н.а.х.у.я. эклипс?
666 1904332
>>904331
Плагины, которых нет в других IDE (обычно пердольные под всякий эмбед). Есть даже целый кастомный Eclipse от nvidia.
667 1904336
>>904331
>>904332
Есть даже целый кастомный Eclipse от QNX
668 1904337
>>904331
Что лучше VS или CLion?
669 1904339
>>904332
>>904336
Хуета значит, эмбед не нужон.
>>904337
VS по способу сборки, лион по всему остальному.
670 1904342
>>904337
Vs code
671 1904344
>>904339
А если я например захочу свою поделку выложить куда-то, VS поможет как-то?
Или надо будет CMake добавлять?
672 1904345
>>904342
А он чем хорош?
673 1904349
>>904344
Ну я shitаю что самая норм тема - создавать папочку lib и заливать все внешки туда и заливать в таком виде без всяких sln и смаков.
674 1904350
>>904337
VS с решарпером

>>904344

> А если я например захочу свою поделку выложить куда-то, VS поможет как-то?


> Или надо будет CMake добавлять?


Тащемта шмек де-факто стал стандартом, в любом случае его придется добавлять.
675 1904351
>>904349
Как вообще лучше всего оформлять проект чтобы другому пользователю было максимально удобно компилировать?
676 1904355
>>904351
А что ты вообще подразумеваешь под оформлением?
Я делаю как описал, а там уж пусть компилят как им удобно.
677 1904358
>>904351
https://cliutils.gitlab.io/modern-cmake/modern-cmake.pdf

Ещё можешь почитать/послушать доклад о том, как делать библиотеки удобными для экспорта в vcpkg
678 1904361
>>904355
Я просто вспомнил как пытался на винде скомпилить какую-то штуку, а там был premake5 внутри.
В итоге остался с окровавленным нечто вместо зада.
679 1904362
>>904361
Ну значит я молодец и поступаю правильно. Ну может быть однажды мне станет не лень и я буду прикручивать смак.
680 1904363
>>904362
А можно ли вообще без всего этого проекты делать?
Что-то такое:
/src/main.cpp
/src/gui/gui.cpp

Компилятор сам такое сможет разобрать?
681 1904364
>>904363
Ну а почему нет? Ты же хедеры подключаешь, да и конпилятору можно явно указывать директории/файлы.
682 1904369
>>904364
В интернете написано что CLion как-то с CMake помогает.
Интересно.
683 1904372
>>904369
ЛевЪ денег стоит. Дома его можно крякнутый юзать, а типичная контора работягам его покупать не станет.
684 1904373
>>904361
было также, только с nmake
685 1904374
>>904372

> FREE for Open Source projects


> FREE for students and teachers


> FREE for education and training


Так же можно EAP версию использовать, если совсем плохо с деньгами.
А так оно стоит 90$ в год.
686 1904459
>>904337
VS + Resharper > CLion > VS чистый
687 1904476
>>904372
Давай предположим, что ты работяга 200к\м на руки, крепкий ДСовский мидл.

Контора до налогов платит за тебя, допустим, 300к в месяц (округлим) -> 3.6кк в год. Шлион для организаций стоит 200 бачей в год - 15к рубасосов.

Используя математику уровня /b понимаем, что если покупка Clion'а сделает нас на 0.4% продуктивнее, чем в работа вскоде\эклипсе\любой другой бешплатной параше - то это выгодная покупка. И догадываемся о том, что хороший тулинг сделает нас ОЩУТИМО продуктивнее, а не на десятые доли процента.

Контора оплачивает студию и решарпер - где-то косарь триста бачей в месяц, и это капля в море, по сравнению с зарплатой годовой. А продуктивность выше ощутимо, если бы я ебался с бесплатным софтом
688 1904488
>>904476
1300 в год[, не в месяц, фикс/spoiler]
689 1904490
Где можно подробнее прочитать о том, как в плюсах выделяется память? Статическая ведь вся не выделяется на стеке, либо же это просто несколько стеков? С динамической кое-как понятно, а как работает всё остальное понять уже сложнее. Я в попытках нагуглить и понять кусками дошёл до того, что вся программа работает на одном стеке, чего быть не может по логике.
690 1904493
>>904490
стек 1 на тред
691 1904504
>>904493
Стек в этом случае это структура данных абстрактная или стек именно операционки? Потому что стек на линуксе - 8МБ, на шиндовсе - 1МБ, если брать первый же запрос из гугла. Не совсем понимаю как всё в один мегабайт укладывается то.
692 1904505
>>904504
так у тебя на стэке очень мало инфы обычно, мегабайта дохера для этого всего.

В виндовом кернеле стек 8кб (!!!) для 32хбитного драйвера, и ниче, хватает.
693 1904515
>>904505
А это можно как-то отследить? Может в VS есть инструменты для этого из коробки? Из диспетчера я вижу, что простейший пример для расчёта массы коробки в один поток занимает мегабайт оперативы, но это не то ведь.
694 1904520
>>904363
Лол, много красноглазого софта до сих пор собирается через g++ *.cpp
695 1904521
>>904520
В винде так же можно?
image.png47 Кб, 716x499
696 1904525
Гикбрейнс явно читает наш тред. Иначе откуда он взял нвидиевские 700к+
697 1904527
>>904521
можно дергать CL.exe и потом LINK.exe, но нахуя.
698 1904531
>>904459

>VS + Visual Assist


Поправил тебя, не благодари.
699 1904532
>>904531
Зачме?
700 1904562
>>904331
Будете заниматься тем что справа, станете похожи на то что слева
701 1904567
>>904562
А если буду заниматься тем что слева?
702 1904570
>>904476
А когда ты выходишь из манямирка, то оказывается, что в конторе есть ещё июни за 70к/м и контора твоя в ДС2-3-4-5... с зп на 25-30-35% меньше. Потом оказывается, что сэкономленные деньги падают прямо в карман гендиру (~3k$ карман не тянут). И становится не так однозначно.
703 1904573
>>904567
Да убережёт тебя Бог от такой участи.
704 1904582
>>904570
так не надо работать в такой залупе.
705 1904592
>>904562
А чем заниматься чтобы стать успешным 800к/месяц?
706 1904602
>>904592
Устроиться в нвидию сеньором.
707 1904605
>>904602
А до этого?
708 1904633
>>904490

>Статическая ведь вся не выделяется на стеке


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

>С динамической кое-как понятно


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

По поводу динамической - она не привязана к ABI в отличие от статической, а привязана к реализации аллокатора памяти в куче (а таких дохуя - ptmalloc3 (реализация в glibc), jemalloc (браузер огнелис ее юзает, например, ну и в бздяхе она дефолтная), виндовый аллокатор памяти и т.п.). В гугл хроме вообще кастомный гугловский маллок. Если ты не лоу лвл хакер или не разрабатываешь аллокаторы памяти, то устройство оной изнутри тебе знать необязательно, просто помни, что в unmanaged языках ты должен освобождать динамическую память вручную (офк мы не говорим про умные указатели и RAII в целом в плюсах, но за кулисами там такой же delete, просто обеспеченный деструктором классов-оберток над указателями).
709 1904707
>>904633

> Куда сложнее, чем статическая.


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

> если бы ты знал хотя бы один из языков ассемблера


Писал только на ассемблере процессора intel i8085 математические функции и уравнения в вузе, и позже немного на gas подобное же делал, где и со стеком больше уже работал, вопросы не отпали.

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


В том смысле что он сохраняет адрес возврата? Про стековый фрейм погуглил, как я понял, заносится сначала адрес возврата, за ним аргументы и локальные переменные, по возвращению это всё "освобождается" (указатель на стек возвращается назад и снова идёт вниз, затирая старый мусор). Если я правильно всё понял. Вообще да, теперь работа статической памяти понятней выглядит.
710 1904709
>>904707

> и снова идёт вниз


вверх точнее, заполняется в общем он

самофикс
711 1904876
>>904633

>Статическая вся на стеке


По-моему ты пиздишь.
Возьмем к примеру статическую переменную в функции. Она не разрушается при выходе из функции, но и не находтся в куче.
712 1904887
>>904531
Assist классная штука, но бывает тормозит. На новой (ну как, 1.5 года) работу пока не просил купить, вроде 2017 и 2019 студии и так до фига чего могут сами. Но иногда не хватает.
713 1904928
Что вообще такое это ваше знание стандарта? Это когда я прочитал референс на 2к страниц? Или когда просто знаю какие фичи можно юзать в коде а какие нельзя? Как это проверяют?
714 1904930
>>904876
Да, анон, слегка пизжу, ты прав.
В случае со статическими переменными - они хранятся в data секции бинарника (тонкости зависят от формата бинарного файла, но в целом везде все работает по одинаковому принципу).
715 1904932
>>904531
>>904887
На Assist после решарпера смотреть вообще не хочется. На большом огромном сука проекте ассист ждёт по три секунды после правок
1599532493495.png48 Кб, 834x750
716 1904941
>>904137
Могу такое дать до 15 числа. 15 блокнут за неуплату.
717 1905020
>>904928
В смысле проверяют? Ты или хуевый или нет
718 1905033
Что у джуна спрашивают на собесах? Что спрашивали у вас?
719 1905042
>>905033
Type traits, perfect forwarding + universal reference, RVO, move semantics, variadic templates, CRTP
720 1905043
>>905042
забыл добавить - SFINAE
721 1905044
>>905042
забыл про SFINAE, void_t и detector pattern в C++98
722 1905073
>>904932
Ну не знаю. На моей предыдущей работе, когда окружение виндовое было и стояла студия, VA только в самом начале жутко тормозил. Пришёл, включил комп, студию - и идёшь за чаем. Затем всё бодро работало.
723 1905076
>>905042
>>905043
>>905044

>забыть про трюк со swap'ом для быстрого перемещения объектов


Мы вам перезвоним
724 1905096
>>905076

>для быстрого


Нет
725 1905272
>>905042
Hi guys, Im Bjarn Stroustroup. Been sitting in /b ("You laugh - you shit pants") and decided to read c++ thread, you know Im a bit related to this great language.
And honestrly i dont give a fuck what the "CRTP" is, moderators please ban this troll account
726 1905273
>>905272
Когда след издание журавля, дедуль?
727 1905285
>>905272
чому книги говно такое, нахуй мне твой фултик устанавливать что бы классы изучать, столько воды будто я курсовую юрфака читаю.
Алсо, потцоны, вопрос:
Clion c Qt можно подружить или все таки ебаный qtcreator тащит
728 1905294
>>905285

> Clion c Qt можно подружить


Можно https://www.jetbrains.com/help/clion/qt-tutorial.html
но нахуя? Если вдруг понадобится дизайнер для формочек, то в любом случае придётся открывать кьютишную ide. Ну и главная фича QtCreator в документации прямо в редакторе. Можно пользоваться сразу несколькими редакторами и никто по жопе за это не даст, базовый функционал везде одинаковый, а хоткеи накатить сможешь тоже любые.
729 1905296
>>905272
Это как задрачивать паттерны и прочую терминологию. Дохуя времени что-то юзаешь и даже не подозреваешь, что какие-то умники придумали названия для всего этого и ебут на собесах из-за незнания названий.
730 1905300
>>905294
я изучаю кресты написанием всяких тетрисов как и питон когда то а для этого формочки нахуй не нужны, ебашишь кастомный виджет и русуешь паинтером все что хочешь. Просто там qmake какой-то, я конечно разберусь пойже но не хочеться пересаживаться на креатор только потому что qmake будет правильнее собирать или быстрее.
731 1905324
>>905285
I fuck you fucking bitch fucking braindead russian who uses goto. My both pluses are in your mouth and a big C in your dads ass.
Pwned, now go JS thread to ladyboys party
732 1905328
>>905324
лысая башка дай пирожка не бомби
733 1905331
бля, константные указатели, указатели на константы, указатели на указатели я ебал сука бля сложнаа
1610167857103.jpg19 Кб, 375x500
734 1905339
>>905324

> I fuck you fucking bitch fucking braindead russian who uses goto. My both pluses are in your mouth and a big C in your dads ass.


> Pwned, now go JS thread to ladyboys party

735 1905366
736 1905391
>>905272

>Bjarn Stroustroup


Как можно в обоих словах допустить ошибку? Bjarne Stroustrup же
737 1905393
>>904928
Когда говорят "знание стандарта C++17", обычно подразумевают именно умение использовать плюшки этой редакции языка, а не сакральное знание сего талмуда.
738 1905412
>>905331
а нехуй было начинать программировать с пиздона или жса, теперь терпи, смерд.

Алсо, если для тебя это сложно, то плюсы это не твое. Ты просто еще в душе не ебешь что есть СЛОЖНО в плюсах.
739 1905449
>>905412
Ну-ка назови. Аж интересно стало
740 1905463
>>905449
Покопипастю картинки 120 треда
741 1905507
>>905412
Я учу вторую неделю и просто в шутливой форме делюсь впечатлениями. Алсо понимание любой сложности приходит с опытом так что если я сохраню свою заинтересованность то тогда в душе выебу
742 1905532
>>905507
Молодец, продолжай.

no sarcasm
image.png90 Кб, 522x150
743 1905549
>>905463
Ну и в чём смысол этой хуйни?
744 1905550
>>905549
Замыкание
745 1905551
>>905549
захват по значению\по ссылке.
746 1905558
>>905507
ну тогда молодец, анон, удачи. Плюсы - интересный язык с бесконечными возможностями, особенно современные стандарты. Втянуться легко и не слушай ебланов-неосиляторов, будешь достаточно топовым - заведешь трактор и будешь жить припеваючи. Главное не прекращай, удачи.
747 1905559
>>905549
Еще спроси зачем <utility> если std::forward не используется.
748 1905560
>>905559
И действительно, зачем?
749 1905584
>>905550
>>905551
А бля, это лямбды? Я до них ещё не дошёл просто.
750 1905600
>>905558
Ну да учишь такой язык, а потом смотришь на вакансии в своей 800к мухосрани, а там всего пара мест и те ждут кандидатов с опытом.
751 1905601
>>905600
Я так в москву переехал
752 1905604
>>905600
Ты это адептам ПЕДЕраста будешь задвигать, сычуш :-)
753 1905607
>>905604
Ну так с педерастом в этом плане все еще хуже я и не спорю.
754 1905693
755 1905696
>>905463

>1 pic



", ...)" Что это за хуета? Многоточия так не используются, что они раскрывают, запятую чтоли?
Этот выебон детсадовский не скомпилится, зря в метросексуальный дизайн обрамляли
756 1905698
>>905696
Это fold expression над оператором ,
См. https://en.cppreference.com/w/cpp/language/fold
758 1905710
Почему здешние задроты еще не переписали Двач на С++?

Даже байтоебы из ASM треда справились и запилили демку: https://youtu.be/dQw4w9WgXcQ
759 1905722
>>905710
Легко, даже для крестов есть веб-фреймворки. Но какой в этом смысл?
760 1905731
>>905558

>заведешь трактор


Который дальше масквы не едет.

>>905601

>Я так в москву переехал


Достаточно было ЕГ сдать, дебич.
761 1905770
>>903189
Надо с разворота предложить все на Qt переписать.
762 1905786
>>903124
Для инициализации рефов нужно

struct ChlenView
{
ChlenView(const Hui& h) : m_zalupa(h.GetZalupa())
{
// Компилятор скажет: "соси эту залупу сам
// m_zalupa = h.GetZalupa();
}
private:
const Zalupa& m_zalupa;
};
763 1905794
>>904072
ЕБУЧИЙ Vulkan БЛЯТЬ.
764 1905836
>>905300
Qt потихому на Cmake перекатывается.
765 1905859
>>905786

> const Zalupa& m_zalupa;


Антипаттерн в общем случае, хотя иногда полезно
766 1905914
>>905549

>Ну и в чём смысол этой хуйни?


source code obfuscation, способ который используют senior c++ programmers чтобы не быть выкинутыми на помоечку как outdated!
767 1906289
как научится писать сервера и скалить их горизонтально
книги статьи туторы?
768 1906360
>>904336
Есть даже целый кастомный Eclipse от National Instruments (Texas Instruments)
769 1906361
>>906360
Есть даже целый кастомный Eclipse от Галактической Империи (Galactic Empire)
770 1906363
>>904331
ничего не знаю, но знаю что ради этого поделия (eclipse) ibm прибила прикольную ide visualage
решили свою корпоративную ide переписать на модной-молодежной тогда яве, по результату проебали часть собственного рынка средств корпоративной разработки
771 1906364
>>904349
>>904344
Что насчёт организации проекта по лекалам Pitchfork скажете?
https://api.csswg.org/bikeshed/?force=1&url=https://raw.githubusercontent.com/vector-of-bool/pitchfork/develop/data/spec.bs#submod
772 1906365
>>904525
На сайте с зарплатами
773 1906369
>>906364
Нормальная тема, сам так делаю.
774 1906437
>>906289
По-моему, на С++ обычно пишут сервера для того, чтобы их не скейлить. Они просто работают так быстро, что им это не нужно.
775 1906485
Когда факю перепишете, лентяи? Устарело ведь это оливье.
776 1906497
>>906437
мне нужна книга как их писать с примерами кода и словами почему так а не так
и с главой про горизонтальное масштабирование и raft алгоритм
есть такая?
777 1906517
Насколько вообще костыльно и сложно будет написать приложение под калдроид на крестах?
778 1906539
>>906517
Определи "костыльно".
Какое именно приложение?
779 1906546
>>906539
Чтобы умело камеру юзать и страничку из веба подтягивать.
780 1906592
>>906517
Примерно как писать компилятор на PHP.
781 1906595
>>906592
>>906517
вроде ведь есть у qt поддержка android
782 1906601
>>906541 (Del)
это конечно можно написать на плюсах, для гуя есть Qt, но зачем? Если ты кроме плюсов больше ничего не знаешь и тебе лень учить, то почему бы и нет, дерзай.
783 1906658
>>906517
Это вообще не костыльно, а считай тру вэй.
784 1906660
>>906616 (Del)
А, так сейчас просто заворачивают сайт в приложение и так отдают пользователю.
785 1906754
>>906654 (Del)
Каких, например? С classpath в андроиде ебаться не нужно, всё делается само. Дженерики в джаве бессмысленны и беспощадны, их лучше избегать. Остальное довольно логично, достаточно понимать, что все указатели как shared_ptr, только ещё умнее. Изучил одну джаву по стековерфлоу, когда надо было сделать приложение.
786 1906768
>>906517
я на Qt+Qml писал небольшую хуйню, работало без проблем
787 1906773
>>906754

>Изучил одну джаву


А вторую не осилил, лошок?
788 1906915
ку, пчелы. ОЧЕНЬ нужна помощь с OpenGL, проблема с шейдерами. откликнитесь пожалуйста, кто может помочь
да, я лох и не умею гуглить
789 1906917
>>906915
Блядь чел, просто запости вопрос, а не еби голову
790 1906918
>>906915
>>906917
вопрос состоит больше, чем из одного предложения

и надо смотреть сурсы
792 1906922
>>906918
напиши НЕСКОЛЬКО предложений и запости код на каком-нить пастебине.

Правда хуй ты получишь ответ, если твой вопрос сложнее тривиального
793 1907098
>>906754

>ещё умнее


Ага, особенно когда сборщик мусора в самых подходящий момент начинает активно чистить за тобой говно, лол.
RAII > сборщик мусора.
794 1907160
>>907098
Вот это уже действительно pitfall. Вроде бы как-то вручную его можно контролировать, когда вызывать, когда нет, моё приложение не требовало высокой производительности.
795 1907172
>>907098
Ну если говнокодить и не понимать как работает GC, то конечно будет пиздец.
RAII ещё неплох в расте, но в крестах это та ещё залупа, которая лишь немного снижает шанс прострелить себе ноги.
796 1907368
Работал кто с qt? Как там работа с сессиями устроена? Например по апишке авторизуюсь в каком-нибудь сервисе и через 2 дня запускаю программу снова, как она сохраняется? есть какой-нибудь менеджер нетаорк сессий?
797 1907462
Ай нид ёр хелп. Делаю первый проект - имитацию что ли банка. Получается всё кроме месяца который генерится как чар. Почему так?
image.png3 Кб, 422x59
798 1907463
>>907462
Не влезает
799 1907472
>>907463
uint8_t это unsigned char, и печатается как чар. Смени его на uint16_t как самый простой фикс
800 1907477
>>907472
Менял, всё не то.
801 1907482
>>907462
Разве в реальных проектах пишут постоянно intxx_t? Есть же стандартный (или базовый) int, к которому всё кастится по умолчанию, не?
802 1907486
>>907482
Этого не скажу, я только 5 дней как Страуструпа дочитал. Мне просто кажется так экономнее, вот и делаю так.
803 1907487
Как правильно ответить на вопрос "Что такое итераторы"? Это объект, тип, структура данных, возможность - как начать предложение вообще? В моём понимании это вещь
804 1907489
>>907487
вещь, которая позволяет итерироваться (получать доступ к его элементам) по контейнерам.

фикс
805 1907491
>>907487
Всё объект, а что не объект - тоже объект (с)
image.png1 Кб, 256x20
806 1907492
>>907462
Ловушка Страуструпера.
807 1907498
>>907486

> я только 5 дней как Страуструпа дочитал


И сколько это времени заняло в общем?
image.png32 Кб, 656x269
808 1907499
>>907492
Ладно-ладно, переписал. Но сипипи всё равно по.
809 1907503
>>907499
Вот тут смайл из консоли, код которого 02 www.theasciicode.com.ar/ascii-control-characters/start-of-text-ascii-code-2.html
У тебя int кастится в char при выводе, попробуй перед выводом преобразовать в строку через to_string.
810 1907510
>>907499
И пересмотри функцию Get для месяца, там явно не то что нужно написано.
811 1907519
>>907503
>>907510
Короче я грузанул оператор и всё получилось.
812 1907546
>>907477
А сигнатуру GetMonthExpr поменял? Чтобы оно тоже возвращало uint16_t?
813 1907547
>>907487
Это концепт
814 1907562
>>907546
Я просто всё под инты переписал пока. Потом в эту тему углублюсь чтобы понять нужны эти тшки-кастраты или нет.
815 1907567
>>907486
Бамп этому вопросу >>907498
Всерьёз интересно за сколько Страуструпа всего осиливают, так как я, как и многие, только частями его читал.
image.png2 Кб, 546x27
816 1907575
>>907498
>>907567
Ну в общем-то так. Но я до этого 2 месяца потратил на Ритчи по Си (просто слоупочил, в целом всё было легко). Так что чуть ли не до ООП всё скипал.
817 1907626
>>907487
сущность, предоставляющая интерфейс для обхода элементов контейнера
818 1907857
>>907482
Ага
Особо ленивые пишут using u16 = uint16_t и так далее
819 1907897
анончики, перекат с шарпа в кресты сулит что-то хорошее?) что нужно знать для классического крепкого мидла?
820 1907923
>>907897

> сулит что-то хорошее?


Да, на одну шарпомакаку станет меньше.

> что нужно знать для классического крепкого мидла?


Примерно как шарпосеньор.
821 1907946
>>907897
если перекатываться - то лучше в вебговно
822 1908004
>>907498
пол книги за джве недели, при этом скипнул фултик и графику. Насколько я понел фултик с апдейтами сменил апи а этот лысый страус даже не указал какой версией пользовался при написании книги. Очень выбешивает его стиль изложения, много воды и такого когда тебе вываливают всякие плюхи с оговоркой ну это, мол, хуйня потом будет в следующих главах, но без понимания этих плюх ты не поймешь о чем текущая глава. Забей в хуюгл ravesli, пчел локализировал какой то забугорный курс все по полочкам и без воды. Читаю сначала его статьи и только потом читаю о том же у трупострауса так как сходу ну никак мне он не заходит, хуевый писака как по мне.
Алсо, вопрос:
Есть какой-то коммон гайдлан по стилю кода или каждая контора по своему ебашит. Читаю разные источники и часто вижу:
int x;
int
x;

void foo(int& x) {}

void foo(int &x){}
823 1908005
>>908004
лол указатели макаба пожрала
824 1908010
>>908005
int⚹ x;
int ⚹x;

void foo(int& x) {}

void foo(int &x) {}
825 1908039
вижу ночью только я тут один сижу, лол.
Алсо, вопрос:
я так понял override в виртуальных функциях чисто самому не проебаться a la assert и сути кода не меняет.
Screenshot2021-01-12-08-24-02-392cn.wps.xiaomi.abroad.lite.jpg599 Кб, 1080x2340
826 1908053
>>907482

>Есть же стандартный (или базовый) int, к которому всё кастится по умолчанию, не?


Нет, это ваще от процессора зависит.
827 1908128
>>907482
Везде, где работал (аж в трёх местах), использовались только int32_t (без std::, естественно) или алиасы типа i32, даже в обычном коде. Правда, везде было серьёзное отношение к бинарной совместимости и/или передаче данных через всякие протоколы, где точный размер каждого поля офигеть как важен. Тот же long, например, в некоторых 32-х битных компиляторах имеет размер 4 байта, а на 64-х битных - 8 байт
828 1908134
>>908004

>пол книги за джве недели


Рофлишь что ли? Или ты скипал все упражнения и делал только задания (drill в англ версии)? Все-таки у него есть очень непростые упражнения, с которыми я долго ебался. Ну с фултиком тоже я поебся, но мне удалось справиться. Прорешал почти все, кроме некоторых упражнений. Ушло где-то полгода.
829 1908190
>>908039
все именно так
830 1908636
Почему merge sort лучше сортировки подсчетом, если у подсчета линейная сложнсть, а у слияние n logn?
831 1908656
>>908636
Допустим у тебя массив {4, 1, 1024}, который занимает 12 байт. Под него придётся создать вспомогательный массив размером в 4кб.
Сортировка слиянием дополнительной памяти не просит.
832 1908748
>>908636
Потому что сортировать обычные целые числа нужно только на лабах.
833 1908858
>>908636
потому-что отсортируй массив uint64_t подсчетом
834 1908882
Есть один класс с конструктором в котором передаются параметры. Если его объявить в начале кода после include то он "конструктор" будет стартовать раньше срока, если где-то в коде то тогда видимость его будет в одной только функции. Как лучше сделать?
835 1908912
>>908882
В hpp декларируешь, в cpp определяешь. В чём проблема?
836 1908915
>>908882
Че? Покажи код, ничего не понятно. Что еще за стартование конструктора раньше срока?
837 1908964
>>908915
Он видимо про глобальный объект говорит, когда конструктор вызывается до main().
838 1909176
Есть массив из 36 элементов. Нужно получить за секунду всевозможные суммы, которые могут получиться из элементов данного массива. Как это быстро сделать? Простой перебор не подходит. 2^36 это 68 719 476 736.А плюсы примерно 10^9 считают.
839 1909184
>>909176
Толсто
840 1909188
841 1909191
>>909184
Что толстого?
842 1909193
>>909188
C++ компилятор для кваки? Зачем это мне?
843 1909201
>>909176
Никак. Результат даже в ОЗУ не влезет.
844 1909205
>>909176
Покажи код какой есть.
845 1909207
>>909205
Я сначала думаю, потом пишу. Короче пришол к выводу, что задачу можно решить по другому. До свидания
846 1909208
>>909205
Вангую 36 вложенных форов.
847 1909210
>>909207
Ну естественно, что ты нихуя не можешь себя выдавить, я же тебя на протяжении пяти лет в череп ебал без усталости, в частности в уши. Раздолбал все в твоей смешной байтоёбской башке до неузнаваемости. Забавно осознавать, что ты еще способен функционировать как живой организм, тупо калобактерия, пародия на человека разумного, хотя с какой стати парашная прыщеблядская грязь стала походить на человека, я хуею блять, нахуй ты такой говнопидор живешь?
848 1909212
>>909207

> пришол


Гнида залётная, опять стекломоя уебал что аж язык заплетается?
849 1909215
>>909210
почему /asylum/ не открывается (((
850 1909217
>>909215
Привет не знаю может ты по кнопкам не попадаешь))))
xDDDD
как так блин!)))
851 1909230
>>909217
Ну вот(((
852 1909340
Суп плюсач. Winapi. нужно окрасить кнопку битмапой. Что я сделал не так?кроме запуска визуалки
https://pastebin.com/TfLSvjXf
чек комент. строки 31-40
image.png39 Кб, 724x188
853 1909374
>>888626 (OP)
я сейчас начал читать книгу по 17 стандарту, Nicolai M. Josuttis - C++17 The Complete Guide, и я не понимаю эту строчку, которая с assert начинается. Я знаю, что это не из 17 стандарта слово, но к сожалению не понимаю, что на этой строке написано. Объясните пожалуйста, что это зн>>888626 (OP)
ачит.
854 1909401
>>909374
Судя по всему, он берет структуру MyStruct и раскладывает ее при помощи structured bindings на оба ее поля.

И потом доказывает вот таким ебанутым образом, что layout на стэке такой же, как бы и была просто структура.
855 1909429
>>909401
я понимаю, что тут про structured bindings. Мне не ясно, что происходит на строчке, где написано assert.
856 1909460
>>909340
Стал писать на винапи руками. Есть же MFC или WTL
857 1909478
>>909176

>Простой перебор не подходит


А как ещё ты хотел? Тебе нужны ВСЕ суммы - считай ВСЕ суммы. Если, конечно, не дана дополнительная информация про массив (например в нём много элементов одинаковые, из-за чего многие перестановки эквивалентны).

>за секунду


Не, не выйдет. Я набросал быстро алгоритм на AVX - получил чуть меньше пяти минут рантайма (хотя я в SIMD мало что понимаю и сильно тупил при написании). Ну, скажем, у тебя последний райзен и ты распараллелишь на 24 потока - 13 секунд.

И это без какого-либо I/O, которое тебе понадобится и которое к тому же будет сильно тебя тормозить. Посчитаем на коленке: общий объём 2^36 чисел по 4 байта - 256 гигабайт. Throughput 256gb/s - тебе уже кластер настоящий нужен.
858 1909492
859 1909507
>>909478

>Throughput 256gb/s - тебе уже кластер настоящий нужен.


Я магмой на simd шифровал 800 mb/s на одно ядро.
Уж точно без шифрования можно больше выжать.

^^ но пока я это писал, я уже передумал
Снимок экрана от 2021-01-13 23-17-46.png7 Кб, 382x71
860 1909510
Поправьте нуба если не прав:
оба указателя абсолютно одинаковы за исключением адресов
оба позволяют получить a[n] (любой вплоть до sigsegv)
оба позволяют ⚹(a+n) (любой вплоть до sigsegv)
второй просто гарантирует зарезервировать место в стеке от себя до sizeof(тип)⚹количество элементов, последовательно один за одним.
под капотом оба одинаковы
мои догадки ковырянием
861 1909511
>>909510

>место в стеке


в куче я имел ввиду
862 1909518
>>909510
хотя есть догадка все таки что они разные под капотом, так как второй может в sizeof а первый нет, а при передаче в функцию я так понимаю второй конвертируется в первый и уже не может в sizeof
863 1909521
>>909518
тоесть дает размер не массива а только паервого елемента
864 1909527
>>909510
В первом случае аллоцируется память, достаточная для размещения одного int, который затем инициализируется значением 1488

Второе — невалидный код
image.png25 Кб, 613x531
865 1909528
>>909510
>>909518
>>909521
Всё хуйня.
866 1909532
>>909527

>Второе — невалидный код


таки да, с указание размера заработало, а вот в книге трупа
>>909528
это я понел спасибо, что не лень рисоват просто хотел узнать имеют ли различия именно сами указатели как объекты в своем поведении и реализации.
867 1909534
>>909510
Вроде как все правильно. Но я полу-нуб, завсегдатаи треда могут поправить.

>>909518
>>909521
Че? sizeof a и b должны быть равны.
868 1909537
>>909532
Теперь так:

В первом случае аллоцируется память, достаточная для размещения одного int, который затем инициализируется значением 1488

Во втором случае вместо operator new вызывается operator new[], аргументами вызова являются размер одного объекта и количество объектов, таким образов аллоцируется память, достаточная для размещения 4 int, то есть 4 -умножить- sizeof(int)
869 1909538
>>909532
Ебать, там реально написано "указатели на объекты". Хорошо что я сначала в С вкатывался. Если бы начал сразу с крестов, да еще с книг страуса, охуел бы заживо.
870 1909539
>>909534
a и b это указатели. размер у них одинаковый.
если бы было int b[] {1,4,8,8} то размер был бы разный.
871 1909541
>>909537
thx
>>909534

>Че? sizeof a и b должны быть равны.


так и есть я перепутал что хотелвот тут

>4


>16


хотя b вроде как и есть указатель на b[0] и b знает свой размер а при передаче в функцию уже не знает сложнаа, кек
Снимок экрана от 2021-01-13 23-52-53.png17 Кб, 452x177
872 1909543
873 1909545
>>909541

>b знает свой размер а при передаче в функцию уже не знает сложнаа, кек


Наследие C, array to pointer decay при первом чихе.
874 1909548
Всем лучи добра за терпение к нубству :3
875 1909549
>>909543
Тут сравнение не того, чего надо.

sizeof(звезда а) это sizeof(int).

sizeof(b) это sizeof(int[4]), так decay ещё не произошёл.
876 1909553
Такое дело. Я только начал учить плюсы (и программирование вообще) и для закрепления решил написать простенькую программу, которая выводит все нечётные числа до заданного n.
Собственно накатал пик1, где столкнулся с проблемой, что выводится следующее число, после заданного.
Покопался в гугле, нашёл решение на пик2. Работает идеально, но я так и не понял чем оно принципиально отличается от моего и где была ошибка. Условия одинаковы, значения переменных тоже.
В чем я не прав?
877 1909554
>>909507
Ну не знаю. По идее у моих двух плашек DDR4 с частотой 3600 мегагерц предельный throughput ~110 гигабайт в секунду. Нужно что-то в два раза быстрее. А уж если на диск писать ещё хуже будет.
878 1909555
>>909549
доперло сейчас что int != int[4] и это разные типы
879 1909560
>>909553
Пик 1, сравнение, инкремент, вывод
Пик 2, сравнение, вывод, инкремент
880 1909566
>>909560
т.е цикл while сначала выполняет инструкции и только потом проверяет условия, а for выполняет после проверки?
881 1909567
>>909566
В первом примере достаточно поменять местами 13 и 14 строку. И всё поймёшь.
882 1909569
>>909567
спасибо
883 1909570
>>909566
Цикл for это:
Проверка
Тело цикла
Инкремент

Цикл while это:
Проверка
Тело цикла

А за инкремент ответственен ты сам. И он у тебя не там, где надо. По идее должен быть после вывода.
884 1909572
>>909570
мимо нуб, я в цикле for пробовал пре- и постфикс инкремент оба работают вроде однохуйственно, значит в проверке идет обращениее к счетчику по адресу а не по значению после выполнения инкремент выражения
885 1909719
>>909572
For на первой итерации: инициализация, условие, тело
For дальше: инкремент, условие, тело.
Как видишь, инкремент всегда идёт первым вне зависимости от пост/пре записи. (Ты вообще можешь что хочешь там написать, for по барабану)
886 1909937
Антон, инициализирую массив шортов, надо все элементы кроме второго чтоб были нули.

short cache [some_n] = {0, 1};

немного потестировал это и так работает, но всегда ли это будет так, или мне просто 100 раз повезло, что на стеке были нули?
887 1909939
>>909937
фиксну, что some_n это не два, а большое число.
888 1909948
как передать референс массива в функцию, так чтоб не прописывать в сигнатуре длинну массива?
889 1909976
>>909937

> но всегда ли это будет так


Да
890 1909979
>>909948
Прописывание длины массив в сигнатуре не поможет, для компилятора это равноценно указателю, это работает только как хинт программисту.

Есть трюк через template type reference для массивов
В общем случае — никак
Используй стандартный контейнер
891 1910053
>>909979
ну хз, я короче прописал по хардкору, ублюдочно, но вроде работает.

...
const uint LIMIT = 10'000;
short cache [LIMIT] = {0, 1};
bool check(uint n, short (& cache)[LIMIT] ){
...
}
892 1910076
>>909948
std::span
893 1910113
Тупой нуб опять выходит на связь со своими циклами. Имеется следующий код, который должен выводить ошибку, если введено значение 0 и меньше. Однако, по какой-то причине, ошибка выводится лишь при значениях 0,-1,-2. Все остальные молча закрываются. В чём я опять туплю?
(Есть подозрение, что проблема в компиляторе, ибо на onlinegdb все работает. Это возможно?)
894 1910119
>>910113
Такой код со обычным массивом по идее не легитимен и вообще не должен компилится. Если нужен массив с динамическим размером то используй new int[n + 1];
895 1910138
>>910113
Сам понял. Надо было объявление массива перенести в тело if. Совсем дурак.
896 1910150
>>909429
Работает с переменной u как если бы она была структурой, берёт адрес её поля, и он совпадает с адресом переменной в правой части условия. Переменные что в структуре одна за другой, что при структурном binding, и адреса совпадают. Адрес первой переменной структуры совпадает с адресом самой структуры (вроде бы у этого правила нет исключений)
897 1910161
>>910150

>вроде бы у этого правила нет исключений


Наследование, но это скорее не исключение, а дополнение.
898 1910163
>>910119

>по идее не легитимен и вообще не должен компилится


Да.
Расширение компилятора. Опасное.
899 1910317
Поясните за cond_var. Допустим, у меня есть f(), g(), они крутятся в отдельном потоке, вида
for (;;) { f(); g(); sleep(2s); }
Но ведь это хуйня, не так ли?
900 1910325
>>910317
Зависит от ситуации.
Если есть очередь, которую надо периодически проверять, то лучше спать на конд-варе, пока тот, кто пополняет в очередь, не ткнет конд-вар.
projectlist.png21 Кб, 601x611
901 1910327
Как вы практиковались до своей первой работы? Пикрилейтед или что-то посерьёзнее?
902 1910329
>>910327
Никак, разве что крестики-нолики сделал по udp
903 1910336
>>910329
А что писал в основном? Только упражнения из книг? А вообще можешь про свой путь рассказать немного, если не сложно? В треде такое чувство, что все тут родились сразу сеньёрами с умением писать новый хромиум с нуля и как-то даже стыдно, что вроде что-то читал, а в итоге особо ничего не писал даже, даже задачки из книг не все делал.
904 1910518
>>910327
Я никак не практиковался. Просто пришёл, попиздел за алгоритмы и матан и получил работу июнем. Плюсов не знал, страуса не читал.
905 1910593
Написал свою либу на плюсах, теперь хочу прикрутить гуевину не особо сложую, че в какую сторону смотреть? qt не предлагать, думаю насчет wxwidgets, но там видимо запарно как-то из тех гуидов, что я прочитал. Еще в планах какую-нибудь игру даунскую запилить, но это не точно. Расскажете че как?
906 1910595
907 1910657
>>910593
Попробуй Qt.
908 1910659
>>910593
PyQt. Вызывай плюсовый код через биндинги.
Или сделай обвязку на C++/CLI и гуй на шарпах с WPF, если ты вендузятник.
909 1910661
>>910593
ImGUI/Nuklear
910 1910675
>>910593
Как насчёт кути?
911 1910677
>>910593
Не знаю советовали тебе уже или нет, но ты попробовал qt?
912 1910680
>>910661
Хипстерская хуйня, React от мира C++.
913 1910681
Да делал я гуихи с qt, хочу чего-нибудь другого.

>>910661
Хм а вот это мне нравится вот это да, попробую. А ты сам писал что-то? Дашь глянуть?
914 1910689
>>910681

>Дашь глянуть?


Тебе ещё и глянуть? Бесстыдник! Не писал, это из мира всяких игроделов и рядом
915 1910692
>>910689
А по wxwidgets знаешь че нить? Это старый кал дидов или все таки норм тема для пацанов и стоит разобраться?
916 1910704
>>910681

>Да делал я гуихи с qt


На qml?
917 1910708
>>910704
Ну дя
918 1910720
>>910692

> Это старый кал дидов

919 1910925
>>910708
И тебе хочется лезть обратно в виджеты?
920 1910947
>>910925
Так я туда и не лазил, только на кмл писал интерфейсы, хотел что-то другое я ж сказал уже. А тебе есть что поведать про виджеты?
921 1910949
А что, антуаны, кьютовские виджеты не актуальны в 2021? Даже для десктопа? То есть их даже рассматривать нет смысла?

мимо кьютовиджетошлепатель
922 1910955
>>910949
Есть мнение, что Qt как таковой неактуален, раз макакам завезли десктопный жопаскрипт в виде электрона.
923 1910972
>>910947
Они тебя разочарует
>>910955
Окстисть, современный кютовский гуи и есть наполовину жопаскрипт.
924 1911117
аноны, всем привет
Я занимаюсь в мелком стартапе обработкой облаков точек и классическим цв. Но на питоне, тк эта задача лежит на одном мне, а кресты я знаю на уровне уника
Вопрос такой: если я решу свалить в похожую область (обработка данных с лидаров и прочее робототехническое говно), то что важнее там: знание алгоритмов и методов или опыт продакт кода на плюсах? просто первое у меня есть, а второго нет.
925 1911138
>>911117
Ну плюсы хоть немного подтяни, и все будет ок
926 1911152
>>910680
Вообще ни разу на реакт не похоже ведь
927 1911302
>>911117
Во многих местах нужны именно алгоритмисты, так что тебе достаточно базовые конструкции пару дней поизучать (ссылки, указатели, массивы, работа с памятью). Намного реже нужно дрочилово с хардварной оптимизацией - там тебе вообще без шансов.
928 1911338
>>911302
а чтобы туда попасть откуда нужно начать?
Я НЕ ТОТ КТО С ПИТОНОМ, только в этом году закончил вуз
929 1911340
уб врывается итотэ, что по шаблонам, пацаны. Стоит использовать или избегать всячески?
930 1911341
>>911340
*нуб
931 1911349
>>911340
Использовать конечно
932 1911371
>>911338
Начинать надо было до окончания вуза. Теперь только питон или жопаскрипт.
933 1911452
>>911371
ненавижу ебаных радикалов
ко ко ко, если с 5-ти лет хайлоад не ебашишь, значит нечего и начинать
скажи мне, человек, что такого можно сделать, учась в вузе (а значит процентов 60 времени отдавать учебе, если не шарага), чего нельзя сделать после него? Причем через ПОЛГОДА после него? Типа в вузе у тебя такой пиздец пик интелектуальных способностей что все языки за день учишь, а через день становишься дегрод-дегродом?
Короче не неси пургу, мань
934 1911454
>>911302

> с хардварной оптимизацией - там тебе вообще без шансов.


да я и не рвусь, тк я не программист, а робототехник. У нас в этом плане все немного по-другому устроено и за 0.004 секунды скорости работы программы не боремся (по крайней мере пока)
935 1911463
>>911452

> что такого можно сделать, учась в вузе (а значит процентов 60 времени отдавать учебе, если не шарага), чего нельзя сделать после него?


Сидя у мамки на шее тратить то самое свободное время на самообучение и на выходе из своей шараги (а может даже на последних курсах) идти на джуна с нужным тебе стеком. Если на бюджете и не ебланишь, то даже стипендию будешь получать. А 60% времени на айти-специальность ты тратить никогда не будешь, если варишься в этой теме постоянно и что-то дома помимо этого делаешь сам. Если же ты чисто 4 года пивас пил и однокурсниц ебал, забыв при этом всю программу, то >ПОЛГОДА тебе не хватит, мань.

мимо другой анон
936 1911514
>>911452

>что такого можно сделать, учась в вузе (а значит процентов 60 времени отдавать учебе, если не шарага), чего нельзя сделать после него


В вузе легче всего заводить знакомства. Если не совсем тухлая шарага была, то куча людей с потока устроится по разным направлениям в разных компания, и знать их - только плюс. Networking, ёпт.
937 1911705
>>911463
ну вот он написал, что если не заниматься именно, мать его, с++ и, более того, оптимизацей, то туда хуй попадешь
лично мое мнение, что если человек в унике занимался тем же питоном, тем же си, но не оптимизацией на крестах, то в область оптимизации ему все равно НЕ закрыта дорога
поэтому я так и заагрился на анона, потому что его слова - чистой воды фашизм
938 1911786
>>911705
Я вообще только мипс-ассемблер ковырял и на плюсах какие-то кривые хуки для эмуляторов писал, но это даже плюсами нельзя назвать, какие-то студентопопытки полу-сишные скорее. В шараге в это время просто лабы сдавал и всё

А уже потом попав на работу начал развиваться, и в области оптимизации, и в криптографии, потом начал ходить на плюсовые собеседования, подтянул и плюсы и так далее.
939 1911914
Здравствуйте, я Питон.
Прохожу тутор по крестам в УЕЧ. Есть массив из стуктур. Задача - поменять поле в структуре. Если я просто заношу структуру в переменную, в крестах это копия, а в других языках это ссылка. А я хочу чтобы у меня была ссылка и я просто ссылку редактировал, ну как в норм языках хочу.
Как я хочу.
https://pastebin.com/qC2dXL2x
Как сделано в туторе.
https://pastebin.com/ML0qMBxN
940 1911917
Как посчитать корень числа, которое не влезает в unsigned long long? Интересуют не библиотеки, а именно алгоритм
941 1911922
>>911914
Используй референс - &
942 1911924
>>911922
А есть статья для чайников про это? Я нашел что-то по теме, но там много букв. https://www.learncpp.com/cpp-tutorial/returning-values-by-value-reference-and-address/
И я чет не могу найти мой случай.
943 1911954
>>911924
FQuestInfo& Quest = QuestList[QuestIndex];
945 1911978
>>911960
ну у микрософта все правильно https://docs.microsoft.com/en-us/cpp/cpp/data-type-ranges?view=msvc-160
946 1911987
>>911960
Это же вообще не стандартная хуйня, не? IEEE 754 вообще ничего про него не говорит и соответственно на разных компиляторах разные варианты
947 1911988
>>911954
А если идти дальше вглубь по структуре.
То Quest.Progress похуй ссылка или нет, потому что примитив?
А если не примитив, то надо опять ссылку делать.
Я правильно понял?
948 1912019
>>911987
Более того, стандарт C++ не гарантирует IEEE-754.
949 1912022
Пару дней назад закончил этого вашего Страуструпа и задачи к нему, после чего написал змейку с трип-эффектами на SFML, теперь я джун? Чего ещё не хватает? Собираюсь ещё Мейерса глянуть и Александреску, по стандарту пока просто натыкаюсь на всякие вещи интересные по пути гугления. А дальше что? В плане либ вообще 0 идей что писать, разве что есть есть идея запилить рогалик на SFML и шейдеры туда впилить как-то, чтобы красиво было, сверкало и пердело всё. Где грань между "долбоёб с лабами" и джуном? По вакансиям не понять, там пишут "уверенное знание С++;", сложно.
950 1912029
>>912022
Прочитай майерса (александреску не нужен), напиши еще какой-нибудь беспонтовый сетевой чат на Qt, и потом смело иди на собесы
951 1912036
>>911988
Не, по-моему, ты что-то недопонял. Тут нет разницы, примитив или нет.
Вглубь можно сколько угодно ходить, например
Quest.Progress.Level = 5;
Всё дело в том, как объявлен сам Quest. Если это ссылка, то ты будешь менять потроха того элемента массива, на который ссылаешься. Если самостоятельный объект, то, соответственно, потроха этого объекта.
952 1912039
>>911978
>>911987
А очень хотелось переменную в 10 или 16 байт. Прям очень
953 1912042
>>912029
Спасибо, попробую не обосраться на собесе.
954 1912052
>>912036
Ясно, спасибо.
955 1912053
Почему нельзя просто создать переменную размером сколько я хочу байт?
956 1912054
>>912053
char tvoya_peremennaya[skolko_hochesh_bayt]

но зачем?
957 1912055
>>912054
Но мне нужно с ней действия совершать. Например +-*/. Еще и корень хочу
959 1912061
>>912057
Спасибо
960 1912067
>>912055
Пиши свой бигнум
961 1912070
>>912067
Ну со сложением, вычитанием и умножением все понятно. Деление чуть сложнее. А вот корни пока хз как вычислять
962 1912105
>>912070
Можешь для начала простейшие итерационные методы попробовать.
Screenshot1.png17 Кб, 892x235
963 1912107
Всем привет, уже второй день бьюсь над проблемой.
В VS создаю проект из кода, пытаюсь запустить, он выдает это. Причем все ошибки в external dependencies, которые VS создал при создании проекта. Удалить их не могу. В свойствах проекта добавил C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\include в Additional Include Directories, но не помогло.
Можете подсказать? Спасибо.
964 1912127
>>912107
Что-то с редактором, уже и простой hello world не запускает. Хотя вчера работал.
965 1912135
>>912055
Не пиши свой бигнум, возьми готовую либу для длинной арифметики, их 100500 уже написали.
966 1912137
>>912135
Мне на олимпиаде может понадобиться. Нужно уметь самому писать
967 1912169
>>888626 (OP)
посоветуйте книжку по IDA Pro
968 1912178
Сап анон, боюсь, что сейчас влечу с платиной, но не первый раз в лучшем треде на всей доске, и так ни разу и не довелось увидеть подобный вопрос.
Так и все же, у меня вопрос, есть тут люди, которые могут предложить волк тру по написанию дров под окна, неплохо было бы ещё и за пингвина затереть, но я до него ещё не добрался и сейчас грызу Комисарову, посматриваю всякие презенташки шинды на тытрубе, но всё это не совсем то, что хотелось бы.
Презенташки направлены скорее на сеньоров помидоров, у которых возникают совершенно другие вопросы, Комисарова вроде не плохо, но книга объективно стара, мала, да и даже на тот момент времени она неоднократно кашляла, мол, книжка пиздец ужатая, в любом случае беги читай MSDN и иже с ним, я и это потрогал, но честно, виндовская вики скорее больше напоминает набор фактов(что от неё и требуется по сути, и тут никаких вопросов), но для того, что бы эволвнуть в адеквата не только могущего, но ещё и понимающего что к чему, хотелось бы заиметь какой-то список сурсов, которые мне в этом помогут
//Английского не боюсь, спокойно смотрю/читаю в ориге
// //Заранеее спасибо, с меня как обычно
969 1912179
>>912127
Пробовал смотреть в редактор конфигураций ? Мб проект настраиваешь под х64, а ранишь Win32 сборку ?
970 1912181
>>912178
В никсах модуль ядра можно писать прямо с лёту, по пути гугля всё что нужно.
Я так делал.
Под виндой нужно поебаться
971 1912183
>>911705
Норм ты подорвался.
Есть работа с низким порогом входа, где нужен язык и какой-нибудь фреймворк (допустим энтерпрайз на Java). За полгода туда и школьник вкатится.
Есть работа где язык+фрейм1+матан (осилишь матан за полгода без вузика?).
Есть работа где язык+фрейм2+матан+unix+cpu/gpu/fpga (ты написал охуенно быстрые свёртки, преобразования фурье, а железка жалобно тебе моргает и хуй его знает что ей надо и куда в неё тыкать).
972 1912190
Я правильно понял, что идиома RAII состоит в том, что мы всегда выделяя динамически память в конструкторе, в деструкторе должны эту память освобождать? Или же она ещё где-то вне классов может применятся? Это вроде как самая база в плюсах и даже в первых же главах по классам в любой книге обговаривается, но нигде не упоминается само название RAII, из-за чего странности такие в понимании.
973 1912194
>>912190
Речь не только о динамической памяти, а вообще о любых ресурсах, требующих инициализации и деинициализации.
И да, весь смысл именно в том, что в деструкторе происходит освобождение всех ресурсов объекта.
974 1912198
>>912194
смысл в том, что время жизни объекта совпадает с временем владения внешними ресурсами
975 1912200
>>912181
То что придётся поебаться, это честно не новость, т.к. винда, винда никогда не меняется, да и юникс так же, хоть и с другого бока, но в любом случае, сяпки, буду знать, что в ядро можно срать с разбегу не сильно переживая
976 1912230
здеся
тута
тамошний
977 1912232
>>912230
братишка, не стукай
978 1912276
>>912183
братишка, это все понятно
но смотри
1) энтерпрайз - полностью с тобой согласен (к сожалению, там и денег больше всего)
2) ТОЖЕ согласен, но я думаю, что в кресты не лезут люди, которым на проганье похуй и они только пивандрий пили. Думаю худший случай вкатывальщика в плюсы - челик, который в унике только учился - без работы вообще
3) Третий пунк у тебя самый збс. Ты описал уровень минимум мидла. Но мидл это далеко не вкатышь 23 года, особенно в хардварных вещах. Это уже проработавший программистом чел (мб даже перекатывальщик из энтерпрайза - знаю такие случаи), лет 26+, у котого за плечами года 4-5 опыта. Тут уже случайно залетных нет и быть не может
Так что я не понимаю, что мешает человеку-не еблану устроится на вакансию типа 2) джуном после уника БЕЗ практического опыта
979 1912281
>>912183
*тем более, что я именно так и устроился в свое время
980 1912291
>>912179
Переустановил VS, установил SDK по-новой и заработало
Screenshot1.png31 Кб, 956x467
981 1912300
Опять ошибка. Include подключил, виджет есть, консольное Qt приложение создается.
982 1912349
>>912300
А у тебя правильно проект настроен ? Я Qt только через Qt/CLion трогал, с vs не знаю, нужна ли там какая-то настройка, погугли vs+qt, мб у тебя сборка не знает откуда брать qt, Плюс к

Посмотри источник ошибки, это можно сделать через ПКМ, источник, не исключено, что это IntelliSense тебе говна на винтилятор кидает, если так, может забить, если интересно почему, гугли что такое IntelliSense
983 1912355
>>912178
Windows Kernel Programming
Pavel Yosifovich
Для тех, кто вдруг столкнётся с подобным реквестом, просто снова лазал по трубе среди сеньоров помидоров и наткнулся на этого дядю, только только начал читать, но тут он уже собирает дрова в vs, книга как никак 19го года, в любом случае, должно быть получше Комисаровой
984 1912470
>>912355

>по трубе среди сеньоров помидоров


Напиши пожалуйста адреса их каналов.
985 1912479
>>912276

>что мешает человеку-не еблану устроится на вакансию типа 2


Тысячи таких же выпускников не ебланов и нужда. Льготы и стипуху у тебя отобрали, из общаги выгоняют, мамка денег не шлёт, тянка не хочет идти в ресторан "золотые дуги"... Ты копротивляешься пару месяцев и идёшь в тестеры/вёб/энтерпрайз.
986 1912812
>>912178
windows internals был уже прочитан или нет?
image.png151 Кб, 1583x879
987 1912829
988 1912896
>>912479
ты вообще ебанутый, мань?
989 1912900
пацаны, есть ли разница, на каком языке решать задачи на leetcode? там же алгоритмы, по идее, вряд ли это даст дикий буст в плюсах. По идее можно и на питоне пофигачить, не? ошибаюсь?
990 1912914
>>912900
Разница есть
Небольшая
991 1912938
>>912900
Язык всё же важен, можно заодно подтянуть и синтаксис, чтобы потом лучше уметь писать сходу работающий код. Но если думаешь, что знаешь синтаксис крестов вдоль и поперёк, то разницы и правда нет.
992 1912943
>>912896
Пичот что проебался с таймингами на вкат?
993 1913068
нубасик вкатывается again
вот как организовывать заголовочные файлы своих либ
допустим есть сипипишник в нем сам класс с интерфейсом алгоритма, который, допустим, имеет члены классы из этого же файла, наследует базовый класс из этого же файла, итд.
стоит ли в заголовочный файл вписывать объявления всей этой пиздобратии ведь мне при подключении детали реализации не нужны, нужен только сам центральный класс который обеспечит весь функционал, тоесть я могу только его и объявить в хедере а остальное в спп?
994 1913091
>>913068
кажется я догадываюсь, объявление в хэдере этих членов класса и базового класса потребует искать в области видимости хэдера эти же члены класса и базовый класс и я буду вынужден их тоже объявить
995 1913128
>>913091
forward declaration
996 1913175
>>912943
да мне то пох, я с уника работал и успел уже и байтоеблей позаниматься и высокоуровнеными хуйнями
просто ты реально хуйню несешь: я тебе говорю, что человек, нормально учайщийся в унике, но не работающий в это время вполне может устроиться джуном при должном старании, а ты говоришь что ООО ДЕВУШКА НЕ ХОЧЕТ В ЗОЛОТОМ КОЛЬЦЕ СИДЕТЬ МАМКА ДЕНЕГ НЕ ДАЕТ ИДИ В ИНТЕРПРАЙЗ
если у тебя какие-то травмы есть, ты их на других не проецируй а разберись с ними лучше, окда?
и, кстати, что плохого в интерпрайзе?
пользоваться всем нравится, а разрабов оттуда хуесосим, да?
997 1913229
еще вопросик от нубасика, я так понимаю ini конфиги в unix среде моветон и зашквар, что тогда, json?
998 1913233
>>913229
ini конфиги зашквар вообще везде уже давно.

А джсон да, лучший вариант имхо.
999 1913254
>>913229

> моветон и зашквар


Неправильными категориями мыслишь, всё от задач зависит.
1000 1913346
>>912900
А time limit есть?
1001 1913391
>>912900
на том, на котором тебе комфортнее всего. На литкоде ты не научишься новому языку.
1002 1913400
>>913346
вроде есть
1003 1913414
>>913400
Ну я бы тогда делал как на олимпиаде. Первую задачу, где просто ифы или формула, можно на питоне, ибо писать быстрее. А дальше онли плюсы
1004 1913443
>>912812
Нет, спасибо, посмотрю
1005 1913446
>>912470
В основном это просто презентации vs и прочие эвенты, гуглил просто вводя что-то в духе windows driver и что-то там
1006 1913456
Аноны, помогите пожалуйста с написанием прокси-сервера для игры. Много гуглил но так и не смог понять как это работает и что нужно делать. Для передачи или приёма данных игра использует WinAPI функции WSASend / WSARecv. По моей задумке я буду внедрять библиотеку в процесс игры и она будет транслировать трафик на прокси (который будет подниматься из этой же библиотеки ) Как перехватить вызовы WinAPI функций я знаю, нужно лишь написать сам прокси-сервер. Вот что я смог сделать — https://pastebin.com/PskSHDQ4 Что делать дальше я не понимаю. Читать огромную книгу для того чтобы написать прокси сервер в 100 - 200 строк я не хочу. Да и информация до мне крайне сложно доходит. Ещё есть несколько вопросов касательно работы прокси-сервера.. Если я имею доступ к сокетам которые передаются в WSASend и WSARecv можно ли будет переадресовывать данные напрямую без перехвата вызова функции connect игрой? Или так нельзя? Помогите пожалуйста. :(
1007 1913457
>>913456
Если что игра использует TCP протокол
1008 1913459
>>912829
chris eagle, эту? мне его ghidrу подсунули
1009 1913465
>>888626 (OP)
как декомпилировать h.gch?
1010 1913468
>>913459
как бы выбор у тебя небольшой
1011 1913473
>>912812
>>913443 Дополняя предыдущее, порядок я так понимаю лучше выбрать Internal -> Kernal, так ? Просто, если я спокойно сожрал первую главу полностью понимаю что и откуда, имеет ли смысл в постижении того, что описано в интернал ?
1012 1913479
>>913473
имеет смысл тупо прочитать internals преодолевая себя и не пытаясь че-то до конца понять с первого раза
потому что информация сложная, но при это это базовые знания, требующиеся для того чтобы писать драйвера
1013 1913492
>>913479
Ну слушай, исходя из того, что я уже понял, драйвера, это просто dll, у которых есть фильтры разбирающие говно которое гоняется от объекта девайса, до объекта драйвера и обратно. То что мне сейчас нужно понять, по моим представлениям, это употребление IRQL, покушать KMDF/UMDF ну и познать прелести новых инструментов разработки всего этого зоопарка
Я в любом случае потрогаю интернов, но просто на данный момент есть сроки по драйверам, и мне надо выкатить хоть что-то, а как следствие, распыляться не охота, хоть и понимаю, что скорее всего выкачу калл говна
image.png21 Кб, 225x225
1014 1913494
Нужно синхронизировать время в двух прогах, работающих на разных компах в одной локальной сети, которые шлют данные в железки и читают ответ 1000 раз в секунду.
В прогах есть таймеры, как поточнее ( <1 мсек) узнать разницу между ними?
Часы компа синхронизировать нельзя, прав админа нет, можно слать любые данные по udp между этими прогами.
Посоветуйте алгоритм или микробиблиотечку
1015 1913510
>>913494
Через NTP никак?
1016 1913543
>>913510
NTP же системные часы меняет, мне надо просто разницу между QueryPerformanceCounter(&counter); у двух компов узнать и оттуда разницу срабатывания датчиков.
Я думал два потока пакетов со временем посылать навстречу и записать время приёма каждого, а потом как-нибудь вычислить, имея 2 массива, может делал кто уже похожее
1017 1913577
>>913175

>я с уника работал и успел...


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

>вполне может устроиться джуном


чекни на hh по россиюшке сколько c++ июней надо (не забудь из поиска убрать web и java). Ты не поверишь, но меньше 200. Зарплаты тоже чекни.

>что плохого в интерпрайзе? пользоваться всем нравится, а разрабов оттуда хуесосим, да?



Энтерпрайз это как сфера ЖКХ. Все им пользуются, ругаются и постоянно вливают туда бабло, потому что хуёво спроектировано или сделано на отъебись (часто умышленно). Если ты откроешь электрощиток в своей хрущёвке, то увидишь там enterprise in a nutshell.
1018 1913613
>>913543

>NTP же системные часы меняет


Не обязательно, ты можешь получат ьнужную тебе разницу (остаешь / спешишь) и использоват ьеё как тебе надо
1019 1913619
>>913543
Сначала по NTP получаешь разницу локального времени (d) и времени NTP сервера для обоих компов. Затем время опроса датчика (t) и дельту передаёшь пакетами между компами. Нужная тебе разница == (t1 + d1) - (t2 + d2).
У нас была задача с кучей железок в разных ебенях и мы их через NTP синхронизировали. Делал ессно не я, так что может я тут хуйню написал.
1020 1913644
>>913577

> С тех пор многое изменилось, дедуль.


мне 24

> Количество хороших вакух упало


ну тут соглы, наверное

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


хуйню спорол. Так можно про все сказать: я знаю радиотехнический стартап, в который ПОСТОЯННО вваливается бабло, а работают там хуево и результат выдают еле-еле как
и в тоже время я сам поработал в крупной конторе, в которой ну все заебись - и к новым технологиями относятся норм, и свободу дают
так что ты мне никак не докажешь, что энтерпрайз разработка говно. Пока у меня прилога тинокфффа работает нормально и охуено
1021 1913667
>>913644
Я веслал на крупной галере и знаю какой там контингент занимается энтерпрайзом (код я тоже видел). Фикс говна и доработка приносят хорошие деньги, потому что у клиента нет выбора (гендир об этом открыто говорил). Что до тинькова или сбера, то они могут содержать свой департамент разработки и ебать за качество. Бизнесы в сфере медицины, логистики, торговли такого позволить себе не могут.
Конторы на плюсах это часто конторы полного цикла (RND+софт+железо+сбыт) и там больше возможностей контроля за происходящим.
1022 1913720
>>913667

>Конторы на плюсах это часто конторы полного цикла (RND+софт+железо+сбыт) и там больше возможностей контроля за происходящим.


Плюсую
1023 1913738
>>913667
зато джава макаки гребут деньги лопатой
а мы - нет
1024 1913959
>>913738
ты - нет
1025 1913990
>>913959
а ты - да?
1026 1913997
поддерживая дискус про интерпрайз выше
аноны, я вот на 2 курсе учуь и выбираю куда развиваться
скажите, действительно ли такая огромная разница между зп-хами плюсовиков и джавистов?
1027 1914017
>>913997
Разницы в зп нет, но работы на джаве найти легче.
1028 1914020
>>913997
Хабр часто публикует статистику по отрасли.
https://habr.com/ru/article/511700/
Весомый отрыв по пайке обычно у июней и мидлов. Потом выравнивается. Материальное благосостояние растёт нелинейно (раньше купил хату - больше сэкономил на аренде, раньше бабло вложил в финансовые инструменты - больший гешефт получил), поэтому даже с++ синьёр находится в позиции догоняющего.
1029 1914035
>>914020
хорошая статистика если ты попал на корабль, один хуй гребцом или капитаном, будешь жить
а сколько за бортом сдохло никто уже не посчитает
1030 1914036
>>914020
финансовые инструменты, уууу, сука
блядина
1031 1914044
>>913997
Энтерпрайэ это жаба, пихон, пхп, шарп, го (бывает легаси на с++, но это лютый пиздец). Заказчики - крупнейшие российские коммерческие конторы и куча европейских заказчиков средней руки на аутсорсе за валюту.
Плюсы - в основном конторы с госучастием и малыми бюджетами. Небольшой островок стабильности - геймдев. Штучные вакансии от топ тир контор типа huawei, nvidia, intel (ну и там яндекс/хуяндекс человек 20 возьмёт).
1032 1914051
>>914036
купи себе доллар, чмоня
1033 1914086
>>914044
звучит как аргумент против плюсов
1034 1914088
>>914035
За почти два года веслания я пережил всех. Я видел как юнги прыгали в пучину за рублём, как заказчик высадил капитана в обосранных штанах на необитаемом острове... Но галера имеет ту особенность, что даже без команды и с пробитым дном она продолжает идти вперёд к релизу... Так и случилось. Мы пришли в порт... втроём... со сломанной мачтой и странным вкусом во рту. Каждый из нас побывал фронтендером, бекендером, девопсом, аналитиком, железячником и продукт овнером. Молча мы ёбнули водки за тех, кого с нами нет и за то, чтобы больше никогда не служить на флоте.
loCu0HrMzTE.jpg225 Кб, 809x1080
1035 1914091
Сап программач, вуз навязывает ненужный мне язык, который никак не связан с моей работой, помогите пж. да, я ленивое чмо

Дана прямая. Она описывается функцией у=2х+7

Если точка лежит ниже прямой, она должна удовлетворять условию у-2х-7<0
Если точка лежит на прямой, она должна удовлетворять условию у-2х-7=0
Если точка лежит выше прямой, она должна удовлетворять условию у-2х-7>0

Напишите программу, которая будет получать на вход координаты точки и определять как эта точка лежит относительно прямой.
На вход:(0;7) (-10;-20) (-4;20)
На выход:на прямойниже прямой выше прямой
1036 1914100
>>914091
кидай телегу
500 рублей через яндекс-деньги
1037 1914117
>>914086
Ну писать игори на плюсах всяк интереснее, чем систему скидок и программу лояльности для магазина пятёрочка. Ещё тырпрайз имеет неебически долгий жизненный цикл и часто подразумевает копание говна 15 летней давности, написанного немецкими дидами (мы как-то у заказчика спросили за тех, кто систему писал и там ответили, что один на пенсии, а второй умер, кек).
1038 1914122
>>914100
ты чё пёс, за такое и шоколадку стыдно просить
1039 1914131
>>914117
я вообще думал, что плюсы только в железе и остались
какая еще система скидок? там джава шарп и питон
1040 1914140
>>914131
так я об этом и говорю, что игры на плюсах, а энтерпрайз говно для ритейла на джаве
Screenshot1.png15 Кб, 512x391
1041 1914154
Visual Studio не может найти файлы в папках, внутри каталога C:\Qt\4.8.6\include. То есть файл QDialog будет находиться в C:\Qt\4.8.6\include\QtGui, но несмотря на то, что в Include Additional Directories стоит C:\Qt\4.8.6\include;%(AdditionalIncludeDirectories), он ее не найдет. Это как-то можно исправить?
1042 1914159
>>914154
#include <QtGui/QDialog>
1043 1914163
>>914159
Спасибо, только там файлов таких куча, автоматизировать никак нельзя?
1044 1914167
>>914163
добавь в Include Additional Directories путь C:\Qt\4.8.6\include\QtGui
1046 1914255
>>914051
мне поесть не на что, уеба
1047 1914256
>>914122
пошел нахуй тогда
1048 1914285
>>914167
Спасибо
1049 1914825
1050 1936043
>>914154
ставь линупс и не ебись с энвайронментом.
Тред утонул или удален.
Это копия, сохраненная 29 апреля 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски