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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
1619061709001.png68 Кб, 1200x1349
C++ тред #128 /cpp/ 2004069 В конец треда | Веб
Вместо шапки:
https://github.com/sosachbot/cppthreadhat/wiki

Ответы на вопросы:
https://en.cppreference.com/w/
https://www.cplusplus.com/reference/

Для указателей: ⚹
Прошлый (1000- постов, вы серьезно?) тред: >>1973041 (OP)
2 2004084
Всем чмоки в этом чятике :)
3 2004099
C++ лучше чем раст.
4 2004135
Плюсы устарели парни катимся в питон...
5 2004173
>>04135
Я уже...
6 2004194
>>04135
C# получше будет, катимся туда
7 2004208
"Я отношусь к среднему классу", — с гордостью говорит человек на Западе, а потом выходит из ветклиники, в которой работает, садится за руль автомобиля и возвращается в свою виллу. На балконе виллы — благоухающие цветы и обеденный столик со стульями. "Я отношусь к среднему классу", — с гордостью говорит врач в России, а потом подходит к подъезду, возле двери которого толпится круг из десятка курильщиков, протискивается между ними, заходит в свой подъезд и нажимает на копчёную, обугленную кнопку, которая изначально была белоснежной, чтобы лифт (картинки 26 и 27) его поднял на 8-й этаж "виллы". На балконе "виллы" — лестница-стремянка, матрац, удочка и старый холодильник.

https://citizen1980.livejournal.com/310.html

А программисты живут так же бедно в России?
15563519899650s.jpg8 Кб, 220x220
sage 8 2004213
>>04208

> "Я отношусь к среднему классу", — с гордостью говорит человек на Западе, а потом выходит из ветклиники, в которой работает, садится за руль автомобиля и возвращается в свою виллу. На балконе виллы — благоухающие цветы и обеденный столик со стульями. "Я отношусь к среднему классу", — с гордостью говорит врач в России, а потом подходит к подъезду, возле двери которого толпится круг из десятка курильщиков, протискивается между ними, заходит в свой подъезд и нажимает на копчёную, обугленную кнопку, которая изначально была белоснежной, чтобы лифт (картинки 26 и 27) его поднял на 8-й этаж "виллы". На балконе "виллы" — лестница-стремянка, матрац, удочка и старый холодильник.



> https://citizen1980.livejournal.com/310.html



> А программисты живут так же бедно в России?

9 2004260
w*men
disco elysium Harry shaved.png10,9 Мб, 2214x3072
10 2004282
>>04260
Wömen
11 2004435
Уважаемые плюсогоспода, помогите неучу. Учу эти ваши С++, сейчас хочу в учебных целях написать шаблонную функцию,которая может принимать и вектор и мап. Сам не придумал, нашел в интернете такую конструкцию :
template<class T, class... Rest, template <class, class...> class Container>
void foo(Container<T, Rest...>& v) {}
Оно работает, я не понимаю как, объясните плиз.
12 2004475
>>04069 (OP)
есть 2 треда которые вызывают в одно время одну и ту же
1. static функцию класса
2. обычную функцию класса
б. разные функции одного инстанса
3. глобальную функцию
это thread safe или не thread safe
13 2004517
>>04435
Это переусложненный шаблон, под которого все таки подходят стл контейнеры, ... там на самом деле пустой в обоих случаях.
14 2004526
>>04517
А может и нет, у мапа же ещё сравнение есть в параметрах. Да, я наврал.
15 2004533
>>04517

>... там на самом деле пустой в обоих случаях


В векторе есть параметр-аллокатор, а в мапе вообще их дофига.
16 2004545
>>04435
Вообще объединить в одной функции такой функционал трудно, потому что итератор вектора возвращает само значение, а мапы - пару ключ-значение. Поэтому я советую сделать обычной перегрузкой. Ну или брать два итератора как стандартные алгоритмы и как-то с помощью if constexpr или SFINAE разруливать, но это уже если хочешь позадалбываться.

>Оно работает, я не понимаю как


Посмотри на определение мапы:
template<class Key, class T, class Compare = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T>>> class map;
Скажем, ты передаёшь в функцию x = std::map<MyKey, MyValue, MyComparator, MyAllocator>; и делаешь foo(x);
Далее компилятор автоматически определяет шаблонные аргументы (https://en.cppreference.com/w/cpp/language/template_argument_deduction) и понимает, что T=MyKey, Rest={MyValue, MyComparator, MyAllocator}, Container=std::map<T, Rest...>. Шаблон функции инстанциируется и получается обычная функция void foo(std::map<MyKey, MyValue, MyComparator, MyAllocator>);
hqdefault (3).jpg10 Кб, 480x360
17 2004566
Планирую перекатываться на другую работу (тоже на C++), а то на текущей начальник мудак. У меня два с хуем года опыта работы. Какую зарплату требовать можно?
6d.jpg16 Кб, 360x235
18 2004576
>>04566
Забыл добавить. Дело происходит в Хохляндии.
19 2004586
>>04069 (OP)
Как вставить элемент в конец линейного списка?
Код >>2004527 →
20 2004602
>>04566
А сколько надо ?))
21 2004616
>>04566
Берёшь свою зп и добавляешь 15%. Про начальника не говори.
22 2004617
Через 100 лет, когда кодить все будут как сегодня писать, настоящих виртуозов кода будут почитать как Пушкина, а говнокодеров позорно забудут. Сначала опозорят, а потом забудут. Задумайтесь, говнокодеры...
23 2004623
>>04617

> Через 100 лет, когда кодить все будут как сегодня писать


Такого не будет никогда, скриньте.
24 2004625
>>04617
Через сто лет все будут в пиктограммы тыкать пальцем и смотреть канал "Насилие"
25 2004632
>>04623

>никогда, скриньте


Анус ставишь? Через тысячу лет проверю и заберу твой анус чтобы продать на рынке в альфа центавра
26 2004635
>>04632
Бля буду, слово пацана.
27 2004655
>>04616
Я сейчас 1к$ получаю +150$ за смену работы это вообще пиздец как слабо. Можно требовать, допустим 2.5к$ ? Или я охуел?
28 2004662
>>04655
Не ну норм 2,5 года - 2,5 бачей
29 2004663
>>04616
Понятное дело, что про проблемы на работе сообщать вообще не стоит, а то подумают, что я еще какой-то конфликтный или еще хуй знает что подумают. Вот что говорить им, кста, на вопрос "А почему решили сменить работу?". Сказать что-то типа "Ну, там был большой проект и на меня вешали задачи по фиксу багов и по поддержке легаси кода, а не по созданию чего-то нового. Поэтому захотел сменить работу, а то чувствую, что не развиваюсь". Норм? Или хуйня? Или можно что-то получше придумать?
30 2004664
>>04662
Рофл чи серьезно?
31 2004715
Как понять ООП? Что вам хорошо помогло?
32 2004734
>>04655
Да нет. Два с половиной года (хорошего) опыта меня в ДС как раз свели на несколько офферов с как раз на 140-180к рублей, а тогда доллар примерно по 60 был.
33 2004736
>>04663
Зачем ебать мозги себе и людям? Идёшь на собес и говоришь, что хочешь больше денег. Вот к тебе будут потом всякие отбитыши приходить и мямлить, что их обижали, не давали развиваться, их тонкая натура хочет большего... Ты их сам то к себе возьмёшь?
34 2004742
>>04663
Скажи, что упёрся в границы как профессиональные, так и финансовые, которые тебе были доступны в той фирме. Поэтому ищешь фирму покруче.
35 2004743
>>04655
Если ты июнь, то можехь хоть на х2 хоть на х3 идти. Если старщой, то тебе за х1.25 придётся бочку делать (это про чистый доход без учёта инфляции).
36 2004755
>>2004217 →

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


Но этот .h все равно потом вставляется в .cpp, и в .cpp все равно необходимо сделать полноценный инклуд для имплементаций.
В итоге (после подстановки)
.cpp получается точно такой же + предварительная декларация в довесок.

Сами по себе заголовочные файлы не компилируются, так что не пофиг ли его размер?
37 2004789
>>04755
Если .h включается в несколько .cpp, то компилятору жевать его приходится каждый раз отдельно. Так что не пофиг.
38 2004799
Чё, пацаны, модули в продакшен уже внедряете?
39 2004801
>>04736
Ну, бля. Если же сказать, что хочу больше денег скажут что-то типа А ЕСЛИ ВАМ ЕЩЕ БОЛЬШЕ ПРЕДЛОЖАТ, ТО ВЫ ОТ НАС УЙДЕТЕ?))) поэтому, думаю, нужно придумать какую-то другую причину. Про то что "обижали" вообще говорить не стоит, а то подумают, что не могу работать В ДРУЖНОЙ КОММАНДЕ или что я вообще КОНФЛИКТНЫЙ.
40 2004853
В моем проекте уже две функции, которые компилятор ругает и не хочет компилировать, ссылаясь на безопасность. Это fopen из курла вроде и еще какая то из сетевой либы винды. Это фиксится дефайном, но вот с вашей точки зрения стоит ли эту хуйню исправлять или и так сойдет, учитывая, что код я копировал частично отсюда https://stackoverflow.com/questions/1636333/download-file-using-libcurl-in-c-c
41 2004856
>>04853
Лол, только что программа в этом месте крашнулась (где fopen и запись)
16172193393780.jpg99 Кб, 919x1149
42 2004873
Короч есть класс `Data` и в нём определено такое:
`operator QVector<double>() const`. Я правильно понимаю что это тоже самое что `QVector<double> operator () const` или это какая-то новая приколюха из С++1488
yoba.jpeg8 Кб, 225x225
43 2004883
44 2004886
>>04853

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


Это же с функциями си случается.

>Это фиксится дефайном


Еще, как правило, есть "безопасные" версии функций.

>с вашей точки зрения стоит ли эту хуйню исправлять или и так сойдет


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

>>04856

>fopen и запись


Чем тебя iostream не устраивает?
45 2004890
Посоны , я так понял учить плюсы для вката бесполезно? Нравится язык, но вакансий действительно не ахти, тем более жуниоров.
46 2004895
>>04886

> По идее ты должен знать, что делаешь, если используешь библиотеки си.


нуууу, я надеюсь челы, у которых я этот код скопировал, знают свое дело.

> Чем тебя iostream не устраивает?


Так я через curl скачиваю файл. Мне без fopen никак
47 2004897
>>04890
Если тебе нравится С++, понравится и Ява. Там вакансий хоть отбавляй.
48 2004898
>>04890

>Нравится язык


Уверен?

>учить плюсы для вката бесполезно


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

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

А условному прогеру на жс, go, джаве, питоне, шарпе, и т д достаточно знать несколько основных фреймворков, с которыми он сможет устроиться везде.
49 2004912
>>04895

>Мне без fopen никак



>>04853

>стоит ли эту хуйню исправлять или и так сойдет


О каких исправлениях ты тогда говоришь?
50 2004913
>>04912
НУ стоит ли пытаться заменять функции эти на безопасные или от этого не убежать?
51 2004915
>>04913
И вообще мне интересно часто ли такая хуйня на практике встречается?
52 2004916
>>04898

>Проблема плюсов - нужно хорошо знать предметную область.


Иди работать в над PVS-Studio. Там сферические кресты в вакууме и есть твоя предметная область.
Правда плотют всего лишь 30к.
53 2004920
>>04916
30к за хорошее знание крестов. Грустнота
54 2004921
>>04916
Там нужно уметь ругать утечки памяти раста и вездесущие ансейфы.
55 2004927
>>04913
Я для себя решил, что не стоит. Потому что мой говнопроэкт совсем не про это был. К тому же - это априори оверхед во всех смыслах.
Аще сэйф-версии даже количеством параметров могут отличаться.

А если у тебя все пиздец серьезно, то спроси у начальника.
56 2004931
>>04927

> Аще сэйф-версии даже количеством параметров могут отличаться.


Если бы это было не так, я бы просто _s приписал и все

>А если у тебя все пиздец серьезно, то спроси у начальника.


Да я для себя пишу сейчас. Спасибо за ответы
57 2004932
>>04916
Ну в яндексе тоже любят писать свои велосипеды. В принципе, если хорошо уметь решать литкод, то можно уже к ним пойти.
58 2004935
>>04913
>>04927
>>04931
На Опеннете или ЛОРе вас бы разорвали на части за такое. Вы уже считай не программисты вовсе, а только на работу в гугл/мозиллу/фейсбук на годитесь. Позорище.
59 2004938
>>04935
не понял шутки
60 2004945
>>04938
Криворукие программисты (99,8% всех программистов) пишут проги с дырками. Вы же еще хуже, зная что там потенциальная дырка - отказываетесь ее исправлять.

Олсо каждому ЛОРовцу/поппентетовцу очевидно что это из-за вашей врожденной лени.
16178113769800.jpg53 Кб, 640x800
61 2004947
>>04873
прошу прощения за даунский вопрос, уже сам нашел что это конвершон оперейтор
62 2004950
>>04945
Криворукие бывают только фронтендеры, а если ты плюсер ты сразу уважаемый разрабочик и архитектор, который не ошибается а делает закладки на будущее.
63 2004954
>>04945
Я сейчас для себя пишу. Если я каждую такую хуйню исправлять буду сразу же, а не когда понадобится, я свой проект буду год писать, вместо месяца
64 2004962
>>04945

>Криворукие программисты


Всмыси "криворукие программисты"?
Если ты соответствуешь своей должности, то ты мне нормально задачу поставишь, так чтобы я никде не наебался. Ты за это бабло получаешь.
65 2004981
Как вкатиться в HFT? Сколько нужно дрочиться многопоточкой и алгоритмами чтобы войти в этот чудесный мир?
66 2005096
>>04981

>многопоточкой


мокрой попочкой будет быстрее
67 2005224
Ньюфаг в треде. (1) Если я подключаю хедер из стандартной библиотеки, то мне не надо передавать компилятору отдельных .cpp с определениями функций. (2) А для собственных хедеров все туториалы говорят - объявления пиши в .h отдельно, определения пиши в .cpp отдельно. Получается во втором случае я ебусь с заголовком дважды, тогда как в первом только один раз. Я был бы не против компилировать еще string.cpp, vector.cpp и т.п. ради универсальной логики, но нахуя делать по разному? Как вы пишете свои классы?
Алсо реквестирую не мусорный гайд по заголовкам.
68 2005228
>>05224
Компилятор знает, где искать бинарники стандартной либы и даёт тебе хедер просто как интерфейс, чтобы ты если что получил вменяемую ошибку компиляции, а не простыню из "undefined reference to" во время линковки. У него может и не быть исходников. Зачем компилиррвать исходники стандартной либы, если они уже скомпилировпны? Это как минимум очень сильно замедлит скорость сборки проекта. Более того, хедеры могут включать другие хедеры, другие - третьи и т.д. Представь, что для одного инклуда тебе придётся передавать компилятору десятки cpp-файлов. Таких проблем ты хочешь ради "универсальности"?
69 2005231
>>05228
Нет конечно, это я написал, чтобы объяснить, что именно меня смущает. Ну вот это значит к каждому собственному .h хранить в паре .cpp, а если они используются в нескольких проектах, да с модификациями, то хранить копии их обоих. Помнить что где и как то всем этим управлять. Сложна!
70 2005233
Не согласен
71 2005449
Как же всё таки понять некую одноимённую концепцию общеизвестную как ооп?
72 2005470
>>05449
Как религию. ООП это триединство
- наследования (если оно множественное, то в 2021 недопустимо)
- полиморфизма (бывает полезно, но злоупотреблять и везде пихать просто так не принято в 2021, а только по необходимости)
- инкапсуляции (в 2021 считается самым полезным качеством ООП)
И над всем этим ПАТТЕРНЫ ПРОЕКТИРОВАНИЯ, которые надо учить.
73 2005476
>>05449
Забыл добавить что не наследованием единым. Есть еще ГРАМОТНО РЕАЛИЗОВАНЫЕ модули в современных языках программирования
74 2005482
>>05476

>не наследованием


не ООП /фикс
75 2005484
>>05470

>если оно множественное, то в 2021 недопустимо


У нас сегодня composition over inheritance, ты отстал лет на 5
76 2005488
>>05476

>ГРАМОТНО РЕАЛИЗОВАНЫЕ модули


Это где? Ocaml, Go и...
sage 77 2005495
>>05488

> ГРАМОТНО РЕАЛИЗОВАНЫЕ модули


> Go

78 2005533
>>05470
Уже давно не триединство. Ты видимо дед-пердед, если не в курсе, что была добавлена:
-абстракция
79 2005537
>>05533
А ещё была убрана передача сообщений объектам.
80 2005569
>>05537
Не волнуйся, в кюте их вернули)
81 2005739
#include <vector>
#include <iostream>

using namespace std;

int main()
{
vector<int> v{1,2,3,4,5};
vector<int>::iterator it;
for(int i=0; i < v.size(); i++){
it = v.begin()+i;

}

cout << *it;

return 0;
}

почему тут утечка памяти?
82 2005758
>>05739
После цикла итератор указывает за массив.
83 2005762
>>05758
Output: 5
84 2005778
>>05758
да ладно?)))

About • FAQ • Blog • Terms of Use • Contact Us • GDB Tutorial • Credits • Privacy
© 2016 - 2021 GDB Online
Language
C++ 17

source code
main.cpp

input
0x1f42c30
0x1f42c30
86 2005829
>>05762
Ну тогда нет утечки.
87 2005835
r>>05829
есть
88 2005857
>>05835
==19125== HEAP SUMMARY:
==19125== in use at exit: 0 bytes in 0 blocks
==19125== total heap usage: 3 allocs, 3 frees, 73,748 bytes allocated
==19125==
==19125== All heap blocks were freed -- no leaks are possible
==19125==
==19125== For lists of detected and suppressed errors, rerun with: -s
==19125== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
89 2005861
>>05857
то какого хуя оно не проходит тест на leetcode?
90 2005867
>>05857
Line 811: Char 16: runtime error: reference binding to null pointer of type 'int' (stl_iterator.h)
91 2006190
Приветствую, братья-плюсовики.
Есть функция с сигнатурой
bool is_intersect_r_r(Rectangle a, Rectangle b);
есть std::function<bool(Shape, Shape)> f;
Я хочу сделать f = is_intersect_r_r;
Но выдаётся ошибка
error: conversion from ‘bool(Rectangle, Rectangle)’ to ‘std::function<bool(Shape, Shape)>’ requested

Rectangle это наследник Shape, если что.
92 2006192
>>06190
Там звёздочки пропали. Все аргументы передаются по указателям
93 2006209
>>06190
В is_intersect_r_r могут вызываться методы Rectangle, которых нет в Shape.
Это паливное преобразование.
94 2006263
>>06209
Но ведь указатель на Shape может указывать на объект Rectangle.
95 2006293
>>06263
Соответственно ты и можешь передавать Rectangle в std::function<bool(Shape, Shape)> f; При этом, ты можешь использовать только поля и методы Shape.

Но у тебя не указатель на Shape, а указатель на функцию с определенной сигнатурой.
Если ты не можешь написать is_intersect_r_r() так, чтобы она принимала указатели на Shape, то и натягивать ее на сигнатуру bool(Shape, Shape) нет никакой пользы, кроме вреда.
96 2006301
>>06293
Ок. А как мне тогда определить тип элементов контейнера, который хранит указатели на функции bool(Shape и его наследники)?
97 2006322
>>06301
А как запилить контейнер, который принимает пофигу что, хоть инт, хоть железный винт?
А как потом работать с контейнером, который на очередной итерации выдаст тебе неизвестно что?

В языке со строгой типизацией это является признаком плохого дизайна.
98 2006360
>>06322
Ну да, ты прав. Спасибо
Безымянный.png16 Кб, 742x295
99 2006428
Почему мне auto приклеивает const? Из-за него не работает ничего.

Как убрать этот const?

В комментарии показываю как псевдоним Pair объявлялся
100 2006434
>>06428
В качестве контейнера у тебя set. Iterator у такого контейнера константный. Т.е. тебе запрещено менять значение, так как оно является ключом, а на ключ завязана внутренняя структура данного контейнера (там может быть хэш или сбалансированное дерево поиска). Если ты обходными путями снимешь const и изменишь значение, то у тебя всё пойдёт вразнос. Соответственно либо убирай && и работай с копией либо меняй тип контейнера (допустим на std::map).
AC232727-D1BB-4912-95F7-A42BC429E053.png12 Кб, 527x317
101 2006474
102 2006476
Вложенные классы это ООП? Типо сложные объект как машина имеет класс мотор, а класс мотор класс свечи
103 2006486
>>06476
Любые классы - ООП.
А в стл у всех контейнеров есть вложенный класс итератор.
104 2006498
>>06486
Не ну понятно, я скорее спрашивал насколько это хорошая практика
105 2006503
>>06498
То же можно и со структурами. Это норма. Можно думать об этом как Машина содержит в себе Мотор.
106 2006563
Почему вы мне не сказали, что есть макая удобная хуйня по stl от мелкософта - https://docs.microsoft.com/ru-ru/cpp/standard-library/cpp-standard-library-reference , а не та хуйня "вырви глаз", которая выдается в гуглях?
107 2006597
>>06563

>allocator


>распределитель


хорошо что там английская версия есть
108 2006607
>>06597
не выёбуйся
110 2006825
C#: пишешь string.split(), и концентрируешься на решении основной задачи

C++: ищешь, как разбить строку с помощью разделителя.

Время разработки х4 на плюсах. Браво.
А что там на Rust кста?
111 2006855
>>06597
русский там автопереводом генерится
112 2006858
>>06563
Не только по стл, но и по языку тоже.
Всегда есть смысл заглянуть и туда, наряду с cppreference.
113 2006878
>>06825
boost::split()
114 2006881
>>06878
это должно быть доступным из коробки
115 2006939
Денис Павлович освящает этот тред...
https://www.youtube.com/watch?v=AsZg6G5mzLc&list=PLvb7ivodu7oQkuxXHqv_LjUWupqSkfQKM&index=1
116 2007043
>>06881
Пок пок пок, мне тут нужно символ в строке заменить. Напишу str[pos] = 'а'. Как это нужно создать копию, потому что строки неизменяемые? Вы ебанулись?
117 2007053
>>06825
Пирожок, ты пойми, что другой язык это другой образ мышления. И это касается не только синтаксиса и знаков препинания, но и работа с инфраструктурой. Принципиальное отличие от пихонов в том, что нет одной коробки из которой ты достаёшь ништяки. Таких коробок много и нужно ими жонглировать и натягивать на свой проект.
16103826532560.jpg93 Кб, 811x1217
118 2007333
Есть небольшой набор упорядоченных констант: 1 - "a", 2 - "b", 3 - "c", 4 - "d", 5 - "e".

Как сделать так, чтобы без километров строк кода иметь возможность получить как символ по его числу, так и число по его символу?
119 2007351
>>07333
в случае O(n) лукапов - 2 массива
120 2007352
>>07351
O(1), дурак я
121 2007360
>>07351

>2 массива


А еще короче не мог написать?
124 2007596
>>07333
Спросить на дваче. Вообще попробуй библиотечный set если с нуля делаешь. Я кстати неопытное лохочмо.
125 2007689
>>04069 (OP)
STL это по сути синтаксический сахар?
126 2007693
>>07689
Синтаксический сахар - это часть синтаксиса языка. STL - это библиотека и не имеет отношения к синтаксису.
127 2007701
>>07693
Я в том смысле имел в виду что возможно копировать фунционал библиотечных контейнеров и сделать свои, более простые.
128 2007707
>>07701
Можно хоть всю стандартную библиотеку навелосипедить при желании, но сахаром она от этого не станет.
129 2007711
>>07707
Я в том смысле что сахар не такой эффективный как хардкорный вариант. Я это так понимаю. Сделать если все на массивах то будет быстрее но объемнее, поэтому не "сахар".
130 2007720
>>07711
Делают иногда, в некоторых очень байтоёбских задачах STL достаточно эффективна, но для большинства случаев подходит.
131 2007867
>>07333
char getChar(int i) {
return '`' + i;
}

int getInt(char c) {
return c - '`';
}
132 2007920
Граждане работающие крестоносцы! Как у вас дела с зарплатами и поиском работы? Я работаю на бесперспективной работе на C++, и у меня по сути два варианта - вкладываться в дальнейшее изучение C++ или другого языка (и сопутствующих технологий). По приложениям C++, конечно, интереснее, но насколько реально на нем найти работу с достойной зарплатой, если ты не в условной топ-1000 РФ по скиллам и таланту...
133 2008082
>>07920
Платят только в Сбере и Нвидии. Опционально - в яндексе.

Если думаешь, что не потянешь - учи жабу, и иди в любой говнобанк пилить легаси дерьмо за 400кк\нс
134 2008217
as c ++
135 2008532
Стоит ли к вам укатываться из фронта? Заебало пилить формочки - хотелось бы чего-нибудь посерьёзнее. Есть небольшой бэкграунд на си ( некоммерческий )
136 2008546
>>08532
ну тут формочек нет)
137 2008547
>>08532
Ну по нашим меркам ты вообще ничего не умеешь. Готов работать за 30-40к?
138 2008561
>>08547
Готов хуярить пет проекты в свободное от работы время. Смотрят ли на гитхаб при поиске работы?
139 2008574
>>08561
Нет. Обычно предлагается тестовое задание. Потом несколько этапов болтовни по теории.
140 2008802
Есть вот такое видео по соданию шахмат:
https://m.youtube.com/watch?v=_4EuZI8Q8cs

Не могу понять зачем в функции move() нужен втооой цикл for(). Он вообще ни разу не давал true:
void move(std::string str)
{
Vector2f oldPos = toCoord(str[0],str[1]);
Vector2f newPos = toCoord(str[2],str[3]);

for(int i=0;i<32;i++)
if (f.getPosition()==newPos) f.setPosition(-100,-100);

for(int i=0;i<32;i++)
if (f.getPosition()==oldPos) f.setPosition(newPos);
}
141 2008836
>>08546
Лол, а ты смешной.
мимо qt и qml
142 2008851
Нахуя в каждой документации пишут абсолютно не читаемую шизоприставку :::::::::::::: для блядского пространства имен? Особенно для std кому это нахуй надо. Нельзя сука указать юзинг стд где-нибудь, зачем читателю ссать в глаза?
143 2008908
Анон, в инете часто вижу в проектах, посвященных машобу или каким-нибудь алгоритмам оптимизации простую трехмерную графику, типа https://youtu.be/EhDr3Rs5fTU . В чем ее делают? Это что-то типа sfml? Или чистый opengl с какой-нибудь обёрткой типа Qt? Как максимально быстро создавать такие визуализации?
144 2009050
>>08908
Это блендер. Посмотри туториалы по нему и поймешь насколько это "простенькое тридэ"
145 2009055
>>08851
двошую
146 2009072
433.png5 Кб, 211x239
147 2009081
148 2009089
>>09081
Харе гнуть пальцы, пупсик, встретимся на улице
149 2009095
>>05739
а где тут утечка?
вообще по индексу не перебирают вектор, можно ошибиться
пиши как по стандарту
for_each(v.begin(), v.end(), [](auto i) {

});
150 2009098
>>09095
а еще лучше
for_each(begin(v), end(v), ...)
что бы не заморачиваться, вектор у тебя v или массив или черт с рогами.
151 2009132
>>09089

> 2021


> выходить из дома

152 2009172
>>08802

>Он вообще ни разу не давал true


А ты как проверял?

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

Вообще у этого чувака довольно хреново написан код. Это даже не си с классами. Даже по меркам си хреново.
153 2009178
Тут пишут нереальные страшилки про сложность вката, необходимость знания предметной области и т.д. Вы с Си тредом не перепутали? Вкатился плюсовиком стажером на 70к в дс2. Никакой предметной области, только знание стл, стандартов и алгоритмов. Считаю, что если тянете кресты, то надо искать работу именно по ним, ибо это лучший вариант для переката заграницу/удаленку на запад.
154 2009247
>>09178
Ладно.
155 2009351
>>09178

>вкатился плюсовиком стажером на 70к в дс2


>лучший вариант для переката



Ты вкат с перекатом попутал, манька.
156 2009366
>>09178
Чем хоть заниматься то будешь?
157 2009375
>>09351
Я оспорил тезис сложности вката в кресты. А потом сказал, почему вообще нужно вкатываться именно в плюсы, а не на фронт какой-нибудь - легче переехать
>>09366
Десктопное приложение, финансовая система
158 2009388
>>09178

>это лучший вариант для переката заграницу/удаленку на запад


На запад смысла ехать ровно 0, так как уровень жизни сильно просядет + высокая преступность во всех крупных городах где есть айти.
159 2009411
>>09388
Ну тут всё относительно. Московские айтишники очень неохотно уезжают с сытных мест. В ДС2, наоборот, быстро пакуются и на несколько лет сваливают. А так как получится.
160 2009425
>>09375

>Я оспорил тезис сложности вката в кресты


Тезис не в сложности, а в соотношении усердие/результат. Если бы пошёл в ДС2 на пихон, то получил бы 90к на старте.

Также есть тенденции, происходящие во всём ойти, которые ты не учитываешь. В 2020 из-за коровы часть контор тормознули набор и запуск проектов и сейчас есть сильный отложенный спрос (вакансий стало на 30-35% больше). Далее демография. Из вузиков выходит всё меньше и меньше народу. Затем удалёнка (в ДС2 не самые лучшие зп). Когда откроются границы - сеньоры с мидлами начнут дружно давать по съёбам.
В такой обстановке будут брать кривых, косых, и даже тупых. В ДС 3-4-5 уже конкретно занервничали из-за нехватки мидлов и старше.
161 2009431
>>09375

>Десктопное приложение


Вот прям как чувствовал, что Qt.
162 2009516
>>09425

>ДС 3-4-5


Бля, опять.
163 2009531
>>09516
Новосибирск, Казань, Екатеринбург.
164 2009548
>>09072
>>09050
Большое спасибо, не знал, что такие подходы используют
165 2009568
>>09516
Ну в регионах.

>>09531
Ещё Нижний и Краснодар. Где-то уровня Казани и Екб.
166 2009589
>>04475
бамп
167 2009591
>>09411

>В ДС2, наоборот, быстро пакуются и на несколько лет сваливают



А смысл? В ДС2 зарплаты не сильно ниже чем в Москве, а жилье подешевле будет. Плюс, если своя хата есть, то смысла куда-то ехать нет, ну может только в долину на грейд L5 и больше, но я бы вряд ли там выдержал работать. Здесь как-то спокойнее, хоть и раз в несколько лет происходят забавные события уровня крымнаша или обнуления.

>>09425

>Из вузиков выходит всё меньше и меньше народу


Спорный момент, конкурс в топ вузах Москвы и СПб на ИТ направления за последние годы заметно увеличился. Но и народ не только после вузиков вкатывается.
168 2009598
>>04475
Thread safe - это не про то, где объявлены функции, а про то, что у них внутри. Если возможны ситуации, когда в двух разных потоках функция работает с одними и теми же данными, причём один поток в любой момент эти данные может изменить, пока с ними работает второй, то второй поток может получить несогласованные данные, и это нихуя не thread safe. Такая ситуация может возникнуть в любом случае, и неважно, статик или не статик.
169 2009604
>>09598
но функции тоже данные, или не?
170 2009608
>>09604
Не.
171 2009617
>>09431
Не Qt. WPF
172 2009706
Как отлаживать оконные приложения?

У меня в дебаге окно вообще не разворачивается никак и не может принять никакой ввод.
173 2009721
>>09604
Да, но константные, => thread-safe.
174 2009727
>>09591
Средняя зп на ~20% ниже.
Вообще из ДС2 в Москву желающих не много. В основном в Европу и Северную Америку. В Испанию в тепло из болотного климата, в Канаду за деньгами, в гермашку, чтоб спокойно, в Швецию, чтоб ещё спокойнее. Многие живут в стиле Digital Nomads и постоянно перекатываются.
Ещё у некоторых в ЕС есть родственники, знакомые по вузику, кто-то там учился или дела мутил. Движ постоянный идёт. ДС2 це ж Эуропа.

>не только после вузиков


Эти дольше обучаются, а прыгают также часто. С них профита намного меньше.
175 2009729
>>09617
Ты Managed C++ с C++ не путаешь?
176 2009738
>>09729
Фронт пилят на шарпе, бэк пишется на плюсах. Как оно там связывается в итоге в один апп - хз
177 2009770
требуется почти срочно человек, умеющий в компьютерную графику (задача -- курсовая работа). детали, условия tg @usr023
178 2009821
>>09591

> забавные события


охуенные события
179 2010215
Помогите с проблемой умоляю.

Есть функция RegisterWaitForSingleObject
ссылка на docs: https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-registerwaitforsingleobject
В неё передаёшь колбэк и данные которые будут переданы в этот колбэк (Context).

Почему когда передаю данные которые сохранил в локальной переменной (т.е. прямо перед вызовом RegisterWaitForSingleObject)
то приходит нихуя? А если переменная с данными объявлена глобально, то данные приходят.

Я так понял потому что локальная переменная создаётся в стеке и когда вызывается callback эти данные уже стёрты т.к. функция с этой переменной уже отработала?
180 2010223
181 2010231
>>10223
спасибо бротан век не забуду!
image.png22 Кб, 420x496
182 2010236
Это что такое?
183 2010247
>>10236
Это initializer lists
https://en.cppreference.com/w/cpp/language/constructor
Не путать с std::initializer_list
184 2010275
>>10236
Двоеточие.
185 2010309
186 2010404
>>09706
Бамп вопросу.
187 2010405
>>10275
lOOOOOl
188 2010519
>>10236
хуйня, до входа в конструктор надо инициализировать ссылки, константы, базовые классы. А тут что-то инициализируется, хуй пойми что.
image.png8 Кб, 583x119
189 2011007
Насколько я понял c++last это 20, но че его не добавляют, если он вышел?
190 2011041
Ни у кого не завалялась случайно картинка с роадмапом по изучению комп. графики? Помню, что она была достаточно большой, и в разделе с плюсами были книги Майерса.
191 2011118
Привет. Хочу обучиться программированию на C++. Знаний вообще ноль.С каких книжек начать?
192 2011129
Анон, поясни, почему компилятор-пидорас ошибку даёт:

template<MyEnum me>
constexpr int f();

main()
{
constexpr MyEnum e1 = MyEnum::val1;
constexpr auto res1 = f<e1>(); // ok

constexpr MyEnum e2 = getEnum();
constexpr auto res2 = f<e2>(); // error
}

Оба енума констэкспры и выражение вычисляется, но как аргумент шаблона во втором случае компилятор не хочет принимать.
Решение - костыль, и это сделать switch блок для всех MyEnum
193 2011134
>>11129

>getEnum();


???
194 2011200
>>11129
Компилятор, к сожалению, так не может. Зато можно пошаманить с шаблонами, и всё получится.
195 2011206
>>11007
Насколько я помню, в режиме c++latest они не дают никаких гарантий по бинарной совместимости. То есть использовал класс, а потом раз - и его layout в следующем обновлении студии может поменяться, и библиотеки, собранные предыдущими версиями, будут тыквой при взаимодействии с более новыми.
196 2011362
>>11206
У с++ никогда и не было бинарной совместимости, как и стабильного abi в принципе. Все интерфейсы библиотек пердолятся через extern "C".
197 2011368
>>11007
Компулятор свежий поставь.
https://en.cppreference.com/w/cpp/compiler_support

>>11206
Охуенно ты вопросы читаешь, братан.
78DAAB6D-DD77-4DCE-A21A-B33686AD4D95.jpeg29 Кб, 400x604
198 2011661
Привет всем, кто неравнодушен к плюсам. Я - прогер-плюсовик, в конторе считаюсь миддлом. Но до сих пор имею один вопрос.
r-value ссылка - суть l-value?
199 2011818
Реквестирую фидбеков джунов-крестоёбов которые вкатывались в ДС. Расскажите что знали на момент устройства, были ли пет проекты, куда устроились и на какую зп?
200 2011881
>>11661
rvalue reference, которые && - это просто возврат временной переменной. Т.к. lvalue хранится на стеке, ты просто говоришь компилятору не дропать это lvalue, а вернуть в вызывающую функцию. По сути, объявление && это типобезопасный аналог указателя на указатель.
201 2011883
>>11881
Извини, не типобезопасный, конечно, а null-безопасный.
202 2011886
>>11881
Ах да, нужно это для избежания копирования. Т.к. ссылка даёт только доступ к объекту, его придется переписывать, а это при присвоении копирующий конструктор. rvalue ссылка просто поменяет указатель исходного объекта, копирования не произойдет.
203 2011889
>>11362
У студии есть совместимость, со 140 тулсета (главное, использовать линкер не ниже чем сама высокая используемая либа), пока они не скажут, что вот, меняем abi
sage 204 2011893
>>11661
r-value ссылка и const lvalue продлевает время жизни объекта. В сущности предназначение rvalue ссылок состоит в продлении жизни временных объектов. Если временным объектом не владеет rvalue или const lvalue ссылка то он для него вызывается деструктор. lvalue ссылка указывает на объект имеющий идентификатор. const lvalue позволяет передавать в функцию временные объекты и объекты с идентификатором, но запрещает их изменение. При инициализации lvalue rvalue ссылкой используется конструктор перемещения. Объект по rvalue ссылке опустошается и его содержимое передается в инициализируемый объект. Из любого lvalue можно получить rvalue ссылку c помощью std::move. Вот вкратце и без многих деталей.
205 2011895
>>11893
Забыл снять сагу извините
206 2011951
>>11368

>Охуенно ты вопросы читаешь, братан.


Нормально читаю. Опции /std:c++20 ещё нет в студии.
207 2012102
>>11362
Ну как нет, как-то что-то есть (говорят на "новый" std::string ещё не все перешли) и комитет старается как можно меньше изменять существующее ABI. Здесь в секциях 7-9 описаны пропозалы, которые не вошли или даже не написаны лишь потому что изменяют существующее ABI. А ведь некоторые очень полезны. Но нефиг, у <энтерпрайз_нейм_в_комитете> есть библиотеки пятнадцатилетней давности, которые нельзя перекомпилировать - поэтому все должны страдать с ними.
208 2012104
>>12102
Забыл ссылку: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1654r1.html
Я помню видел где-то видел более полный список, но не могу найти.
209 2012743
Ананасы, поясните нубу, как лучше передавать аргументы в конструктор. const& или по значению и move?
211 2013153
>>13022
Вкат по видосикам и курсам прокатит в любом другом языке, но не в C++.
212 2013181
За 2 года работы на плюсах так и не понял в чём разница между обычным кастом типов а-ля T() и *_cast<T>(); Реквестирую объяснений.
213 2013196
>>13181
T() - это сишный каст, который одновременно все касты С++ в зависимости от контекста.

*_cast<> это строго определенный каст, делаюший ровно то, что тебе нужно, с компайлтайм проверками, например.
214 2013200
>>11818
Уже пол года как вкатился на 80к в ДС в около гос контору..
В основном, это работа с удаленными устройствами, да десктоп на кьюте под линукс... На собесе поверхностно спрашивали про многопоточку, сетевые протоколы, да про стандартные структуры данных, про линукс спрашивали... были два простых пэт проекта, но их никто даже не смотрел)
215 2013214
>>13181
Взяли один каст и разделили на 4 частных случая. Зачем? Сократить количество неочевидных ошибок. Допустим по цепочке вызовов сняли константность с объекта и модифицируем - по факту имеем ub.
216 2013229
>>13181
А еще Страуструп говорил, что он намеренно сделал такой уебищный синтаксис, чтобы не возникало желания лишний раз применять касты.
217 2013266
>>13229
Да и сами явные касты как таковые - это синтаксическая соль, чтобы не было пиздеца как в JS.
218 2013343
Темплейты довольно удобная вещь. Только почему про них в учебнике рассказывается чуть ли не в последнюю очередь.
219 2013356
>>13343
Они много чего затрагивают, и лучше изучить в одном месте после изучения всего этого, чем размазывать по всей книге.
220 2013365
>>13343
там столько дохуя нюансов, что ты это не отдебажишь
221 2013898
>>13266
Прочитал как синтаксическая боль
222 2013906
>>13898
Тоже пойдёт.
223 2014091
>>11118
Бумп
224 2014092
>>11118
Или не книжки
image.png54 Кб, 826x511
225 2014511
226 2014521
>>14511
Хрюкни
227 2014718
>>14511
Как дрочить вприсядку на потолке.
Можно, но зачем?
228 2014768
Какие принципиальные проблемы возникают при попытке писать мультиос код с нуля применяя только стандартные либы разумеется без ос специфических типа windows.h и юзом внешних вроде какого-нибудь qt или буста без особых выебонов?
229 2014771
c++ => o-+ => o => c-
image.png41 Кб, 764x463
230 2015120
Вы не видите где тут ошибка? Я уже не могу...
Функция убирает все пробелы из string и возвращает его копию, которая была создана конкатенированием из char string. Индексы пробелов сверху помещаются в черный список и перед самой конкатенацией индекс добавляющегося элемента сравнивается с этим массивом запрещенных индексов.
231 2015151
>>15120
В цикле по ii инкремент i, а не ii.
Но вообще у тебя безумный индусский код - что тебе мешало в первом же цикле пихать в ответ непробельные символы без запоминания их индексов?
А на stl это решается в одну строку.
232 2015196
>>15120
str.erase(std::remove_if(str.begin(), str.end(), [](unsinged char c) {
return std::isspace(c);
}), str.end());
https://en.m.wikipedia.org/wiki/Erase-remove_idiom

Без велосипедов можно так
233 2015198
>>15196
*unsigned очепятка
234 2015209
>>15151
>>15196
спасибо
235 2015228
>>15196
В данном случае думаю эффективнее будет просто copy_if.
236 2015506
>>15228
Статью в Википедии зачем приложил?
237 2015524
>>15506
Я не прилагал.
238 2015642
>>15524
А я не предлагал использовать copy_if
239 2015899
>>14768
Зависит от задачи. Почему ты спрашиваешь?
240 2015901
>>11118
Страуструп с лебедями.
241 2016028
>>15642
А зря.
242 2016184
>>04069 (OP)
Генерация кода из UML это возможно? Я понимаю ересь но надо на всякий пожарный.
243 2016267
>>16184

> UML


БЕГN
244 2016284
Не совсем по теме, но всё же, родной тред.
Хочу бекенд на плюсах писать, где можно коротко и ясно прочитать про работу с http и вообще о внутреннем устройстве http и https?
245 2016301
>>16284
нахуя тебе читать внутреннее устройство? Бери boost.beast и ебашь
246 2016313
>>16028
Вместо использования move семантики тратить ресурсы на копирование объектов. Гениально.
247 2016367
>>16313
Глаза разуй.
Функция создаёт новый объект. Принимаешь по ссылке, копируешь в новый, далее рво. С ремув эрейз больше накладных расходов.
248 2016497
>>16367
Еблан, зачем создавать новую строку, если можно сдвинуть непробельные символы к началу строки и инвалидировать оставшуюся память?
249 2016515
>>16184
Возможно (определения классов). Nclass для .Net, для плюсов что то большое и платное, не помню что
250 2016623
>>16497
Потому что функция создаёт новую строку без пробелов, а не изменяет старую, тупая мразь.
251 2016730
С dbus кто-нибудь работал? Как у timedated убрать запрос пароля на методы? Насколько я понял нужно создать файл конфигурации org.freedesktop.timedate1.conf в /etc/dbus-1/system.d и там прописать политику типа:
<busconfig>
<policy user="user">
<allow own="org.freedesktop.timedate1"/>
<allow send_destination="org.freedesktop.timedate1"/>
<allow receive_sender="org.freedesktop.timedate1"/>
</policy>
</busconfig>
Но это не работает (по крайне мере в дебиане). Анон, подскажи, что я упускаю?
252 2016790
>>09425
сыглы
у нас уходят люди выше мидла, ибл с короной просели зп, на прошлой неделе ушел товарищ в сишарпы, потому, что зп на 50к больше. тоже думаю катиться, ибо в отделе осталось 3 человека (было 9 когда я пришел год назад).
253 2016822
Господа крестоносцы.
Какие шансы переехать в ваш круг работать в контору (дс5 екб) на того же джуна. Сейчас получаю в среднем 40-50к (зеленый и стажа оф год), пришел с нуля.
Навыки - линух, контроллеры (c. codesys. st. немного руби), занимаюсь безопасностью в основе. Тема интересна, сейчас учу кресты. Где можно применять их в иб, да и вообще, куда можно податься с этим набором, к 2022 думаю перекат оформлять? мейби кто из екб, подскажите конторы (кроме газпрома), так же в целом идеи и освятите путь жаждущему познать истину.
Всем спасибо
254 2016891
>>09178
Смотрю очень много резюме по крестам на хх около 1300 по казани
255 2016943
>>16822
Плюсы и безопасность = Контур, Континент
256 2017094
Я не помню, чтобы я вообще хотя бы раз использовал какой-нибудь std::forward или вообще перфект форвардинг, declval или enable_shared_from_this(). Даже имея на вооружении LLVM 12 продолжаю писать в стиле С++11, только ranges вот пизданул. Это нормально?
257 2017101
>>17094
Да, вполне. Есть задача - есть инструмент. Нет задачи - нет инструмента. Для какого-нибудь SDK forward нужен. В остальном всем похуй, ибо это лишний уровень "гибкости".
258 2017108
>>16790
Корова ускорила рыночные процессы. Сам перекатился на пихон, а до этого писал зрение на плюсах. Сейчас занимаюсь тем же самым, но за больше деньги.
259 2017454
>>17094
Я, ебаша в проде адовый С++17 с переездом на С++20 как только будет Студия 2022 - так же нираху не использовал стдфорвард, деклвал по-моему 1 раз было где-то в самопальной СФИНАЕ лапши, и енабле_шаред_фром_зис тоже ниразу не использовал.
260 2017511
>>17101
>>17454
Я даже не соображаю, зачем нужен optional/any. Наверно, потому, что не видел никаких адекватных красивых кодовых баз с этими фичами. Из 17-ых дёргал только structured binding и расширенный if. Даже не нашел, где можно было бы decltype(auto) воткнуть.

Фич дохуя, и мне кажется, что их точно нужно использовать, не просто так же ввели.
261 2017583
>>17511

>что их точно нужно использовать


Зачем? Девиз крестов - ты не платишь за то, что не используешь.
262 2017692
>>17511
Optional крутая вещь, имхо, постоянно использую. А вот Any - тоже 0 юзкейсов.
263 2017945
Насколько нормально создавать объекты для подстановки в decltype? Типа того:
volumeField<decltype(Type() & vector())> divergence(const volumeField<Type> & inField)
?
В примерах обычно ставятся переданные аргументы, но у меня Type и vector засунуты в поля внутри inField, и доступ к ним многословен.
264 2017959
>>17945

>decltype(Type() & vector())


Я нихуя не понял, но возможно тебе надо писать возвращаемый тип через ->?
auto divergence(const volumeField<Type> & inField) -> volumeField<Type> {...}; или типа того.
265 2017960
>>17094
Перфект форвардинг - это вполне в стиле 11
266 2017999
>>17959

> -> volumeField<Type>


В том то и дело, что у возвращаемого значения тип не Type, а должен вычисляться на основе произведения Type & vector, но чтобы взять объекты для этого из переданного inField, мне придётся написать
decltype(
inField.ref()[0] & inField.meshP()->surfaces()[0].N()
),
что выглядит очень громоздко.
267 2018007
>>17999
Наверное можно сделать шаблон с возвращаемым значением шаблонизируемого типа. Using и вот это все.
268 2018235
>>17511
Прикольная тема fold expression
https://en.cppreference.com/w/cpp/language/fold
биби.png442 Кб, 882x644
269 2018287
>>04069 (OP)
Мем от Строуструпа.
cppdevs.jpg42 Кб, 600x440
270 2018392
download (5).jpg532 Кб, 2500x1556
271 2018441
272 2018604
>>17945
Для этого есть даже специальная функция в STL https://en.cppreference.com/w/cpp/utility/declval
273 2018609
>>17999

>на основе произведения Type & vector


А для этого есть std::result_of или std::invoke_result, начиная с C++17.
274 2018876
Раст лучше.
275 2018883
Чем.
276 2018888
1С.
277 2019061
Почему GCC не может в OpenMP? Производительность при использовании более 8 потоков на 12/24 процессоре, не увеличивается и даже с увеличением немного падает. В MSVC линейно увеличивается и по максимум пользует 24 потока.
278 2019153
>>18604
А это точно stl?
279 2019154
>>18609
result_of депрекейтед уже
280 2019459
Как это пофиксить?
281 2019495
Ребят. Такое дело. Я пишу кастомный логер, который может синхронизироваться с разными тредами, но у меня каждый раз, когда идет чейнинг выводов типа так:
logger << "out" << "a" << endl;
То на "a" вызывается деструктор и анлочится мьютекс. Как фиксить?
Помогити...
282 2019499
>>19495
Забыл сказать. Если возвращать из логера по значению SynchronizedStream, то он падает сразу. А если по ссылке, то только уже на втором чейне. (Тот самый "а")
283 2019502
>>19495
И еще, нужно чтобы оно вызывало деструктор для SynchronizedStream в конце чейна.
То есть есть у нас такой чейн:
logger << "Print me!" << "And me!" << "And me!" << endl; (здесь вызывается деструктор SynchronizedStream)
284 2019514
>>19459
А что не так? Отрицательный 0 - допустимое значение для флоата и дабла.
285 2019561
>>19495
Не пиши столь ублюдочный логгер с <<
286 2019564
>>19495
Посмотри как в бусте сделано.
https://github.com/boostorg/log/blob/master/include/boost/log/sources/record_ostream.hpp#L566
Там специально хитровыебнулись, чтобы не вычислять аргументы, если у тебя уровень логгирования ниже (через цикл for), и через мать его lifetime extension сделали record_pump чтобы объединить всю цепочку "<<" в одну логическую запись - сюда ты как раз и сможешь мьютекс вставить.
Но вообще << логгирование уже прошлый век, у нас есть вариадические шаблоны и можно спокойно сделать логгирование обычными функциями а-ля spdlog (сам недавно реализовывал свой велосипед в таком стиле - очень просто и лаконично получается).
287 2019575
>>19561
Выбора нет. Задание такое.
288 2019586
>>19561
Недавно писали, что Страуструп специально сделал для кастов уёбищный синтаксис, чтобы их юзали редко. Выходит, стримы тоже надо юзать редко.
289 2019607
>>19586
Стримы были задизайнены в 80-лохматом году, тогда хотели ПРИМЕНЯТЬ НОВЫЕ ФИЧИ. Слава аллаху за стандартизацию std::format и Вите за fmt

>>19575
пусть твой поток, в который ты чето делаешь - возвращает прокси обьект, который будет удаляться после того, как в него насрут.
290 2019612
>>19564

> а-ля spdlog


Я вьебал в свое время 5 выходных дней, на то, чтобы с уебищного самопального<<логгера, переписать вообще все логирование в проекте на fmt (spdlog низя было, т.к. мы логируем в виндовые ETL'ки, а не в текстовички).

Так вот - это охуенно, логи стали чистенькие и LOGE("{}, {}", "сука", "красивые"); а не LOG << "ебучий " << "сблев " << "обезьяны" << OUT_ERR;
291 2019786
>>19607

>Слава аллаху за стандартизацию std::format


> (since C++20)


Воистину Аллах велик и всемогущ! И слышит молитвы тех, кто просит. Аж с 90-х годов просит.
292 2019816
>>19612
С одной разницей что твои строки формата могут теперь не соответствовать списку аргументов, и в случае какой-нибудь редкой ошибки ты получишь не красивое сообщение в лог, а кривой эксепшн и вероятно сегфолт.

Забавно что сишные строки форматирования компиляторы умееют проверять, а хипсторский фмт - нет.
293 2019817
>>19561
Я кстатит после долгих проб и ошибок пришел к форматированию через <<

Остальные способы имеют критические недостатки.
294 2019818
>>19816

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


Получал, чинил, полет отличный дальше
295 2019867
>>19459
а чё нельзя просто написать
if(y>0) return y;
else return y * -1;
image.png6 Кб, 430x83
296 2019897
Это чё такое?
297 2019941
>>19897
Это execution reached the end of a value-returning function without returning a value.
298 2019946
>>19941
и что это значит? у меня все функции возвращают всё. в visual studio всё работает, а на codewars нет
299 2019972
>>19816

>хипсторский фмт - нет


Уже давно как может: https://fmt.dev/latest/api.html#compile-time-format-string-checks
Единственный минус - надо обмазываться макросами
300 2020125
>>11881
>>11886
>>11893
Коллеги, я знаю как пользоваться r-value. Меня интересует другое.
Есть функция
T && fun(T && s)
{
return std::move(s);
};

T t1;
T&& t2 = fun(std::move(t1)); //t2 - r-value ссылка

T&& t3 = t2; // ошибка. Казалось бы, почему к r-value ссылке нельзя присвоить r-value ссылку? Но компилятор пишет:
cannot bind rvalue reference of type ‘T&&’ to lvalue of type ‘T’.
То есть в этом контексте компилятор t2 считает l-value.

То есть r-value ссылки это l-value по сути своей?
301 2020157
>>19897
бамп
302 2020215
>>20125
Ссылка в большинстве контекстов обозначает объект, на который ссылается. Поэтому да, t2 - это l-value.
303 2020249
Какие вопросы будут задавать на собесе на мидла? Можно полный список? Хочу подготовиться.
image.png6 Кб, 430x83
304 2020300
>>20249
Есть вероятность, что спросят это. Что ответишь?
305 2020307
>>20300
Хуй знает. Походу должно в мейне возвращаться значение какое-то, а оно не возвращается.
306 2020355
>>20125
ссылке нельзя присвоить ссылку
image.png2 Кб, 179x75
307 2020364
>>20355
Можно.
308 2020365
>>20307
Такая ошибка будет отловлена уже на этапе компиляции. Судя по всему в рантайме произошло что-то, что не дало функции выполнится до return statement, например выбросило исключение
309 2020368
>>20364
Так ссылка после инициализации уже не ссылка
310 2020383
>>20300
Моё дистро не вендорит libastral.so.2, дайте код
311 2020686
>>20383
Мы вам перезвоним.
312 2020740
>>20249
Так можно ссылку на вопросы плюсовому мидлу?
313 2020806
>>20300
Скорее всего это из-за throw или нужен decltype. Я сдал на мидла?
314 2020808
>>20806

>нужен decltype


Ан нет, не нужен, там же мейн.
315 2020831
>>20300
int f() {
if (false)
return -1;
}
Не все пути ветвления исполняемого кода имеют возвращаемое значение.
Но это же совсем для даунов. Какой миддл?
316 2020835
>>20249
Че хотя бы примерно спрашивают? Норм с 2-умя годами опыта в плюсах требовать 2-3к долларов(город Харьков, Украина)?
317 2020898
В базовом классе был объявлен (фактически пустой) виртуальный деструктор.
В одном из производных классов мне теперь нужно кой-чего дописать в деструктор.

Это деструктор производного - он virtual ... override или как?
318 2020928
>>20835

>город Харьков, Украина


Да, вполне. В нормальной стране живём как-никак.
319 2020968
>>04435
твой шаблон функции должен принимать пару итераторов, определяющих диапазон, а не сам контейнер
посмотри реализацию любого алгоритма из стандартной библиотеки и делай так же
320 2020970
>>04655
эмпирическое правило - менять работу только если будет больше 30%
321 2020977
>>04715
чтение срачей на форуме rsdn в нулевые как ни странно, где срались что мол в крестах ненастоящий ооп
ну и еще разглагольствования страуструпа что мол у него в языке есть 3 вида полиморфизма и бахвальство что у него динамический полиморфизм работает почти бесплатно, с дотошным обьяснением механизма работы виртуальных членов-функций
322 2020983
>>04981
челибоня, ты опоздал на четверть века
кому нужно было тот уже все написал под себя
держат только по паре обезьян на саппорте второй линии зачастую, чтобы они че нибудь слегка дописывали
поезд hft ушел
323 2020986
>>06476
вложенные классы в крестах имеют набор вполне конкретных use cases, поэтому ни к чему приплетать какую то философию
практический подход
324 2020991
>>06825
тащем та челики из комитета все же прогнулись, и теперь в стандарте тоже есть сплит для строк
как говориться - если дураки продолжают лезть в окно, то рано или поздно на месте окна придеться вырубать дверь
325 2021009
>>13181
вот так ляжешь с аппендицитом а тебе вырежет почку такой же врач-троечник и неуч
326 2021012
>>13196
почитай по сишный каст и не вводи в заблуждение других
327 2021016
>>13343
есть отдельные книги по шаблоном и по том что можно на основе их делать, и ты, щеня, охуеешь их читать
328 2021018
>>14768
ну, челик, знаешь как выходит: вроде и пишешь мультиплатформу, а по факту оказываеться что прога под линукс плюс порт под винду
так это и работает
уебишьно
ибо линукс одна из самых уебищьных осей
329 2021020
>>15901
респект, лучшая книга страуса после "дизайна и эволюции"
330 2021026
>>16891
чувствуешь масштаб крестоапокалипсиса?
вон, вверху треда челик за 11к рубасов фултайм работает
331 2021028
все, челики, я посрал в тредик, зайду опять через полгода, ближе к зиме
кого обидел - не жду прощенья
адью
332 2021054
>>20125
Когда ты упоминаешь переменную, к её типу приебашивается ссылка. В твоём примере, T && + & -> T & -> can not bind reference. Если тебе не это нужно, можешь указать явно:
T &&t3 = static_cast<T &&>(t2);
Собственно, std::move примерно этим и занимается.
333 2021059
>>21054
Дополню ещё.
https://gcc.godbolt.org/z/soqM4njE7
Вот тут видно, в чём разница между std::move и std::forward, и как отрабатывает universal reference. Полезно для понимания, как ссылки работают. Я лично советую забыть про всякие категории lvalue/rvalue, пока нормально не разобрался, что к чему.
334 2021077
Могут ли на собесе по плюсам задать вопрос по cmake? Типа, как там написать какой-то cmake файл и все в таком духе?
335 2021095
>>21077
Маловероятно. Такое может быть если тебя берут с расчетом на то что ты будешь заниматься еще и билд-системой.
336 2021230
Это здесь постят код на плюсах, чтобы его обоссали?
337 2021399
>>21230
Да.
338 2021418
Можно ли с помощью плюсов изменить файл подкачки?
339 2021525
>>21418
Да хоть на автохотскрипте, если можешь функции из ntdll вызывать (ну или где функции изменения параметров свопа на винде находятся).
340 2021703
Верно ли, что если я напишу {} просто посреди main, то это будет как отдельный участок кода со своими локальными переменными, которые удалятся при выходе из этого блока?
341 2021711
>>21703
Да, только это почти никогда не используют.
342 2021715
>>21711
почему?
343 2021718
>>21711
Если ты не используешь, то не значит что никто другой не использует. Это полезная штука в юнит тестах. Чтобы не писать var_a01, var_a02... в каждом тесте. А просто писать эти фигурные скобки и в них в каждой свой var_a для своего теста.
344 2021790
Можно ли в куче насоздавать кучу переменных, а потом все кроме последней удалить, тем самым заблокировав путь для роста стека?
345 2021809
>>21790
Нет.
346 2021812
>>21809
Ладно.
347 2021836
есть два vector<MyClass> v1 и v2
Когда я пишу v1 = v2, то просто v1 ьеперь указывает на v2? А что теперь с данными v1? Они просто лежат в памяти не удаленными? А если после этого я еще и v2 удалю, то вообще все данные похерю что ли?
348 2021841
349 2021842
>>21711
Вполне себе используется в паре с RAII примитивами.
Допустим тебе надо под мьютексом сделать что-то. Берёшь и пишешь { unique_lock(mutex); do_something; }.
350 2021845
>>21841
Спасибо
351 2021848
>>21841
А если swap?
352 2021856
>>21848
Там внутри указатель на кусок памяти и переменная с количеством элементов. Они меняются местами в v1 и v2.
353 2021879
чтобы скачать папку с сервера мне нужно отдельно каждый файл в этой папке скачивать ?
354 2021886
>>21879
Можешь архивировать перед выгрузкой, тогда отдельно качать файлы не придётся.
355 2021904
>>21399
Вы медленные тут, пиздец, меня уже в FAQ треде научили что к чему.
risovach.ru (2).jpg49 Кб, 699x310
356 2022024
>>04069 (OP)
Как перестать орать. На хакатоне просят сделать систему пластиковых карт для города. Финальный приз (не факт что получишь) 55 кк деревянных на команду. При этом функционал как положено.
357 2022039
Как подключиться к серверу через socks и curl? Сначала написал пикрил 1. В ответ как и ожидалось пришел пик 2. Потом я сменил тип прокси в курле(пик 3) но получил пик 4. ЧЯДНТ?
358 2022041
>>22024
Ну а че родному городу впадлу помочь?
359 2022042
>>22041
Город не родной. Ты че быдло?
360 2022045
>>22042
Русский город - родной город. Или ты их этих?
361 2022053
>>22045
Эй глядите как. У нас тут философ завелся в треде. Расскждает на тему околоскрепных конструкций.
362 2022058
>>22053
Х сп.....
363 2022066
>>22024
55 миллионов? или 55 тысяч?
364 2022068
>>22039
бамп
365 2022069
>>22066
55 миллионов рублей
366 2022077
>>22068
юамп
367 2022092
>>22077
Тебе ответят позже не надо бампать.
368 2022097
>>22039
Причем я могу подключиться к обычным сайтам, но не onion. Проблема наверное в том, что я косо настроил socks для тора
369 2022102
>>22097
Господи. Нужно было написать socks5h://127.0.0.1:9050 вместо socks5://127.0.0.1:9050
370 2022126
Чё скажете по std::launder, пацаны?
371 2022173
какую библиотеку для распаковки архивов лучше взять?
372 2022177
>>22126
пиздец
373 2022305
>>22126
Когда в прошлый раз пытался понять, зачем он, мне мозг распидорасило от байтоебских подробностей. Слышу о нем только то, как же он хуево задизайнен.
374 2022464
>>04069 (OP)
Boost или Loki?
Александреску 2008 устарел? Есть ли что-то более новое?
375 2022466
>>22464
Boost.
376 2022475
>>22305
Frfh hh
изображение2021-05-07181650.png64 Кб, 1156x489
377 2023278
Крестоносцы, я правильно понимаю, что если enable_if::type будет undefined, то компилятор не может вывести типы аргументов шаблона. Следовательно, по правилам сфинае, эта функция исключается из кандидатов на перегрузку.
378 2023343
>>23278
всё так
379 2023573
>>20983
Ок, а куда выкатилась вся масса челов, ранее занятых в hft?
380 2023616
>>23573
Туда же, куда уходят программисты после 40. Ковырять легаси говно, руководить чем-нибудь, пердеть в штаны в гос. конторах.
381 2023623
>>13266
в js нет никакого пиздеца
382 2023632
>>23623
Слабая динамическая "типизация" - худшее изобретение человечества после атомной бомбы.
383 2023650
>>23623
>>23632
Бля, не начинайте опять.
384 2023686
>>23632

>после атомной бомбы


Что ты имеешь против атомной энергии, статикошиз?
385 2023715
>>04069 (OP)
кто нибудь может пояснить мне за СЛОЖНОСТЬ этого языка? Учу по learncpp.com, уже на 14 главе, вообще ни одной сложности не возникало, хотя единственное, на чем до этого прахрамировал - пассаль в школе. Разве что забыть только могу что-то и потом бегать по главам вспоминать, но такое, в принципе, не часто.
386 2023717
>>23715

>на 14 главе


В смысле только что прошел тринадцатую, четырнадцатая там зарезервивована
16198402238340-dvach-b-245608720.png982 Кб, 1034x1000
387 2023783
>>22024
В хакатоне не участвуй, сделай систему сам с корешами (хотя бы часть функционала для демонстрации), а потом, когда на хакатоне будет ноль результата, попытайся продать это решение городу по более адекватной цене. Как там с юр лицами и связями быть хз, опыта не имею.

В своё время, помню, норвежская контора обещала АЖ ЦЕЛЫЙ АЙПАД, если им пришлют реализацию нового нелинейного способа управления их оборудованием (типа пи-регулятора на матрицах, только на нейронках или ещё как). И по итогу конкурса они соблаговолили бы взять на работу победителя. Но так никто и не участвовал в этом наебалове, лол. Алгоритм с патентом сам может стоить на порядки дороже, чем весь этот айпад. Интересно, часто ли на фриланс-биржах норвежцы показывают такую жадность.
388 2023817
>>23715
Почитай C++ Templates: The Complete Guide от David Vandevoorde and Nicolai M. Josuttis
389 2023818
Что за магия, как называется такая конструкция когда вне класса определяется ещё один конструктор с использованием -> ?
template<size_t N>
ct_string( char const ( & )[N] )->ct_string<N - 1>;
390 2023953
>>23715

>learncpp.com


Там все сложные (и не только сложные) места молча опущены.

>кто нибудь может пояснить мне за СЛОЖНОСТЬ этого языка?


Это СЛОЖНО.
391 2024159
Надо ли обязательно после CreateProcess затем вызывать CloseHandle? Приложения сами же потом закроются, как отработают, не?
392 2024165
>>24159
Ага, и память сама освободится.
393 2024176
>>23817
А еще есть такие продвинутые книги по плюсам? Вот чтобы прочитать их все и ощутить сложность.
394 2024180
>>24165
Это сарказм?
395 2024277
>>24176

>ощутить сложность


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

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

На практике это выливается в то, что в языке не работают аналогии. Точнее они почти всегда работают, но вовсе не так, как ты ожидал.

Удивительно то, что поверх этого пиздеца удается создавать библиотеки с совершенно противоположными качествами: ты просто усвоил общие принципы, на которых построена библиотека и тебе не нужно ее изучать всю от и до. Например, ты вполне можешь себе позволить не знать о существовании какой-нибудь функции, потому что при необходимости ты можешь по аналогии предугадать существование этой функции вплоть до ее точного имени и с какими аргументами она должна вызываться.
image.png941 Кб, 612x612
397 2025200
здравия желаю, ананасы. хочу научится кодить vst плагины. подскажите где нарыть инфу по этому вопросу - видео, туториалы, книжки, статьи. лет 5 назад проходил пару учебников по си ++. заебали всякие консольные задачи из книжек пилить и забросил это дело. увлёкся электронной музыкой, купил на рутрекере плагинов. и вот думаю вкатиться опять в кодинг, но чтобы не сортировки со списками всякие пилить, а реально интересные и полезные проги для своих задач. плиз, аноны
398 2025318
Что пишут на С++, чтобы вкатиться джуну?
Laozi.jpg29 Кб, 188x244
399 2025515
>>24779

>Путь в сто тысяч миль начинается с одного шага назад.

400 2025521
>>23783
Хотя бы в нетворкинг попробую. Что если вместо того чтобы быть рабом Я сам стану рабовладельцем создав там свою маленькую галеру? Главное найти кнут. Пряник будет виртуальным.
401 2025621
>>25318
Двачую. Страуструп уже выжил из ума к моменту, когда придумывал инициализацию фигурными скобочками.
402 2025622
>>25200
Ну ты нашел, где спрашивать, конечно.
403 2025651
>>25200
Попробуй в ТВИТЕРЕ спросить у @timuraudio
404 2025652
>>25651
@timur_audio - сорян
406 2025704
>>25200
Там отдельный язык придуман называется Max. Устанавливаешь его в Ableton и теоретически можешь делать любое преобразование на самом "низком" уровне. Зависит от скилла конечно. Возможно профи делают по-другому.
407 2025728
>>24779
Начал смотреть видео по Hello World. Лектор говорит "надо в main добавить "return 0;" ,объязательно. Там все такие в этом Яндексе?
408 2025735
Все, кто не пишет return 0 в конце main - долбоёбы.
409 2025736
>>25735
Стандартом разрешено не писать
410 2025739
>>25736
UB тоже разрешено стандартом.
411 2025741
>>25735
В Яндексе работают >3 долбоебов значит.
412 2025742
>>23818
Бамп вопросу, неужели никто не знает?
413 2025750
>>25741
Это давно не секрет.
414 2025752
>>25742
deduction guide
415 2025872
Сложно ли организовать простое комп. зрение на плюсах для телефона? Буквально чтобы он распознавал движение руки вперед, типо свайпа, назад там, уголком.
416 2025885
Прочитал про битовые флаги и охуел с гениальности этого похода.
Вот такой появился вопрос к знатокам.
А что если параметры человека будем хранить в одной переменной int х (например поместим туда age, где достаточно три бита; поместим gender, допустим 125 гендеров, как сейчас модно, где также достаточно 3 бита для хранения и т.д.). Эта переменная будет хранится в классе Human. Битовые маски для получения значений будут хранится в отдельной функции.
И собственно вопрос. Если будет много экземпляров класса (например 200 npc в локаии) скажется ли это положительно на производительности и ресурсозатратности или наоборот все будет хуже из-за дополнительных вычислений?
417 2025929
>>25885

> или наоборот все будет хуже из-за дополнительных вычислений?


Да, плюс по памяти экономия выйдет незначительная на фоне всяких имён, адресов и прочих строковых данных.
418 2025945
>>25652
>>25678
>>25704
спасибо
419 2025968
Мне надо просто сохранять в файл по нескольку десятков строк между вызовами программы. Но гугл предлагает велосипеды на реактивно-гусеничном ходу с кожаным салоном и стразами aka байты сериализация и т.п. в чем я пока не собираюсь разбираться. Если я сам сварю велосипед из ifstream/ofstream и тупо буду складывать данные в .txt разделяя пробелами и переносами строк, это нормальный будет подход или есть другое готовое решение для хелловординга?
420 2025980
>>25968
Если тебе нужно просто дописывать в конец файла, открывай ofstream с флагами std::ofstream::out | std::ofstream::app.
421 2026041
>>25980
Я загружаю файл в вектор построчно, делаю с ним что надо и перезаписываю обратно целиком. Самому не нравится, но все что мне нужно это пронумерованные строки и сохранение, т.к. есть более насущные проблемы тупо совладать с синтаксисом.
422 2026086
>>25885
Со сдвигами и масками доступ к данным медленнее конечно. Но есть нюанс - у тебя больше уместиться в кеш, а с кешом проц работает где то в 100 (сто) раз быстрее чем с обычной ОЗУ. Так что все как обычно решается профилированием.
423 2026178
>>24277

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


Это потому что Степанов придумал невероятно годный, продуманный и последовательный дизайн в STL.
424 2026181
Поясните за геймдев на плюсах. Почему его так хейтят и срут на него в каждом треде? Единственные минусы которые и так очевидны, это низкая зп по сравнению с другими сферами, переработки (зачастую оплачиваемые) и текучка кадров большая. Так ли всё на самом деле плохо? Есть же не только ААА гиганты, а и средние студии, которые занимаются портами или аутсорсом рутинным, особенно это относится к геймплей программистам. О последних на самом деле и речь в основном, потому что движок условный пилят десятилетиями и это сложно назвать полноценным геймдевом, так как они работают не с играми, а с инструментарием для их создания. Объясните залётному студентику все эти моменты.
425 2026184
>>25735

>return 0


Если уж быть педантом, то return EXIT_SUCCESS;
426 2026217
>>26181
Потому-что не надо делать геймдев на С++, а делать надо его на юнити\блюпринтах
427 2026218
>>26181
Ну на движке пилить игры довольно уныло имхо, самое интерсное как раз кроется под капотом в движках.
Ну и многие студии разоряются, потому что на играх заработать удается далеко не всегда. Собственно поэтому пилится очень много игр уровня "три в ряд под андроид с донатом и кучей рекламы", потому что здесь хоть что-то можно получить.
428 2026328
>>26181
В гейдеве не работал. Чисто собесился и ходил смотрел как там на месте всё устроено. Офферы - через раз - серые зарплаты (30% официально по ТК, остальное мимо кассы). Офисы во многих случаях забиты людьми под завязку. Работяги часто выглядят задроченными. Круг задач - в основном работа с мутным легаси кодом, который надо либо оптимизировать либо портировать либо довести до стабильного состояния.
Ну и сами собесы довольно неприятные в плане общения. То какие-то выёбщики, то неадекваты, то вообще всем похуй кого и зачем собесят (хотя потом звонят и делают оффер).
429 2026492
>>04069 (OP)
Как скомпилировать это https://github.com/moneymanagerex/System.Data.SQLite/tree/master/SQLite.Interop
в System.Data.SQLite.dll (содержащий SQLite.Interop.dll внутри себя),
производя компиляцию на linux, с помощью mono xbuild/msbuild ,
и сделать это так, чтобы на выходе, была windows-длл-ка,
первые байты которых, начинаются с MZђ , а не с ELF ???

Этот файл: https://github.com/moneymanagerex/System.Data.SQLite/blob/master/Setup/compile-interop-assembly-release.sh
выдаёт ELF, под названием SQLite.Interop.dll

Но это не виндовая либа System.Data.SQLite.dll (с SQLite.Interop.dll внутри),
которая генерится на windows, cmd-файлом:

>set fdir=%WINDIR%\Microsoft.NET\Framework


>set msbuild=%fdir%\v4.0.30319\msbuild.exe


>%msbuild% System.Data.SQLite\System.Data.SQLite.Module.2010.csproj


>%msbuild% SQLite.Interop\SQLite.Interop.2010.vcxproj


>pause



Хочу, чтобы mono выдало мне именно этот файл System.Data.SQLite.dll который многовесный, и который с интеропом этим, внутри, и чтобы win32 он был.
Какие флаги задать нужно? Или может что-то поставить нужно в линуксе, дополнительно?
430 2026557
Можно ли как то без исходников изменить exe, но чтобы программа осталась рабочей?
431 2026563
>>26557
Дизассемблировать.
432 2026567
>>26557
Можно, разбираешь в IDA pro и меняешь нужные опкоды
433 2026570
>>26567
Это же пиздец. Дя и руками сильно exe не поменяешь
434 2026571
пиздец нахуй надо
Police 435 2026573
пиздец нахуй надо
436 2026574
>>26570
ну а хули ты хотел.
Я пару софтин КРЯКАЛ в детстве, меняя JNE на JE и прочее
437 2026732
Что делает деструктор для объекта класса, созданного в динамической памяти? Вызывается с командой delete?
438 2026747
>>26732
Да, перед деаллокацией памяти выделенной под объект вызывается деструктор объекта.
439 2026750
>>26732
Всё я уже сам проверил, зря только 105 символов писал
image.png160 Кб, 1000x618
441 2027022
Всем привет!
Этот код https://ideone.com/IUcG2T в VS 2019 компилируется на /Wall без предупреждений. Но стоит вынести объявление approximation за while, как в строке 19 возникает C5045: Компилятор вставит компонент устранения рисков Spectre для загрузки памяти, если указан параметр /Qspectre. Что это означает? На предупреждения C5045 стоит обращать внимание, или забить?
442 2027023
>>27022
Защита от бага в процессорах
https://en.wikipedia.org/wiki/Spectre_(security_vulnerability)
443 2027036
Является ли криптор универсальной зашитой от антивирусов? Не спалит ли антивирус программу, в момент дешифровки и исполнения?
444 2027040
>>27023
Ясно. То есть, исправить это предупреждение в общем случае можно только включением /Qspectre (в случае MSVC). То есть, пытаться править код в общем случае бесполезно, потому что баг не на стороне пользовательского кода, я правильно понимаю?
445 2027056
>>27040
ага, компилятор вставит барьер там с такой опцией.
446 2027091
>>26492
Бамп вопросу. Там, в sh-файле - gcc, какие флаги надо, блядь?
447 2027103
>>27091
Да не знает тут никто, это шарпистская тема, хоть что-то и написано на плюсах.
448 2027221
Стоит ли идти на трейни/интерна вместо джуна? Какие отличия на собеседовании? Здесь есть те кто таким образом вкатывался?
449 2027248
>>27221
Твоя задача - получить боевой опыт, хоть какой-то. Дальше уже будет сильно проще. Иди хоть подносителем кофе сениором.
450 2027251
>>24176
хм, сложные книжки именно по языковым особенностям это джефф элджер "библиотека программиста", александеску "современное проектирование на с++", абрахамса "шаблонное метапрограммиование", коплиена "стили и идиомы"...
а щас все проще стало делать в языке, поэтому скучнее и книги проще..
451 2027265
>>27036
Я ничего не понимаю в ИБ или КБ, но мне кажется вопрос странным. Ведь если скачать себе на комп хотя бы тестовый файл с псевдовирусом, антивирус поднимет тревогу либо в момент скачивания, либо уже при запуске. Значит, и зашифрованный вирус будет отловлен при исполнении уже расшифрованных инструкций. Я это так вижу.
452 2027360
>>27265
Ну собственно у меня в этом и непонимание. Что мешает антивирусу в момент исполнения задетектить угрозу. Но тогда в чем смысл крипторов не понимаю. Они +- распространены
453 2027492
Подскажите хорошую среду разработки для c++. Пользуюсь линуксом. Если будет на русском это +
454 2027512
>>27492

> Если будет на русском это +


Обосрался
455 2027558
>>27492
Notepad++
456 2027567
>>27558
Здоровья твоей маме. Я поставил Eclipse
457 2027573
>>27360
Ничего не мешает, и они собственно так и делают.
Будь ты хоть миллион раз перешифованный, сделаешь что нибудь не по понятиям (прописка в автобуте, посягательство на какой-нить lsass) - значительно повысишь шансы улететь в карантин.

И наличие/отсутствие криптора здесь особой роли не играет. Основная цель криптора - обойти статик детект и эмуль, который используется только определённое время после старта проги
458 2027592
>>27573
Ну во для примера взять майнер. Он же ничего в рантайме плохого не сделает. Он по сути через интернет данные передает и считает что то. То есть в автобут не прописываеися, диск не шифрует и тд. Есои закриптовать его , то по сигнатуре до запуска антивирус не спалитт его, но спалит ли антивирус его уже после дешифровке по той же самой сигнатуре? Просто я не понимаю почему так не происходит, а если так происходит то в чем вооьще смысл крипторов?
459 2027668
>>27567
Пердоли будут жрать говно, выписывать кренделя и дрочить вприсядку, лишь не ставить нормальную ОС и нормальную IDE
460 2027672
Как же хочется вижуалстудию на линуксе.
461 2027685
Посоветуйте какое-то лёгкое чтиво по алгоритмам и структурам данных чтобы на собесе не обосраться. Читал только "Грокаем алгоритмы", но там слишком поверхностно, даже деревьев нет. Ещё рассматриваю "Unlocked algorithms" Кормена и курс на ютубе от МФТИ который тут форсили недавно. Мне не надо прям глубоко эту тему изучать, поэтому та самая книга Кормена, Кнут и курсы со степика и юдеми не подходят. В идеале чтобы это как-то к плюсам относилось, но и любой другой язык сойдёт.
462 2027686
>>27685
Задачи на литкоде решай
463 2027695
>>27686
Там есть задачи по типу "реализуйте сортировка_нейм" или только комплексные какие-то задачи? Я с литкода только пару задач решал, потому и спрашиваю как там это устроено, может к задачам нужны ещё знания какие-то.
464 2027697
>>27695
Там от совсем простого, до адово сложного. Плюс статьи
465 2027699
>>27697

> Плюс статьи


Они в самих задачах или где-то во вкладке на сайте? Вроде потыкал по кнопкам сейчас и не нашёл.
466 2027708
>>27672
винду уставаливай и wsl накатывай для своих пердолей
467 2027775
>>27685

>"Unlocked algorithms" Кормена


Не сильно отличается от "Грокаем...".
Недостаток подобных книг - это отсутствие реализаций структур данных. Много ли толку читать про графы, если ты даже примеры из книжки скомпилировать не сможешь?

>Посоветуйте какое-то лёгкое чтиво по алгоритмам и структурам данных


- Род Стивенс - "Алгоритмы. Теория и практическое применение", или, если 500 страниц для тебя слишком много,
- Вирт - "Алгоритмы и структуры данных".

Если тебе все же приспичит разобраться с реализацией каких-то структур данных, то
- Каррано, Причард - "Абстракция данных и решение задач на C++" или
- Уильям Топп, Уильям Форд - Структуры данных в C++
468 2027805
>>04069 (OP)
Почему после того как я начал сидеть в C++ треде он стал так популярен? Или мне кажется.
469 2027811
>>27685

>Грокаем алгоритмы


Такая пораша фууу
Индус ебанный писал. Бесит реально. Еще картинки там, и перевод говнище.
image.png28 Кб, 694x434
470 2027824
>>27805
Не знаю, сколько ты здесь сидишь, вот тебе график количеств постов в день за полгода. Здесь всегда на удивление высокая активность, один из самых живых тредов.
471 2027834
>>27824
В 2019 такого вроде не было.
472 2027863
>>27775

> Вирт - "Алгоритмы и структуры данных"


Это как раз то что мне и нужно было, спасибо. Реализацию с особенностями языка я загуглю и гляну вне книги. Задачки с литкода возьму. Возможно в будущем серьёзней этой темой займусь с последними двумя книгами, сейчас вряд ли потяну.
ef5749b85b9845eb2f757804361358cf.jpg10 Кб, 300x287
473 2028113
>>27592
Мне показалось или ты намекаешь на то, что я неясно выражаюсь?

Если

>>Он же ничего в рантайме плохого не сделает


тогда антивирь его и пропустит, не за что на бутылку сажать. Если ты конечно проц на 100% им грузить не будешь, тогда и самому юзеру станет понятно, что его поимели

Тебе это всё с какой целью надо кстати?
474 2028510
>>04069 (OP)
Как писать либы и делать на этом бабос?
475 2028512
>>28510
Устраиваешься в контору, которая любит попенсорц - и пишешь либы в ней
476 2028519
>>28512
Не понимаю какой смысл открывать код. Поясни пожалуйста.
477 2028522
>>28519
Потому-что закрытый код в 21 году нигде, кроме ебейшего энтерпрайза не используется.

И очень много либ есть с открытым кодом, но платные.

А полноценный попенсорц бесплатный - считай пиар и продвижение своих технологий в мир.
478 2028528
>>28522
Я понимаю например что Майкрософт подсаживает всех на свои продукты.

Как либа может быть платной если возможно просто скопировать код?
479 2028532
>>28528
Если ты нарушаешь лицензию в своем продукте на 3rdparty библиотеки - тебя можно в суде выебать в жопу.
480 2028541
>>28532
Так Я просто беру копирую код и говорю что сам его написал. Переписываю в крайнем случае. Или они проверяют совпадения?
481 2028553
>>28541
В коммерческой разработке это намного дороже, чем купить лицензию.
482 2028566
>>28553
Копи пейст кода стоит дороже лицензии?
483 2028572
>>28532
Лучше пятнаху чем писать голимые либы
484 2028577
>>28510
Берёшь и продаёшь библиотеку, делов то. Hyperscan до того как его Интел купило продавали свою либу, Visual Studio использует платный EDG в качестве фронтенда плюсов для всякого автодополнения, RAD Game Studios всю жизнь продавало свои изделия типа видеокодеков, сжимальщиков, телеметрии и тд. XPDF предоставляет двойную лицензию и нужно купить, если не хочешь попасть под GPL. Главное, как везде - найти нишу и сделать продукт, только продукт в твоём случае - библиотека.
485 2028578
>>28572
За либы дают больше?
486 2028614
>>04069 (OP)
В Яндексе стажировка по плюсам есть. Что спрашивают на собесе?
487 2028615
>>28578
Либа в особо крупном размере - от 15 лет
488 2028617
>>28615
Думал он про деньги.
489 2028652
>>28566
Копипейст нельзя. С учетом того, что бизнес обычно состоит больше чем из одного человека, в случае чего в суде будут свидетели.

Переписывать дорого, и потом самим поддерживать придется
490 2028662
>>28652
Поддерживать? Классы добавлять что-ли? Там же вроде ничего не должно сломаться.
491 2028666
>>28566

>кто-то случайно .pdb файлы наружу да или просто забыл случайно отключить дебажные символы в исполняемом файле или динамической библиотеке


>кто-то посмотрел и увидел символы из GPL-ной библиотеки


Вот и всё, привет судебные разбирательства.
492 2028672
>>28666
Если почистить?
493 2028673
>>28672
Если случайно этого не сделать?
494 2028678
Нашла его под кустом
495 2028679
>>28666
Да даже проще, кто-нибудь из сотрудников стуканет или по глупости разболтает и все.
496 2028697
У меня возникла ситуация, в которой мне приходится возвращать итератор из функции.
Можно ли сравнивать его с nullptr, чтоб это значение было как знак ошибки?
497 2028713
>>28697
Похуй, бросил исключение
image.png219 Кб, 1044x525
498 2028750
Жил-был СТРАУСТРУП. Шел обычный, скучный день. СТРАУСТРУП занимался рутинными вещами, такими как ебля своей трехсоткиллограмовой матери в зад. Только успев кончить матери в пердак и вынуть измазанный в говне хуй, СТРАУСТРУП услышал стук в дверь. Не заметив, что его мать умерла от сердечного приступа еще 3 дня назад, он пошел открывать дверь и вышел на веранду. На веранде никого не было. СТРАУСТРУП, было, уже начал подозревать СТЕПАНОВА в очередной подъебке, но вдруг, из под крыльца что-то вылетело и понеслось на него. От перевозбуждения СТРАУСТРУП уронил скрепленнеые скотчем очки на пол и смиренно ждал, что будет дальше. ЛЯМБДА, с огромной скоростью пролетела мима СТРАУСТРУПА, квадратной скобкой отпихнула его и заползла в дом, крепко заперев дверь. ЛЯМБДА ясно дала понять, что она приняла дом в качестве аргумента, но отказывается возвращать функцию, которая принимает ПИЗДЮЛИ в качестве аргумента и возвращает дом. ЛЯМБДА заползла на стул перед компьютером и свернувшись в уютный клубок, зашла на ДВАЧ. СТРАУСТРУП знал ЛЯМБДУ. По крайней мере, это слово он точно слышал, но не знал, что оно значит. Он очень удивился, когда недавно узнал, что ЛЯМБДУ включили в НОВЫЙ СТАНДАРТ, принятый полгода назад. СТРАУСТРУП понял, что надо выгнять ЛЯМБДУ из дома, потому что желание в очередной раз залезть на мамочку было слишком велико. Будучи первоклассным инженером, СТРАУСТРУП начал искать решение проблемы. Для разминки он решил повторить таблицу умножения до 12 на 12. Он 2 часа стоял на одном месте и смотрел в никуда, потея как свинья. Пока он боролся с таблицей умножения, из за угла вышел измазанный в говне АНДРЕЙ АЛЕКСАНДРЕСКУ и осмотрелся. Рядом стояли несколько зданий, включая психбольницу для буйнопомешанных и тюрьму. АНДРЕЙ задумался и понял, что в округе нет ни одного настолько больного и гнилого человека, чтобы продать ему свою книгу. Небрежно посвистывая, АНДРЕЙ удалился. СТРАУСТРУП закончил разминку и начал думать, как прогнать ЛЯМБДУ. Вдруг его осенило. Его дом был скомпилирован последней версией GNU G++, которая поддерживает ЛЯМБДУ. Именно поэтому, ЛЯМБДА и смогла проникнуть к нему в дом. СТРАУСТРУП понял, что ему нужна более старая версия G++, которая не поддерживала ЛЯМБДУ и тогда, при попытке компиляции дома, ЛЯМБДУ выкинет вместе с СООБЩЕНИЯМИ ОБ ОШИБКАХ. Но старую версию было негде взять. СТРАУСТРУП нанял ФУНКЦИОНАЛЬЩИКА СО ШТАНГОЙ за 5 тысяч рублей. Так как компьютера у них не было, ФУНКЦИОНАЛЬЩИК вначале написал на бумажке компьютер в 1 строчку НА ХАСКЕЛЕ:

Computer = Computer

ФУНКЦИОНАЛЬЩИК сожрал бумажку и высрал работающий системный блок с ВОДЯНЫМ ОХЛАЖДЕНИЕМ и предустановленой WINDOWS 7. На компьютере уже был установлен АЛАН ВЭЙК и ХАСКЕЛЛ ПЛАТФОРМ. Корпус был красного цвета, с наклейкой ТУРБО на прозрачной боковой крышке. Затем ФУНКЦИОНАЛЬЩИК написал в 2 строчки старую версию G++:

Compiler :: [C++SourceCode] -> [ExecutableFile]

Compiler source =(Link . Compile) source

СТРАУСТРУП взял исходники своего дома и запустил компиляцию. Компилятор начал дристать СООБЩЕНИЯМИ ОБ ОШИБКАХ. СТРАУСТРУП попытался разобрать первую строчку, но увидев такое, дальше лезть не решился(таблица умножения и так вымотала его):

std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::less<std::basic_string<char, std::map<std::basic_string<std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>,std::allocator<char> > const, std::basic_string<char, std::char_traits<char>,std::allocator<char> > > > >char, std::char_traits<char>, std::allocator<char> >,std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>,std::allocator<char> > const, std::basic_string<char, std::char_traits<char>,std::allocator<char> > > > >std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>,std::allocator<char> > const, std::basic_string<char, std::char_traits<char>,std::allocator<char> > > > >

Высрав 10 000 СТРОК СООБЩЕНИЙ ОБ ОШИБКАХ, компилятор скончался от ЛЕНИВЫХ ВЫЧИСЛЕНИЙ ПРЯМОЙ КИШКИ и из монитора вылетела ЛЯМБДА. Придерживая круглые скобки квадратными скобками, ЛЯМБДА в ужасе съеблась под ближайший камень. Ей еще долго не захочется принимать и возвращать значения. Довольный СТРАУСТРУП плюнул в руку, чтобы наслюнявить хуй и уже решился залезать на мамочку, но передумал и решил вначале запостить эту историю на ДВАЧ.
image.png219 Кб, 1044x525
498 2028750
Жил-был СТРАУСТРУП. Шел обычный, скучный день. СТРАУСТРУП занимался рутинными вещами, такими как ебля своей трехсоткиллограмовой матери в зад. Только успев кончить матери в пердак и вынуть измазанный в говне хуй, СТРАУСТРУП услышал стук в дверь. Не заметив, что его мать умерла от сердечного приступа еще 3 дня назад, он пошел открывать дверь и вышел на веранду. На веранде никого не было. СТРАУСТРУП, было, уже начал подозревать СТЕПАНОВА в очередной подъебке, но вдруг, из под крыльца что-то вылетело и понеслось на него. От перевозбуждения СТРАУСТРУП уронил скрепленнеые скотчем очки на пол и смиренно ждал, что будет дальше. ЛЯМБДА, с огромной скоростью пролетела мима СТРАУСТРУПА, квадратной скобкой отпихнула его и заползла в дом, крепко заперев дверь. ЛЯМБДА ясно дала понять, что она приняла дом в качестве аргумента, но отказывается возвращать функцию, которая принимает ПИЗДЮЛИ в качестве аргумента и возвращает дом. ЛЯМБДА заползла на стул перед компьютером и свернувшись в уютный клубок, зашла на ДВАЧ. СТРАУСТРУП знал ЛЯМБДУ. По крайней мере, это слово он точно слышал, но не знал, что оно значит. Он очень удивился, когда недавно узнал, что ЛЯМБДУ включили в НОВЫЙ СТАНДАРТ, принятый полгода назад. СТРАУСТРУП понял, что надо выгнять ЛЯМБДУ из дома, потому что желание в очередной раз залезть на мамочку было слишком велико. Будучи первоклассным инженером, СТРАУСТРУП начал искать решение проблемы. Для разминки он решил повторить таблицу умножения до 12 на 12. Он 2 часа стоял на одном месте и смотрел в никуда, потея как свинья. Пока он боролся с таблицей умножения, из за угла вышел измазанный в говне АНДРЕЙ АЛЕКСАНДРЕСКУ и осмотрелся. Рядом стояли несколько зданий, включая психбольницу для буйнопомешанных и тюрьму. АНДРЕЙ задумался и понял, что в округе нет ни одного настолько больного и гнилого человека, чтобы продать ему свою книгу. Небрежно посвистывая, АНДРЕЙ удалился. СТРАУСТРУП закончил разминку и начал думать, как прогнать ЛЯМБДУ. Вдруг его осенило. Его дом был скомпилирован последней версией GNU G++, которая поддерживает ЛЯМБДУ. Именно поэтому, ЛЯМБДА и смогла проникнуть к нему в дом. СТРАУСТРУП понял, что ему нужна более старая версия G++, которая не поддерживала ЛЯМБДУ и тогда, при попытке компиляции дома, ЛЯМБДУ выкинет вместе с СООБЩЕНИЯМИ ОБ ОШИБКАХ. Но старую версию было негде взять. СТРАУСТРУП нанял ФУНКЦИОНАЛЬЩИКА СО ШТАНГОЙ за 5 тысяч рублей. Так как компьютера у них не было, ФУНКЦИОНАЛЬЩИК вначале написал на бумажке компьютер в 1 строчку НА ХАСКЕЛЕ:

Computer = Computer

ФУНКЦИОНАЛЬЩИК сожрал бумажку и высрал работающий системный блок с ВОДЯНЫМ ОХЛАЖДЕНИЕМ и предустановленой WINDOWS 7. На компьютере уже был установлен АЛАН ВЭЙК и ХАСКЕЛЛ ПЛАТФОРМ. Корпус был красного цвета, с наклейкой ТУРБО на прозрачной боковой крышке. Затем ФУНКЦИОНАЛЬЩИК написал в 2 строчки старую версию G++:

Compiler :: [C++SourceCode] -> [ExecutableFile]

Compiler source =(Link . Compile) source

СТРАУСТРУП взял исходники своего дома и запустил компиляцию. Компилятор начал дристать СООБЩЕНИЯМИ ОБ ОШИБКАХ. СТРАУСТРУП попытался разобрать первую строчку, но увидев такое, дальше лезть не решился(таблица умножения и так вымотала его):

std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::less<std::basic_string<char, std::map<std::basic_string<std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>,std::allocator<char> > const, std::basic_string<char, std::char_traits<char>,std::allocator<char> > > > >char, std::char_traits<char>, std::allocator<char> >,std::basic_string<char, std::char_traits<char>, std::allocator<char> >,std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>,std::allocator<char> > const, std::basic_string<char, std::char_traits<char>,std::allocator<char> > > > >std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>,std::allocator<char> > const, std::basic_string<char, std::char_traits<char>,std::allocator<char> > > > >

Высрав 10 000 СТРОК СООБЩЕНИЙ ОБ ОШИБКАХ, компилятор скончался от ЛЕНИВЫХ ВЫЧИСЛЕНИЙ ПРЯМОЙ КИШКИ и из монитора вылетела ЛЯМБДА. Придерживая круглые скобки квадратными скобками, ЛЯМБДА в ужасе съеблась под ближайший камень. Ей еще долго не захочется принимать и возвращать значения. Довольный СТРАУСТРУП плюнул в руку, чтобы наслюнявить хуй и уже решился залезать на мамочку, но передумал и решил вначале запостить эту историю на ДВАЧ.
499 2028766
>>28750

>измазанный в говне АНДРЕЙ АЛЕКСАНДРЕСКУ


измазанный в шаблонах
500 2028771
>>28750

>Довольный СТРАУСТРУП плюнул в руку, чтобы наслюнявить хуй и уже решился залезать на мамочку



От жары не могу кодить. Может пойти охотиться на тянок?
501 2028775
>>28771
Лучше залезь на мамочку
502 2028780
>>28775
Её нет со мной больше.
503 2028782
>>28697
>>28713

>2021


>Возвращать ошибочные значения не в optional/tuple

504 2028786
>>28750
лол))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
505 2028804
>>28782
Иногда исключения всё же нужны.
мимо
506 2028817
>>28804
Конечно - в исключительных ситуациях. А не когда надо вернуть пустой итератор.
507 2029091
можно ли как то установить лимит на загрузку cpu и gpu?
508 2029114
>>28113

>Тебе это всё с какой целью надо кстати?


Я раньше думал, что антивирусы это какие то ебы, которые дохуя по умному работают, а сейчас стал интересоваться и читать что да как, и удивляюсь как все в некоторых моментах очевидно что ли. Я просто ожидал прочитать что антивирусы это такая хуйня, которая делает проникновения вируса почти невозможным и надо очень постараться чтобы кого то заразить, а сейчас все больше складывается впечатление, что нужно просто написать вирус с нуля самому и его никто не задетектит (до определенного времени конечно)
509 2029154
>>29114
Напишешь вот так сам, используя стандартные техники, а потом словишь дженерик детект.
Но всё конечно возможно, сложность и цена вопроса только со временем возрастает, с появлением всяких антиэксплоитов/антируткитов. Зачастую настолько, что уже что-то нормальное в одну клаву и не сделаешь
510 2029186
Есть такая задачка: на вход программе подаётся путь к файлу размером до 4 ТБ, содержащему слова длиной до 32 символов, нужно спарсить контент и вывести в стдаут 100 самых часто встречающихся слов. Какие тут есть подводные камни и как с ними бороться?

Пока выделил следующие:
- Боттлнек на I/O. Как с этим быть? Считывать большими чанками по несколько Мб?
- Парсинг. Стоит, наверное, проверить, можно ли (и имеет ли смысл) что-то попараллелить.
- Учёт количества вхождений. Наивный подход - std::unordered_map<слово, счётчик>. Сразу возникает мысль, что при парсинге большого файла с огромным количеством разных слов может тупо не хватить памяти под мапу. Также нужно будет ещё как-то трекать именно топ-100 слов, не сортировать же всю мапу после парсинга.

Также разрешено использовать буст. Буду очень благодарен за любые советы и наводки, анончики!
511 2029212
>>29186

>- Боттлнек на I/O


А какой у него боттлнек?
Он же поток, он никогда не пытается загрузить весь файл, у него буфер.

>std::unordered_map<слово, счётчик>. Сразу возникает мысль, что при парсинге большого файла с огромным количеством разных слов может тупо не хватить памяти под мапу


Не может, а точно не хватит. Столько оперативки не бывает, чтобы все возможные слова поместить.
512 2029408
>>29186
1. Покупаешь рамы на >4 терабайта
2. Используешь std::unordered_map
3. Радуешься
513 2029441
>>29154
Дженерик детект это типо по поведению?
514 2029523
>>29212

>Столько оперативки не бывает


Очевидно - создаешь рядом еще файл на 4Тб, помещаешь слова туда.
515 2029526
>>29186
О, мне такую задачку в яндексе дали, решил через Multimap, и они даже зачли
516 2029786
>>29186

>- Боттлнек на I/O. Как с этим быть? Считывать большими чанками по несколько Мб?


mmap на nix'ах. На виндах тоже что-то есть, но я хз
517 2029934
>>29186

>- Боттлнек на I/O. Как с этим быть? Считывать большими чанками по несколько Мб?


>- Парсинг. Стоит, наверное, проверить, можно ли (и имеет ли смысл) что-то попараллелить.


Пох. Займет пренебрежимо мало.

>- Учёт количества вхождений.


>может тупо не хватить памяти


Поточный алгоритм.
518 2029967
>>29523

>Очевидно - создаешь рядом еще файл на 4Тб, помещаешь слова туда.


Или берёшь готовый файл в виде любой key-value базы (ту же leveldb) и фигачишь слова/вхождения туда, не зная бед.
519 2030104
>>29526

> решил через Multimap


Разве он в этой задаче не уступает unordered map или даже просто map?
520 2030132
Сап, почему последний элемент G выводится с позиции 3,0, хотя должен с 0,2? Остальное работает правильно, как это пофиксить?
https://onlinegdb.com/HkjeXzo_u
521 2030577
>>30132
Это можно сделать намного проще стандартной либой.
522 2030985
>>29186
trie же
523 2031071
Почему компиляция исходников и гитхаба такая боль? 120 блядь файлов, почему нельзя просто начтать компиляцию с файла с main? Почему блядь вместе с проектом txt с 161 строкой как собирать этот проект. Какой же пиздец
524 2031075
Как опубликовать программу в Visual Studio? Получить .exe файл то есть. Можно, конечно, и из папки Release стянуть, но если программа многофайловая или нужно создать установщик, это не подойдёт.
525 2031077
>>31075

> но если программа многофайловая


Типо dll? просто копируй их вместе с exe

> нужно создать установщик, это не подойдёт.


Почему? Установщик это же exe и данные, которые он распаковывает. В чем проблема?
526 2031078
>>31077
Проблема в том, что я хочу красивую кнопку "Опубликовать", на которую можно нажать и программа будет готова для использования конечным пользователем. Как то же это делают разработчики, а как - я не знаю.
527 2031079
>>31078
Не понимаю. exe готово к использованию. Обычно если используются dll, то exe просто лежит в папке с кучей dll. установщик просто exe, dll и всякие другие файлы копирует в нужные ему папки. Можешь сам писать установщик, но нахуй надо. Просто dll копируй и все если для себя пшешь
528 2031099
Как собрать эту хуйню https://github.com/ckolivas/cgminer, если там нет CmakeLists? Памагите. Как разобраться?
529 2031110
>>31078
Кнопку где?
Ты можешь сделать установочный файл .msi. Есть плагин для visual studio. Есть отдельные утилиты, чтобы делать установщики типа InstallShield.
Ещё ты можешь сделать пакет для менеджера типа chocolatey или vcpkg.
Самый простой для тебя способ сделать exe архив из содержимого папки release (если у тебя проект простой и не тянет сторонние зависимости и либы).
530 2031115
>>31099
Ну проект сделан на make, как и всё остальное в лялексе.
В файле README подробно написано как собрать.
531 2031122
>>30577
Как?
532 2031132
>>30577
Просто я так понимаю, что алгоритм работает следующим образом:
Нашли К, если после К идёт I, то ок, потом I-N, N-G, G-? Дойдя до последнего элемента, алгоритму не с чем сравнивать G и он его не выводит. Я добавлял условие для поиска связи для элеммента
if(i >= sizeof(buf2)-1 && (buf2[i-1] == arr[j][k] (и так далее), но на выходе всё-равно получаю говно
Если ты знаешь как это сделать проще, то подскажи плз, дедлайн горит
533 2031136
>>31110
Спасибо!
534 2031296
>>31115
В ридми все для мингв. А если я хочу в visual studio собирать?
535 2031326
зацените какую приложуху для диплома сделал с помощью SFML
537 2031336
>>31296
Разработчики такой сценарий в свой проект не закладывали. Тебе в любом случае придётся поставить mingw или cygwin, чтобы у тебя был GNU тулчейн, необходимый для сборки (компилятор gcc, сборщик make, генераторы скриптов autoconf/automake и отладчик gdb).
Саму студию под этот тулчейн настраивать крайне геморно, так что используй вместо студии VSCode.
538 2031340
>>31327
У меня такая приложуха была в виде курсовой на 3 курсе. Как-то слабовато для диплома.
539 2031343
>>31336
А почему нельзя как то этот make проект в vcxproj конвертировать? как то очень странно, что для компиляции c++ проекта приходится дрочиться с разными компиляторами. А можно просто в vs создать проект и просто все исходники ctrl c ctrl v сделать? Будет работать?
540 2031357
>>31327
на 6.png стрелка глючит
541 2031359
>>31343
Ну потому что make чисто под линукс и его утилиты. CMake кроссплатформенный и он из промежуточного представления CMakelists делает проекты/скрипты под разные тулчейны и IDE.

Одних исходников в проекте мало, ещё нужны правила сборки - указать список внешних зависимостей (библиотек, заголовков и т.д.), указать какие файлы надо компилировать, указать флаги для компилятора (стандарт c++, уровень оптимизации, архитектуру и т.д.), указать во что нужно компилировать (исполняемый файл или библиотека), указать значения макросов, используемых для условной компиляции.
Вот это вот всё находится в Makefile / CMakelists.txt файлах. Если проект маленький, то содержимое можно ручками перенести в vcxproj. Но для таких проектов как у тебя это нереально.
542 2031394
>>31340
программа второстепенна. Там надо алгоритмы на графах реализовать. Метод ветвей и границ, метод потенциалов и т.д. И чтоб при этом результат визуализировался со всеми данными
543 2031395
>>31357
там нечастое обновление просто, 15-20 кадров в сек
544 2031400
>>31359

> Одних исходников в проекте мало, ещё нужны правила сборки - указать список внешних зависимостей (библиотек, заголовков и т.д.),


Ну это же в vs делается. Пути к хедерам где то в настройках проекта указываются, зависимости через vcpkg установлю.

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


Это же само при создании проекта делается.
545 2031464
а)
546 2031465
>>31326

> File not open


MGIMO finished?
547 2031596
>>31327
Сглаживание подвези. Без него выглядит невероятно уёбищно.
548 2031607
>>31327

>.grph


Почему не просто dot формат?
549 2031640
>>31607
Это случайно не тот, где нельзя указывать координаты?
550 2031654
>>31596
Кстате да. Благо оно там в одну строчку включается.
551 2031691
>>31640

>координаты


Ты вручную их задаёшь что-ли?
552 2031749
>>31400
Как оно само поймёт что проект состоит из нескольких vcxproj и в какой последовательности они собираются и линкуются? Никак. Ещё в makefile есть разные таргеты под разные платформы с cuda и без. Ещё там pre и postbuild скрипты с использованием чисто лялексных команд типа touch, grep, tar, ldconfig, cp, которые тебе на виндовский эквивалент нужно будет ручками переписывать.

Короче в проекте больше, чем laba1.cpp, ты задолбаешься все настройки переносить из Makefile в vcxproj. А ещё его надо потом обновлять как-то до последней версии.
553 2031751
Прошёл собес в одну компанию, попросили рассказать о пет проектах (игрушки на sfml) и интересах, после чего предложили место не на c++ джуна, а на c++/ue4 джуна. Сказали что всему научат и покажут в плане движка, если мне это интересно и я вижу себя в этой области. Простые c++ девы там, как я понял, занимаются бекендом и лаунчерами. В итоге надо выбрать что-то одно. Какие подводные в варианте с UE4? Я его открывал пару раз, но толком нихуя не знаю как на нём работают в компаниях, возможно это интереснее чем пердолинг бекенда и кьют. Что думаете и что бы вы выбрали?
554 2031776
>>31749
Из этого следует, что всем проектам на мейкфайлах место в ебучих 80ых годах
555 2031777
>>31751
Пока молодой - обязательно попробуй гейдев
556 2031780
>>31751

>о пет проектах (игрушки на sfml)


Дай гитхаб посмотреть
557 2031814
>>31776
Ну vcxproj тоже место на помойке. Частично привязан к оси, ide и тулчейну, да ещё и в XML формате.
Ты между сортами говна мечешься.
558 2031818
>>31751
Бери ue4, за него деньги нормальные платят.
559 2032007
>>31776
Что тогда?
image.png18 Кб, 963x188
560 2032265
Что я делаю не так? Прогга вылетает, после того, как я выделяю текст.
561 2032325
>>32265

>вылетает


Может обращение к нулевому указателю, может проехался по памяти, может другое. Дебаггер должен указать точное место, где происходит "вылет".
562 2032429
>>31814
vcxproj - нажал одну кнопку и работает. Это именно так, как должна работать система сборки. И никак иначе.
563 2032577
>>32429
Чёт ты попутал. В лялексе и большинстве современных IDE нет под него кнопки. А ещё он к версии студии привязан и в старой студии его не открыть, а в новой он конвертируется с ошибками (весело, да?). Тогда любители "одной кнопки" ставят себе ещё одну студию (естественно на виртуалку, чтобы говном не измазаться).

Если и есть волшебная кнопка, то называется она CMake.
564 2032652
>>32577

> В лялексе и большинстве современных IDE нет под него кнопки.


В который искренне радуюсь, что под это дерьмо мне не надо писать.

> Если и есть волшебная кнопка, то называется она CMake.


Симейк это настолько ублюдочное дерьмо, что прям очень хорошо говорит об экосистеме С++ как таковой. Когда такой сблев стал де-факто стандартом.

Вообще, как же охуенно, что мы новые проекты на работе начали на неткоре писать
565 2032678
>>04084
Привет
566 2032698
Не могу понять вопрос. Обьясните пожалуйста тему. "В качестве образца по отношению к объекту выступает?"
изображение.png1,4 Мб, 1240x698
567 2032700
На сколько реально вкатиться в плюсодэвы без вышки? Мне другие языки вообще не интересны, а в плюсах я хочу знать все библиотеки, все фреймворки, все до мельчайших подробностей.
568 2032702
>>32700
Берешь и вкатываешься. Читаешь книги, пишешь код. Что еще тебе надо?
569 2032703
>>32698
Класс.
570 2032704
>>32700
Реально. А что мешает собственно? Если ты безвольный который не хочет зубрить книги по языку, то он тебе не нужен.
571 2032706
>>32703
Неправильный ответ. Я сам вопрос не понимаю.
572 2032707
>>32702
Я же не спросил как, я про мои шансы. Вдруг тут кто еще вкатывался без профильной вышки (т.е. физматовской или айтишной
>>32704

> А что мешает собственно?


Просмативаю вакухи жунов и стажеров, там в половине случаев хотят вышку. Я то конечно могу спиздануть...
573 2032708
Суп плюсач. Хз куда вопрос задать, но нутро подсказывает что иенно плюсовики знают ответ.

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

Так вот, если брать аниме, мне интересна наверное обработка видео, улучшение качества и быть может кодирование. А именно, например, улучшение качества видео, апскейлы, восстановление, вот это всё.

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

Спасибо.
574 2032711
>>32707
Ну так ты не сказал возраст, пол, наличие времени и денег для учебы и т.п. На основе чего рассчитывать шансы?
575 2032712
>>32707
Просто звонишь им и говоришь "Я самоучка, хочу пройти собеседование, дайте тестовых заданий" Тебя возьмут. Им не бумажка нужна, а РАБОТИНК
576 2032714
>>32708
Где связь между монтажем видео и программированием?
577 2032715
>>32711
Обычный вкатун 31 лвл, который считает С/C++ языками богов.
578 2032716
>>32715
Если ты выучишься по книжам, курсам, гайдам индуса с ютуба, то тебя возьмут на работы без вышки. Если конечно ответишь на вопросы и пройдешь тестовое задание на собеседовании
579 2032720
>>32714
Не монтаж. Кодирование, апскейл, стриминг быть может. Можно, конечно, еще сюда нейроночки прикрутить, чтобы улучшать качество старого онеме. Но здесь понятно куда копать.
580 2032724
>>32706
Ответ правильный, это в твоём тесте ошибка.
581 2032725
>>32703
Ответил ты правильно, но я самого вопроса не понимаю. Можешь обьяснить вопрос пж?
582 2032732
>>32652
Шёл 2021 год, мы продолжали писать десктоп на с++?
583 2032734
>>32698
Вероятно в тесте ошибка. Правильно будет "В качестве образца по отношению к классу выступает?"
584 2032736
>>32732
Твои предложения?
585 2032741
>>32712
Просто звонишь им и говоришь "Я самоучка, хочу пройти собеседование, дайте тестовых заданий" Тебя возьмут. Им не работник нужен, а РАБ

пофиксил
586 2032747
>>32736
Перекатыйвайся полностью в C#, если тебе нравится студия и дотнет (кор).
У меня проект кроссовый и мультиязычный и я даже не представляю как его без гомоебли в студии можно сделать (микросервисы - неткор, фронт - жопаскрипт, бэк и железо - с/c++/asm/cuda, ещё пихон под всяко разно).
587 2032752
>>32741
Ну я имею в виду что от программиста нужны знания и умения, а не диплом.
588 2032754
>>32707
Апплаишься на галеру и год там веслаешь. Потом может в нормальную разработку выплывешь. Заодно поймёшь что такое "программирование".
589 2032755
>>32754

> Апплаишься на галеру и год там веслаешь.


А существуют плюсогалеры?
590 2032756
>>32754
А что, на плюсах есть галеры?
591 2032759
>>32752
Если у тебя нет диплома (да любой бумажки об образовании), значит ты не хочешь учиться. А если ты джун, который не хочет учиться, то зачем тебя вообще на собес приглашать?
592 2032762
>>32756
>>32755
Берёшь, набираешь в поиске C++, epam, luxoft, #galera_name. И о чудо, вакухи сразу находятся. Галера она вообще не про языки, а о том чтобы гребцов продавать. Ты можешь туда прийти на жопаскрипт а заниматься вообще чем угодно.
изображение.png20 Кб, 380x440
593 2032781
Спасибо за ответы, пойду дальше совершенствоваться и пытаться вкатиться. Надеюсь это не тонкий троллинг
594 2032790
>>32759
Я не хочу учиться в учебном заведении т.к. считаю что их подход к обучению неэффективный, а знания устаревшие. Вопросы?
595 2032791
>>32652

>Симейк это настолько ублюдочное дерьмо, что прям очень хорошо говорит об экосистеме С++ как таковой. Когда такой сблев стал де-факто стандартом.


В чем проблема Cmake?
596 2032815
>>32791
C++make
597 2032818
>>32790
А устаревшие знания лучше чем их отсутствие?
598 2032820
>>32818
Устаревший знания я и дома получу пупсик., но быстрее и дешевле.
599 2032833
>>32790
Я конечно понимаю, что у нас к сожалению, почти везде есть устаревшие знания, но я что то очень сомневаюсь, что ты знаешь все лучше, чем тебе могут объяснить в какой нибудь чебышевке, пми вшэ/пми
600 2032888
Где можно скачать слитые курсы по c++ (там в текстовом варианте типа книги) с сайта ravesli точка ком?
60a169b7ddce1368723380.jpeg115 Кб, 156x1735
601 2032899
Здравствуйте. Какие книги по C++ актуальны на 21 для обучения с нуля? Книги должны быть на русском языке, а их список в хронологическом порядке изучения (от начальных до более сложных). Знаний в области программирования нет вообще.
Насколько актуален список книг для обучения на картинке?
602 2032929
>>32791
В том, что к 15 существующим стандартам придумали 16ый. И, судя по всему, специально придумывали максимально больные люди

>>32732
Щас вообще бэкенд на аспнет коре пишу, вместо ваших этих С++ов
image.png61 Кб, 974x774
603 2032932
Есть ли разница и как лучше возвращать структуры из функции? Например есть код, в котором мне нужно получить заполненную структуру данных просто struct с переменными. И вот я могу сделать функцию, которая будет возвращать MyStruct/const MyStruct&, или сделать воидовую функцию, которая будет принимать MyStruct& и там его заполнять. Я чёт пытался сам пример себе собрать, но не понимаю до конца, что конкретно происходит с структурами, когда я референсы на них возвращаю из функций? В первых двух вариантах с пикрила в функции и в вызывающем коде адреса у структур разные. Это типа что, на return'е функции структура копируется в памяти и в вызывающем коде референс уже на копию? При этом у struct3 в вызывающем коде адрес такой же, как и в создающей функции
604 2032934
>>32929

> И, судя по всему, специально придумывали максимально больные люди


Можно конкретики?
605 2032938
>>32934
Открой любой cmake файл, хули. И сравни эти кракозябры с ХМЛем студии, который читаем и понятен
606 2032950
>>32938
https://github.com/libarchive/libarchive/blob/master/CMakeLists.txt

например - говнолиба из нашего прода
607 2032965
>>32950
Боюсь представить каких размеров будет эквивалентный vcxproj (проект из одного файла это 5kb текста). А ещё ты, наверное, очень любишь переводить проекты на новую студию каждые 2 года (казалось бы открыл sln и работай, а вот хуй).
608 2032970
>>32965

> А ещё ты, наверное, очень любишь переводить проекты на новую студию каждые 2 года (казалось бы открыл sln и работай, а вот хуй).


Угу, переезжали, без проблем. И на 22 переедем.
609 2032971
>>32929
Бэкенд много на чём пишут, в чём посыл то твой? У меня проект текущий имеет несколько разных бэков под разные конфигурации. Один бэк на шарпе, второй на плюсах.
610 2032973
>>32970
Зачем это делать, если можно не делать? Открыл cmake, выбрал версию студии и нажал generate. Всё.
611 2032974
>>32973

> Зачем это делать, если можно не делать? Открыл cmake, выбрал версию студии и нажал generate. Всё.


Зачем вообще все эти танцы с симейком, когда просто открыл студию и все?

Раз в 2-3 года одному программисту нажать Upgrade на солюшен не убудет, лишь бы не ебаться с симейком
612 2032976
>>32974
Так в крупных проектах апгрейд не срабатывает автоматом. Нужно закатывать рукава и разгребать говна в proj файлах.
613 2032979
>>32976
Закатать рукава нужно 1 раз, сделать все нормально, и дальше после этого проект взлетает автоматически.

Когда мне дали анальную легасню из студии 2012 - я ее уже перевел на 2015, 2017 и 2019. Первый апгрейд некоторое время сожрал небольшое (2-3 дня афаик, и то большая часть проблем - с расширениями языка и 3рдпатями) - дальше мы апгрейдились одной кнопкой.
614 2032983
>>32979
Ну я в таком не пачкаюсь. Беру виртуалку и на неё ставлю легаси студию, легаси проект и весь легаси тулчейн. Для говна должна быть отдельная банка с плотной крышкой.
615 2032984
>>32983
Когда сказано, что говно надо активно девелопить, после того, как оно уже засохла - ты достаешь леечку и говно начинаешь размачивать, хули еще делать
616 2032988
>>32984
Ну так тебе код надо переписывать, а не devops переделывать. Ты не в ту сторону воюешь, братан.
617 2032989
>>32988
Я уже свое отвоевал, и у меня охуенный проект, который компилируется 1 кнопкой сразу после git clone.

Полпроекта я там тоже переписал в свое время, с охуительными коммитами вида +7 -27000
618 2032992
>>32989
У нас проект клонируется, компилируется, тестируется и отгружается одной командой (под 3 разных оси/платформы на выбор). Всё делается не выходя из уютненького VSCode.
619 2033012
>>32938
Нахуй мне его читать. Это компилятор/линковщик пусть его читает
Я вижу, что cmake кроссплатформен, под кучу ос и компиляторов работает. Заебись же. Что не нравится?
620 2033377
Как долго gcc из исходников собирается? Уже минут 10 жду
621 2033392
>>33377
Очень долго. Надеюсь, ты не запыл с -j запустить.
622 2033394
>>33377
Всего лишь 10 минут?) Несколько часов не хочешь?))0
изображение.png19 Кб, 650x292
623 2033398
>>33392
>>33394
ХУй знает че я забыл, че нет.
624 2033432
В инструкции говорят про make файл. ЧТо из этого оно?
изображение.png5 Кб, 1359x174
625 2033498
Кто то знает как фиксить?
626 2033678
>>32932
Толсто. Почитай про стек, кучу и висячие ссылки
627 2033745
Как добавить папку в проект? Не просто чтобы ее файлы в проекте оказались, а чтобы я мог писать include "foldername/file.cpp". Потому что если копировать папку впроект и кликнуть Добавить в проект, то добавляются только файлы
628 2033769
Короче я рот ебал этих мейков, симейков. Руками быстрее все все подключил и скомпилировал.
изображение.png69 Кб, 726x757
629 2033799
>>33769
Ладно, не скомпилировал. Что делать с этим? Я просто не понимаю как узнать что не так по этим краказябрам. Некоторые штуки даже поиском по файлам не находятся
630 2033804
Ассемблер работает только с регистрами или тоже может обращаться к ячейкам памяти? В сях не сделали доступ к регистрам из-за кроссплатформености? Я видел пример кусочка кода, который компилятор преобразовал в ассемблерный код, и там тоже использовались регистры. То есть программа постоянно взаимодействует с регистрами, а не только когда мы это явно укажен ассемблерной вставкой? Правильно ли я понял, что в этом случае получается, что сама по себе ассемблерная вставка магическим образом не ускорит производительность, она просто дает возможность программисту максимально оптимизировать код?
1538557045537.jpg92 Кб, 1200x803
631 2033836
Есть ли какой то быстрый способ вычитания одного контейнера из другого? То есть в результате должен получиться контейнер с элементами, которые по одному разу в каждом контейнере, то есть чтобы было 0 совпадений по элементам? Есть ли какие то готовые быстрые алгоритмы, чтоб не приходилось решать тупым перебором m x n раз?
632 2033882
>>33799
Не разрешенный внешний символ - это значит либо где-то инклуда не хватает, либо не подключена/криво подключена библиотека.

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

>Некоторые штуки даже поиском по файлам не находятся


Линковщик работает уже с обработанными файлами - ему с кракозяброй удобнее, чем с исходными именами.
633 2033895
>>33836
Хуячишь две unordered_set из своих контейнеров, профит.
634 2033905
>>33836
set_difference не подходит?
635 2033910
>>33905
Мб элементы несравнимы
636 2033960
>>33804
Может, на x86 есть сегментные регистры для доступа к памяти base:offset. Сейчас используют линейные адреса. На других архитектурах есть инструкции для загрузки данных из памяти.

>В сях не сделали доступ к регистрам из-за кроссплатформености


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

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


Т.к. я нюфаг, то не ебу. Скорее всего ассемлерная вставка даст прирост производительности там где требуется задействовать векторизацию или специфичные команды конкретной архитектуры. К счастью, популярные компиляторы могут в автовекторизацию и оптимизацию под конкретные архитектуры.
Вообще встроенный ассемблер не стандартизирован, поэтому, например, в gcc и msvc способ записи отличается.
1621278692136.png273 Кб, 645x729
637 2033965
638 2034311
Зачем нужны итераторы в stl, если можно перегрузить [], вложив туда всю необходимую логику для работы с данным типом данных?
639 2034331
>>34311
чтобы принимать итераторы в алгоритмы, а не твой VasyanContainer
640 2034611
>>34311
И как ты перегрузишь [] для мепа чтобы весь его перебрать?
641 2034751
Какие площадки для поиска работы в Европе (в офисе и удалёнки) вы используете?
642 2034771
>>34751
stackoverflow jobs
/r/cpp job thread
643 2034858
>>34611
template<typename T>
map& operator[] (int index) {
map<T>::iterator it = _mapname_.begin();
while(index-- != 0) {
it++
}
return *it;
}
644 2034986
>>34751
linkedin
645 2035004
>>34858
Гениально, отправляй заявку для стандарта 23.
646 2035148
>>32708
Когда-то давно для диплома для пробегания по алгоритмам и некоторым основам сжатия я использовал Data Compression: The Complete Reference. Ещё по работе для некоторых вещей связанных с анализом мпега читал Video Demystified: A Handbook for the Digital Engineer. Ну и, естественно, просматривал исходники ffmpeg и GStreamer. Но вот прямо про полную с нуля теорию и практику сжатия (особенно в видео) я хз, это реально нужно знать матан. Сам я кодер который проводит нетривиальный rate-distortion анализ с более-менее сложным форматом даже боюсь начать писать.

Но вот недавно у меня была прихоронена ссылка про LZ-кодирование, может с неё можешь как-нибудь начать: https://glinscott.github.io/lz/index.html
792px-Hassediagramofpowersetof3.svg.png23 Кб, 792x600
647 2035154
>>33910
То есть частичный порядок у тебя. Ну вот такой алгоритм:

>Строишь диаграмму Хассе для обоих контейнеров


>Проводишь топологическую сортировку каждого из них


>???????


>Не знаю, не придумал

image.png3,3 Мб, 853x1280
648 2035255
Здравствуйте!
При выполнении метода Token::tokenTypeToValue с параметром TokenType::empty метод не находит параметр среди первых членов пар из вектора Token::tokenTypeToString_pairs, хотя там есть пара {TokenType::empty, ""}. Причём отладчик говорит, что внутри метода Token::tokenTypeToValue вектор Token::tokenTypeToString_pairs имеет размер 0, то есть пустой. Но выше вызова этого метода находится определение этого вектора. Странно, почему так?

https://pastebin.com/MThvHGFf - Token.h
https://pastebin.com/nxHCL8qS - Token.cpp
649 2035261
>>35255
Чё то глянул на свой код и теперь думаю, как вы в нём вообще разберётесь)
Struct. Помогите, пожалуйста 650 2035278
Пользователь вводит информацию о каждом человеке: его имя; секцию, которую он посещает; год, когда человек вступил в секцию. При этом один и тот же человек может посещать одновременно несколько секций. После того, как пользователь ввёл информацию о всех людях, программа лолжна вывести список тех людей, которые посещают более двух секций в течение одного года.

Информация о человеке должна быть записана в struct


Вот создал я структуру
struct Human {
string name;
int year;
string section;
};


А как посчитать кол-во section с разными значениями и вывести имя этого человека?
651 2035287
>>35261
https://ideone.com/EqAmWc
Всё работает. Возможно ты обосрался с порядком создания static объектов в другом месте.
652 2035292
>>35287
А где это место может быть?
Перед main() находится объявление объекта класса TokenStream:
TokenStream tokenStream;

Это объявление вызывает конструктор TokenStream по умолчанию:
TokenStream::TokenStream()
: isFull{false}, buffer{TokenType::empty} {}


Этот конструктор вызывает конструктор Token:
Token::Token(TokenType type)
: type{type} {
value = tokenTypeToValue(type);
}


Этот конструктор вызывает статический метод tokenTypeToValue, который в файле Token.cpp был представлен и который выбрасывает domain_error.
Не понимаю, где здесь ошибка.

Класс TokenStream:
class TokenStream {
public:
TokenStream();
Token get();
void putback(Token t);
void ignore(TokenType toThis);
private:
bool isFull;
Token buffer;
};
652 2035292
>>35287
А где это место может быть?
Перед main() находится объявление объекта класса TokenStream:
TokenStream tokenStream;

Это объявление вызывает конструктор TokenStream по умолчанию:
TokenStream::TokenStream()
: isFull{false}, buffer{TokenType::empty} {}


Этот конструктор вызывает конструктор Token:
Token::Token(TokenType type)
: type{type} {
value = tokenTypeToValue(type);
}


Этот конструктор вызывает статический метод tokenTypeToValue, который в файле Token.cpp был представлен и который выбрасывает domain_error.
Не понимаю, где здесь ошибка.

Класс TokenStream:
class TokenStream {
public:
TokenStream();
Token get();
void putback(Token t);
void ignore(TokenType toThis);
private:
bool isFull;
Token buffer;
};
653 2035295
>>35292
Общая идея такова, что статические объекты (static Token::tokenTypeToString_pairs) и объекты в глобальной области видимости (TokenStream) создаются до вызова main(). При этом порядок создания/инициализации определён только в рамках единицы трансляции (файл cpp). Так как у тебя они в разных файлах, то статические члены Token видимо создаются после конструктора TokenStream.
Если не понятно, то просто перенеси TokenStream в main(). Скорее всего отпустит.
654 2035297
>>35295
Я перенесу TokenStream tokenStream в main(), но это потребует архитектурных изменений. Впрочем, они и так напрашивались.
Спасибо за совет!
655 2035435
Возврат указателя на переменную, созданную локально внутри функции, не гарантирует мне получение ожидаемого значения при разыменовании указателя, так как lifetime переменной соответствует телу функции? То есть указатель не продлевает время жизни переменной, на которую указывает? А const указатель? Про const ссылку знаю
656 2035439
>>35435
Да. Конст/неконст - похуй.
657 2035463
>>35439
Спасибо. Еще вопрос. У конст ссылки мы не можем взять адрес, так как она становится rvalue?
658 2035509
>>35463
Можно. Такое делают, когда в operator= на самоприсваивание проверяют, вроде if(this != &rhs){...}. А такие слова, как rvalue, вообще забудь.
659 2035557
>>35435
Указатель это просто переменная, хранящая адрес в памяти. Всё что происходит по этому адресу к обычному указателю отношения не имеет.
660 2035570
>>35463
Если у выражения есть имя (а у ссылки имя есть), то оно lvalue.
Вообще можешь рассматривать ссылку как альтернативное имя объекта. Если ты у объекта можешь брать адрес, то и у ссылки тоже.
661 2035701
Как сделать, чтобы при компиляции с флагом /Wall не появлялись предупреждения из заголовочных файлов стандартной библиотеки?
662 2036108
>>35701
#pragma warning (push, 0)

// инклудишь хедеры СТЛ здесь
// вместо 0 можно задать любой уровень предупреждений

#pragma warning (pop)
663 2036410
Привет. Читаю Лафоре и мне не нравится. Чувствуется что литература устарела. Оригинал на английском и перевод хромает. Мс дос, старые компиляторы которых уже нет, стиль повествования старого деда. Книга нагло врет про обучение с 0. во общем мне не нравится. Подскажите норм литературу для изучения с 0.
664 2036417
>>36410
Страуструп с лебедями
665 2036583
>>36410
читать надо БАРБАРУ МУ
666 2036696
>>36108
Но у меня много где включаются заголовочные файлы стандартной библиотеки. Могу, в принципе, везде так написать, но есть ли способ "красивее"?
667 2036776
>>36410
C++ Primer же, последней редакции. И зачем тебе переводы, ты что, на русского барина работать собираешься?
668 2036803
Подскажите удобную IDE для Линупса (Убунта) для программирования на С++
669 2036842
670 2036871
>>36842
Выглядит как-то не очень удобно. Есть что-нибудь сопоставимое по уровню комфорта с Visual Studio?
---.jpg85 Кб, 1252x720
671 2036875
>>33804
Повторяю вопрос
672 2036879
>>36871
clion,имхо он даже лучше студии в некоторых моментах,но
там все платно и анально-проприетарно.На рутреке лежит,если че
673 2036889
>>36871
Потому что создавалось для наших бабушек и дедушек и давным-давно устарело, оставшись уделом троллей на дваче.
Альтернатив полно - code blocks, eclipse, kdevelop, но ничего и близко до студии не дотягивает.
674 2036899
>>36871
Сначала не очень удобно, потом за уши не оторвёшь. Ну и полезно это, многое узнаешь. Я после vim-а и уютной консоли смотрю на visual studio, как на нелепую неповоротливую неудобную хреновину. Но это во многом дело привычки и вообще зависит от задачи. Небольшие проекты я бы точно из-под консоли делал, с большими не уверен.
675 2036923
>>36899
В студии очень удобны дополнителные фичи (профилировщик, анализ памяти, даже мешанины из managed и native, дебаггер больше нравится чем gdb). А так согласен, если пользоваться только навигацией да автодополнением, то действительно достаточно вима с какими-нибудь YCM и nerdtree.
Мимокрокодил
676 2036925
>>36899
Большой проект сложно писать в виме без 100500 плагинов и километрового вимрц.
677 2036957
>>36923
Вот профилировщики и анализаторы, как по мне, на лялексе поинтереснее будут. perf пушка, valgrind туда же, address/ub/thread/ещёкакие-sanitizer-ы есть.
>>36925
Наверное, не пробовал. В проекте на работе несколько сотен тысяч строк, но я там редко ковыряюсь. Приходилось grep-ать пару-тройку раз. В модуле, который я написал, около 200 файлов с сорцами, по которым размазано 12к строк кода, и мне очень комфортно. Плагинов у меня нет, я чудной.
678 2036968
>>36875
Ассемблерные вставки делают, чтобы использовать SIMD, их потоковые и векторные расширения (SSE, AVX, NEON и так далее). Во всяких кодеках и обработчиках медиа контента они иногда встречаются. На уровне регистров уже никто не пердолится.
679 2036978
>>36871
VSCode. Под убунтой и лялексами с окошками весьма удобно. В качестве бонуса многие хоткеи и навигация как в студии. Можно накатывать сверху плагины под всё что угодно и кодить на нескольких языках, жонглировать гитом и докером, дебажить удалённо ардуинку и даже gpu код.

Второй вариант Eclipse. Он устарел в плане юзабилити, но под него есть очень крутые плагины для специфических задач.

А VIM он для говноедов и работников станций техобслуживания. Такой себе универсальный мини набор для работы в пиздецких условиях (например под Gentoo).
680 2037036
>>36978
Остановился на VSCode. Даже хеллоуворлд сделал и работает.
Только вот не понял, Makefile надо вручную делать? Ни каких облегчений нет?
681 2037051
>>37036

> Ни каких облегчений нет?


Есть плагины от васянов разной степени хуёвости.
682 2037057
>>37036
Microsoft доделывает плагин Makefile Tools. Можешь попробовать его.
683 2037065
>>36968
Чтобы юзать интринсикиа тебе не нужны ассемблерные вставки
684 2037083
>>37065
Наборы интринсиков у разных компиляторов разные. Да и сами функции это крупные строительные блоки из asm команд. Языковая вставка - более гибкая и универсальная конструкция.
Screenshot2021-05-2023-22-09.png50 Кб, 765x492
685 2037102
Я знаю, что квиксорт можно написать через std::move_iter обобщённо для любых контейнеров, но если бы я писал какой-то другой алгоритм, это могло бы не прокатить. И вопрос эффективности остаётся.

Предположим я хочу написать функцию, которая перемещает элемент контейнера из одного места в другое.
Делаю следующее:

auto tmp = *i;
i = container.erase(i);
// UB starts here
container.insert(pivot, tmp);

Если контейнер это std::list то всё ок. Но вот если std::vector, то возникают проблемы, так как erase (да и insert) инвалидируют итераторы.

В общем, рассмотрел несколько вариантов и остановился на if constexpr(). Всё правильно сделал?
686 2037110
Анон, у меня есть pcie устройство, которое раз в 100 микросекунд хуячит данные. Я вполне успешно в while(1) читаю данные, но вот если мне захотеть делать чтение через 100мкс, чтобы лишний раз проц не грузить, то начинаются фиаски: винда не позволяет точнее миллисекунды переключать контекст, а линух не гарантирует точность.

Также я узнал про Boost::Context, что там используется свой шедулер, аки в микроконтроллерах, и мне кажется, что сложий механизм позволит точнее рулить ядром.

Анон, как быть? И как работают аудио/видео кодеки, обеспечивая реалтйцм?
687 2037134
>>36803
Еклипсо. Там есть русский.
688 2037145
а как c4820 фиксить)
inb4 #pragma warning(disable: 4820)
689 2037146
>>37102
У vector, array и list итераторы bidirectional. Собственно в qsort тебе надо свопать значения итераторов и двигать их влево и вправо операторами ++. --. Зачем ты вообще erase/insert используешь?
Только с forward_list нужно сделать шаблонную специализацию, так как там forward итератор.
690 2037153
>>37102
>>37146
Когда вы догадаетесь специализации писать не под контейнеры, а под итераторы?
691 2037159
>>37153
Ну так это понятно, что в его шаблоне параметр T& container лишний.
692 2037183
>>37102

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


Она называется std::rotate.
693 2037188
>>37110

>чтобы лишний раз проц не грузить,


Не получится. Грузи ядро и молись чтобы ос не часто тебя переключала, или ставь нормальную рт ос, благо они и бесплатные есть, или навешивай на Винду рт расширения (за деньги).
694 2037611
>>36803
qtcreator
kdevelop
695 2037626
>>37102
а ничего что квиксорт использует просто обмен двух элементов (std::swap)?
потому что перемещение - это O(n) на векторах и вместо квик у тебя будет пиздецсорт O(n^2 log n)
696 2037761
>>37134
Конечно установка русского - это не самый очевидный процесс, пришлось повозиться.
А вот касательно работы, то всё заработало можно сказать из коробки. Скачал модуль на С/С++, создал проект и всё откомпилировалось без проблем.
697 2037817
Вижуалстудия предложила мне пройти опрос, я в нём написал, что неплохо было бы портировать её на другие ОС и ещё добавить поддержку джавы. Держу в курсе.
698 2037829
>>37817
Действительно.
699 2037845
>>37817
Но уже есть IntelliJ IDEA
700 2037847
>>37611
Qt я пробовал ещё в винде и мне он не понравился по интерфейсу. Слишком своеобразно там всё. Хотя вроде работает.

Kdevelop не компилирует проекты. Не знаю в чём проблема. Видимо, надо допиливать вручную.
701 2037852
>>37845
Идея слишком жирная, умудряется подтормаживать на i7 с 16 ОЗУ, когда как вижуалка даже на моём старом домашнем кудахтере летает.
702 2037871
>>37845
Она бесплатная?
703 2037874
>>37871
Коммунити-версия.
704 2037890
>>37845
Она не поддерживает С++
705 2037928
>>36875
четыре да
706 2037992
>>37890
Тогда есть Eclipse CDT
707 2038203
>>36803
Тебе прям IDE нужна? Бери VSCodium.
708 2038351
>>37110

>И как работают аудио/видео кодеки, обеспечивая реалтйцм


Буферизация. Аудио-библиотека сразу запросит у тебя несколько миллисекунд и будет сама потихоньку их проигрывать. Причём с запасом, чтобы в случае косяков и временных замедлений не выдавать ужасный треск на колонках. А у тебя кроме как поллинга судя по всему нет вариантов, если драйвер твоего устройства не умеет как-нибудь непрочитанные данные складывать в своём буфере и сигнализировать потом об их наличии.
709 2038419
>>38351

> не умеет как-нибудь непрочитанные данные складывать в своём буфере и сигнализировать потом об их наличии.


Потенциально умеет, так как это пилит другой человек на ПЛИС. Видимо, это самый правильный путь с буферизацией данных на устройстве и их слив через дма.
710 2038422
Как программировать графику? Почти все книжки посвящены пердолингу с консолью, а вопросы работы с графикой не рассматриваются. Очевидно, что в 2021 писать консольные приложение архаизм и потенциальные пользователи хотят современное графическое приложение. Но вот как это сделать, нигде не пишут.
711 2038424
>>38422
Толсто
712 2038426
>>38422
Потому что это книги для вкатывальщиков, и в консоли ввод-вывод тривиален, когда даже для простейшего гуя нужно понимать десятки концепций и писать кучу строк. Читай в книгах про конкретные gui-либы, тот же говно-Qt.
713 2038794
>>38422
Книга Макса Шлее про культи тебе дана
714 2038811
Правда, что Visual C++ не компилирует настоящий код, а создаёт байт-код как для C#?
715 2038839
>>38811
Раньше был Managed C++, ,он да, работал на .net. Сейчас только нейтив.
716 2038893
>>38811
Visual C++ всегда компилировал настоящий нативный код.

Но для эстетов есть всякая хуйня типа C++\CLI, C++\CX, Managed C++ и тд, которую надо специально выбирать, и специально на ней писать.
717 2038899
>>38893
Хотя ладно, C++\CLI я 1 раз использовал, как middleware между сишным интерфейсом ДЛЛины и кодом на дотнете.
718 2038924
Почему под Linux можно делать 64-битные Qt-приложения, а для Windows только 32-битные. Смысл тогда городить эти огороды с кроссплатформенностью, если у них даже компилятора нет 64-битного!?
719 2038940
>>38924
Всё там можно анон, смотри внимательнее. Я давно правда qtcreator на вантузе использовал. Сейчас просто кросскомпилирую с ляликса под винду, можно и 64 и 32
720 2038945
>>38924
все можно, лол
721 2038972
>>38426
Концепции можно легко выучить, а вот если нет интерфейсов кроме консоли, то это серьёзно ограничивает возможности.
722 2039368
>>38422

>Как программировать графику?


Ставишь соответствующую библиотеку и програмироваешь.

>Почти все книжки посвящены пердолингу с консолью,


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

>а вопросы работы с графикой не рассматриваются.


Потому что в стандарт не входят никакие средства для работы с графикой. Работу с графикой обеспечивают сторонние библиотеки.

>Но вот как это сделать, нигде не пишут.


Пишут в соответствующих книгах и в документации к библиотекам.
723 2039409
>>39368
В студенческие годы я программировал графику на WinAPI и получал пятёрки, потому что другие вовсе писали в Borland C++ 3.0 в старых видеорежимах VGA 640х480.
Прошло уже два десятка лет, а ничего нового похоже не придумали. Все сидят с умным видом и изучают консоль в надежде, что это им как-то поможет стать крутым программистом. Но ни один заказчик не станет покупать консольную программу. Под программой все понимают графическое приложение с привычными элементами управления: меню, кнопки, поля ввода и т.п.
724 2039410
>>39409

>ничего нового похоже не придумали


Новое по твоему - это чтобы в книге по крестам был еще и референс по вин апи?
725 2039418
>>39410
Я начинал свой путь программиста ещё со старых 8-разрядных ЭВМ и поэтому я прекрасно понимаю все эти консоли и прочие старые методы ввода/вывода. Но в 2021 изучать консоль - это архаизм. Книги надо переписывать с учетом программирования в графическом режиме.
726 2039432
>>38940
>>38945
Скачал версию более новую и MinGW x64 появилось. Просто в старой версии было только х32.
CommonLanguageRuntime.png45 Кб, 552x487
727 2039447
>>38839
>>38893
Просто я уже не первый раз слышу, что Visual Studio для простоты всё сводит к одной системе с байт-кодом, а язык не имеет значения.
728 2039554
>>39409

>Но ни один заказчик не станет покупать консольную программу


Лёл, где ты у сервира ГУЙ увидил?
сервер.jpg61 Кб, 810x632
729 2039642
>>39554
Если сделать графический интерфейс к серверу, то он сразу будет выглядеть как профессионально сделанная программа.
730 2039672
>>39447
ты побольше шизоидов слушай, еще не такое узнаешь
731 2039702
>>39642
Ясно-понятно, но тебе завтра в школу
732 2039704
>>39418
Какой же ты отсталый. Так видимо и остался в начале 2000-х.
На плюсах gui делают не более чем в четверти современных проектов.
1578624696112.jpg65 Кб, 500x469
733 2039744
>>39447

>эта картинка


Лолват
734 2039751
>>39702
А тебе к сессии надо готовиться, первокур. Все lab.cpp уже сдал, а то допуска к экзамену не получишь?
735 2039820
>>39704
весь GUI сто лет как в вебе.
736 2039984
>>39820
Подскажите IDE для разработки и компиляции в вебе
737 2040045
>>39984
wasm лмао
738 2040058
>>39984
WebStorm
739 2040113
>>39984
та же вижуал студия Если гуйню делать на Blazor'е лул
740 2040139
>>40045
>>40058
>>40113
Это всё десктопные IDE, а не веб
741 2040145
>>40139
а блять. Wandbox, godbolt, repl.it
742 2040151
>>40145
Получается можно не платить жадным разработчикам десктопных IDE и писать всё в webIDE?
743 2040152
>>40151
Хеллоуворлды - да. Что-то сложнее - ой сомневаюсь.
744 2040157
Есть произвольный взвешенный неориенированный граф g, c вершинами типа Vertex.
Есть функция
bool match(vector<Vertex>& left, vector<Vertex>& right),
которая возвращает true, тогда и только тогда, когда для каждой вершины из left найдётся вершина из right, такая, что в графе есть путь между ними.
Можно ли ее реализовать быстрее, чем за O(n^2)?
745 2040159
>>40157
Ну в смысле O(m*n^2)
746 2040162
>>39820
Дак что мне теперь делать? Отказаться от графических приложений и писать веб-сервер, чтобы конечный пользователь работал в браваёзере?
Тогда не особо С++ и нужен получается. Я такое и на РНР в своё время писал.
747 2040167
>>40162

> Тогда не особо С++ и нужен получается


Ты начинаешь понимать
748 2040175
>>39704
Как мне преодолеть эти 20 лет?
749 2040182
>>40175
Не слушать долбоёбов, например.
750 2040194
>>40175
Ты всё равно не догонишь. Ковыряй легаси. За него тоже норм платят.
751 2040213
>>40194
Что такое легаси?
752 2040218
>>40213
Старый код (от 10 лет и более), требующий доработки. Чаше всего это десктоп и энтерпрайз.
753 2041346
Народ, кто-нибудь грёб в Samsung Research Center в ДС. Вот вакуха https://hh.ru/vacancy/32569325?utm_source=email&utm_medium=email&utm_campaign=company_interested&utm_content=text&sent_date=2021_05_24
754 2041513
>>41346
Если ты пройдешь сюда - то лучше го к нам в нвидию пилить дебаггер для тегры, денег х2 от самсунга.

И тот же бизнесцентр
755 2041618
>>41513
Сделайте лучше тегру X3 по цене между Xavier и X2. А с дебаггером мы и без вас разберёмся.
756 2041632
>>41513
Скажи по секрету - новый свитч будет? А то NMH3 на горизонте и не знаю, покупать старую модель или нет.
757 2041665
>>41632
Да должен быть, сам жду его.
758 2041672
>>41346
Получается программистов С++ больше, чем вакансий для них?
759 2041674
>>41672
Программистов на чём угодно больше, чем вакансий для них, примерно раз в 100.
760 2041682
Сап, крестодворяне. Нет не лаба, нет не работа. Предположим, есть видеохостинг, соцсеть, %#вставить_нужное#%. Задача - сделать ленту выдачи, которая будет формироваться из предпочтений пользователя. Из подводных - у нас высокая нагрузка на сервера. Очень. Кроме нейросетей.
761 2041788
>>41682
Гугли книги по системам рекомендаций
762 2041805
>>41346

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


а накидай вопросы с ваших собесов? Или от себя, что считаешь чел. должен знать, чтобы ты с ним хотел работать?
763 2041832
что почитать о том как антивирусы работают? А то чего то полезней статьи в википедии, где все очень общими словами на 2 предложения написано, не получается найти
image.png116 Кб, 872x1160
764 2041854
>>41805
+ в ту команду спрашивают всякое про компиляторы\дебаггеры и прочее.
765 2041860
>>41854
изи же. Это что в 11 классе знают те, кто инфой увлекается
766 2041872
>>41860
За 3 года, что я собеседую - прошло 2 человека
767 2041877
>>41872
Ебланы значит. Ну я не шучу.Че за бред написать фибоначчи или обратиться к двумерному массиву через указатель без []? Реализация string или vector. Ты про нее читаешь просто когда знакомишься с ними. Там должно быть написано как они работают, а на cppreference вообще реализция каждой функции лежит. Это уровень 11 класса. Может по синтаксису только что то не для 11 класса, а так ничего сложного нет. Я надеялся встретить ебать какие задачи на логику, а тут хуита какая то
768 2041889
>>41877
Ну, я персонально еще просто спрашиваю за С++, всякое разное, словами. Там про линковку\компиляцию например, или про шаблоны.

А вообще - я сам, когда начал собесить, у меня волосы дыбом были, когда приходит наночелик с опытом в 10 лет, хочет 300к на руки, а знает столько, что задаешься вопросом - чел, ты 10 лет кофе программистам носил? Или что вообще делал?
769 2041902
>>41889
я вот больше >5 лет в си/с++. Что я знаю про линкомвку и комплияцию? Да каша у меня: знаю если стат. линковка, есть динамическая. Стат. во время комплилияции резолвит все зависимости, дин. - динамический линкел. Есть там в gcc всякие weak линковки - можно подменять либы, например через LD_PRELOAD_LD. В никсах nm вроде можно посмотреть символы - какие динанмичискеие, а какие статические. В винде при чём студия для дин линковки всё равно требует либ файлы почему-то специальные для dll. Что, я совсем быдло? А если мне не пригождалось это во время работы? Ну спроси меня что--нибудь, давай, опусти меня полностью
770 2041909
>>41902
Спрашивать я ничего не буду - я когда собеседую, я пытаюсь узнать ПОНИМАЕТ ли человек, или просто как обезьяна что-то делает по заученным паттернам.

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

И твой ответ, впринципе, меня бы устроил +-. Еще один из любимых вопросов - когда надо юзать эксепшены, когда не надо.

Там просто слушаю, как рассуждает человек и его аргументацию.

Ответы уровня - ЭКСЕПШЕНЫ ЭТО МЕДЛЕННО - сразу нахуй. А вот ответы - я бы юзал их в XXX, но не юзал в YYY, потому-что ZZZ - это заявка на понимание.
771 2041913
>>41909

>когда надо юзать эксепшены


Для меня это пипец трудный вопрос. Какой-то больше философский. Главное, чтобы весь проект был однородным в отношении этого. Вот это главное
772 2041915
>>41913

> Главное, чтобы весь проект был однородным в отношении этого


Это не такой плохой ответ, но опять же - почему. Учитывая, что у нас есть куски без эксепшенов, а есть с эксепшенами. Само собой, на границах модулей все обернуто в try\catch.
773 2041926
>>41909
Да ты и сам сабсетом пользуешься. Вопрос про POD, ну такое. После 5 лет писанины такое вообще из головы выветривается полностью (я бы только ответил, что это plain old data и это вроде как встроенные типы и структуры из них). Фибоначчи тоже не помню (а ты помнишь что такое золотое сечение?). Про стринг - не все знают/помнят про SSO.
Но скорее всего ты обычный педант, поэтому за 2 года никто мимо тебя не проскочил.
774 2041928
>>41926

>Да ты и сам сабсетом пользуешься


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

Про PODы, кстати, вопрос не мой, и фибоначчи тоже.

> Но скорее всего ты обычный педант, поэтому за 2 года никто мимо тебя не проскочил.


Отнюдь, я просто отсеивал профнепригодных. И, кстати, это окупилось, т.к. те ребята, которые прошли сквозь меня - просто охуенные. С одним из них ща на проекте сидим - полное взаимопонимание.
775 2041952
>>41928
Я сам не собесил, а получал людей как есть. Некоторых удавалось вывести на хорошую производительность, некоторых - нет. Но, с таким самоподдувом, как у тебя, сложно собрать рабочий коллектив.
776 2041958
>>41952

> Но, с таким самоподдувом, как у тебя, сложно собрать рабочий коллектив.


Не знаю о чем ты, но у меня шикарная и суперскилловая команда. Я тут, оверолл, готов работать всю жизнь.
777 2041962
>>41958
И кто в ней самый скилловый?
778 2042020
>>41854

>Be prepared to write your code on white board.


>How std::string is implemented?


>How std::vector is implemented?


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

Чтоли берешь маркер и херачишь на доске полную реализацию "1 в 1 как в msvc"? а потом тебя поъёбывают на тему, что в gcc оно иначе реализовано.
779 2042168
>>41962
Поверь мне - не я.

>>42020

>Как вообще, в рамках интервью, должен выглядеть ответ на подобные вопросы?


Фактически - надо обьяснить, что такое динамический массив и там и там. Бонус поинт в случае строки за SSO, бонус поинт за placement new в случае вектора.
780 2042341
>>42168

>Поверь мне - не я.


Большинство выёбщиков и есть типичные середнячки.
781 2042463
>>42341
Я, всё таки, ощутимо выше середняка, учитывая что у меня грейд сениорский в топ конторе мира. Ну да ладно.
782 2042490
>>42463
Да тут ещё попробуй договорись, кто такой середняк.
783 2042517
>>42463
В FAANG N это Netflix. Не путай больше.
784 2042520
>>42463

>у меня грейд сениорский


Знаешь в чём разница между смотрителем переезда и директором шлагбаума?
findif.PNG18 Кб, 914x278
785 2042653
В find_if правильное использование лямды?
786 2042673
>>42653
nodes_::value_type должен иметь метод contain().
Метод contain() должен возвращать bool.
787 2042675
Вопрос по qt
У меня qml получает данные класса через паблик слоты. Есть кнопка, которая вызывает паблик слот, который меняет некоторые данные. Но проблема в том что данные не обновляются. Пробовал связать коннектом сигнал и слоты, которые данные возвращают, эмичю этот сигнал в функции которая через кнопку вызывается и данные не обновляются. Ну и что н так?
788 2042677
>>42653
В твоем случае список захвата можно оставить пустым.
789 2042689
>>42675
В классе сделай купроперти с твоими данными, и эмить сигналы об их изменении, в кмл просто забиньдся на эти проперти. Не забудь зарегистрировать класс для кюмл, и тип данных если нестандартный.
790 2042701
>>42689
Да у меня зареган класс через engine root context
Я знаю про макрос Q_PROPERTY, но проблема в том что у меня данные организованны по-другому, а мне допустим только строку надо вернуть, и регать это все в Q_PROPERTY создавать в классе еще одну переменную, такое.
Кароче можно именно как-то эти функции перевызвать чтобы данные обновились?
791 2042748
>>42701
Ну и возвращай строку из функции тогда. Сделай ее q_invocable и вызывай на жс.
792 2042752
>>42701
Но я вообще обычно пихаю в проперти, если ее делать как member там только остаётся сигналы слать об изменении и все, а в кюмл совсем элементарно.
Безымянный1.png51 Кб, 987x617
793 2042765
>>42748
>>42752
Я не понимаю. Зачем Q_INVOKABLE, если уже это и так паблик слот? Вот простой пример, че добавить нужно чтобы при нажатии на кнопку qml строка удваивалась?
794 2042778
>>42765
У тебя нет биндинга текста, функция запрашивает его только при старте. Ты можешь сделать проперти и прописать ее в Text, или дать твоему тексту id, и при нажатии кнопки делать textId.text = tempClass.text();
795 2042790
>>42765
И кстати я что-то не вижу где ты создаёшь tempClass
796 2042791
>>42778
Ясно, ну и дрисня этот qt. Ладно, спасибо за ответы
797 2042794
>>42790
В мейн файле создается объект и регается через engine.rootContext()->setContextProperty
798 2042817
>>42765
У тебя долго компилируется проект?
799 2042820
>>42791
Это ты не видел всякие mfc, вот там пиздец.
800 2042827
>>42817
Около секунды где-то через ctrl-r
801 2042833
>>42817
Я так понимаю там компилируется только крестовая часть, кюмл и жс делает джит компайлер при старте программы.
802 2042846
>>42820

> mfc


Читал в какой-то книге, что его проектировали люди, не понимающие ООП.

мимо
803 2042852
>>42846
Это просто обёртка для WinAPI
804 2042859
>>42852
под виндой - вообще любой код это обертка над Winapi, как и под никсами - это обертка над POSIX Api, рофел
805 2042861
>>42846
ООП нет в винапи, МФЦ это попытка сделать ООП на его основе. Лучше чем было но все равно та ещё жопоболь.
806 2042862
>>42861
Я в универе сдавал лабы на чистом WinAPI и мне ставили пятёрки!
807 2042869
>>42862
Я в универе спаял транзистор, лол.
808 2042870
Я в универе смотрел аниме и бухал.
809 2042930
>>41928

>пара кусков написанных мной, где прям охуенное метапрограммирование


Так это ты делал ту знаменитую компайл-тайм хеш таблицу на 50 элементов?
810 2042946
>>42930
Судя по комментам, он SDK пилит и всякие обёртки.
811 2042965
>>42930
Ноп, чел с другой команды
812 2042978
Нужно написать приложение, которое будет работать с простенькой базой данных (mysql). Что лучше всего выбрать для этих целей? Connector/C++ для MySQL оптимально или нет?
813 2043040
>>42978
Просто бери самое популярное решение, и проблем не будет.
814 2044321
Объясните, что за хуйня тут происходит.
Вот примитивная программа, чисто в итераторы потыкаться: https://pastebin.com/ZhyrMJNt
Первый пик - если вводить меньше пяти значений, второй - больше пяти.
Функцию заканчивает работу и память за ней подчищается? Но в программе же по прежнему остаются итераторы, ссылающиеся на эту область.
Да и почему в такому случае после некоторого количества введенных значений программа начинает работать как и задумывалось?
Если не выебываться и возвращать вектор, то все, очевидно, работает.
815 2044337
>>44321
Что происходит с вектором v после выхода из функции foo?
816 2044363
>>44321
переменная вектора v в функции локальная, после выхода и функции вектор перестаёт существовать. Всё , что содержал удаляется. И итераторы ссылаются на непонятно что.
817 2044401
>>44363
В общем, самый очевидный ответ и есть истина.
Меня с толку сбило то, что при небольшом количестве элементов память перераспределяется сразу, а при чуть большем - остается нетронутой. И то, что я больше по питону, а там, пока есть ссылки, объект будет существовать.
И еще вопросик.
Получается, если возвращать напрямую вектор, то будет создана его копия?
818 2044423
>>44401

>Меня с толку сбило то, что при небольшом количестве элементов память перераспределяется сразу, а при чуть большем - остается нетронутой. И то, что я больше по питону, а там, пока есть ссылки, объект будет существовать.



На разных компах может быть разный результат. Тут неопределённое поведение. Может у другого программа просто упадёт.

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



Скорее всего будет вызван перемещающий конструктор и данные, которые содержал вектор в функции, просто присвоятся новому вектору.
819 2044437
>>04069 (OP)
Простите за дубль, мб тут быстрее ответят, надо на завтра сделать
Здравствуйте. Надо реализовать паттерн стратегия. На с++ давно ничего не писал, инфы по проблеме не смог сам найти.
Сам код: https://ideone.com/kHTnS3

Как мне в метод PaymentPoint передать обьект типа CashPay или CardPay как реализацию интерфейса IPay?
Что я делаю не так и как будет правильно?
image.png44 Кб, 570x598
820 2044438
>>44437
Пикча отвалилась
821 2044462
>>44437
Отбой, все заработало. Я до этого закомментил строки с наследованием чтобы протестить и забыл раскомментить.
822 2044463
>>44462
кек
823 2044472
>>44437
В педивикии на русском есть твой паттерн на c++ и ещё 7 языках.
Грустно быть тобой, анонче.
image.png6 Кб, 251x178
824 2044655
Согласитесь красиво...
825 2044662
Sup. Есть объекты класса есть метод класса. Мне интересно метод занимает память при каждом новом создании объекта или используется всё время один?
826 2044679
>>44655
Перегрузи запятую, будет ещё красивее.
>>44662
Всё время один.
827 2044688
>>44662
один
828 2044711
>>44662
Один.
viking132.jpg60 Кб, 500x750
829 2044724
830 2044751
>>44724
Óдин
831 2044859
>>44662
Метод це тупо функция, которая вызывающий её объект класса принимает по указателю и обзывает его this.
832 2044868
>>04135
хорошая попытка, питонист.
833 2044870
>>04566
твоя зп +15% - ЭТО МИНИМУМ,НИЖЕ КОТОРОГО ТЫ ДАЖЕ НЕ ПОДЫМАЕШЬ ПОПЧАНСКИЙ. Проси выше, но в разумных пределах.
Посмотри на dou.ua какие там ЗП у мидлов.
834 2044874
>>04715
вот сей курс.
https://youtu.be/IH493f9Vo7E
сия книга
http://padabum.com/d.php?id=174372
Ну еще есть Пол Айра.
и вот сия книга
https://www.manning.com/books/object-design-style-guide
835 2044893
>>06476
это ооп. А именно - композиция.
>>06825
в Qt об этом уже подумали за тебя.
А так - ничего такого
https://stackoverflow.com/questions/14265581/parse-split-a-string-in-c-using-string-delimiter-standard-c

>>07920
Нормально. зарегайся на линкедыне, добавь туда свои скиллы, пройди тесты на знание навыков и хрюши тебя сами будут искать.
плюс имей гитхаб.
А вообще возьми доучи нормально С++ и работай себе. Если плюсы реально надоели - тогда смотри другие технологии. Возможно, тебе подойдет какой-нибудь другой язык.
изображение.png171x39
836 2045507
Ахахах, почему у меня знак вертикальной табуляции \v вывел это?
std::cout << "PROGRAMM START\v" << std::endl;
837 2045635
>>45507
У меня тоже самое было, в студии
838 2045720
>>42673
>>42677
>>42653
Разве не стоит в парламенте дямбды принимать const auto& i? И cbegin, cend вместо begin, end. Тогда и contain должен быть помечен как const.

мимонуб
839 2045761
>>45507
Потому что винда и кодовые страницы - зло, которое должно было умереть в восьмидесятых.
840 2045778
>>45720

>Тогда и contain должен быть помечен как const.


Он должен быть константным (если может) безотносительно этой лямбды.

>Разве не стоит в парламенте дямбды принимать const auto& i?


Страуструп пишет, что передача по ссылке имеет смысл, когда параметр имеет размер больше 2х-3х размера указателя.

>И cbegin, cend вместо begin, end.


Если предикат const-корректный, то это избыточно.
841 2046087
>>45761
В Visual Studio если забываешь выбрать пустой проект, то она создаёт какую-то дичь с дополнительными файлами. Потом их уже нельзя удалить, проект без них не компилируется.
image.png20 Кб, 824x227
842 2046088
Что здесь не так?
843 2046094
>>46088

> Что здесь не так?


Применение древнего C-style массива вместо std::array.
844 2046113
>>46094
А в чём проблема то? С array всё так же.
845 2046129
>>46113
Размер статического массива должен быть известен на этапе компиляции.
846 2046141
>>46129
Так это не статический массив, а массив который должен создаваться для каждого объекта класса map. Он же не должен быть общим.
847 2046181
>>46141
Загугли "static dynamic array" и поймёшь.
848 2046184
>>45778
Спасибо. А есть ли готовый способ автоматически, в зависимости от типа, передавать его по ссылке или нет? Само собой, с шаблонами.
849 2046198
>>46088
Как тебе компилятор должен рассчитать размер статического массива через переменную, которая получит значение только в runtime?
850 2046244
>>46198
Ебучая сишка же как-то это делает.
851 2046436
>>46184
Принципиально есть. Готового и элегантного нет.
852 2046503
>>46244
Через хуевое и очень опасное расширение, не надо так
853 2046657
С++ уже включили модули?
854 2046681
>>46657
Да.
modules.png272 Кб, 1391x622
855 2046686
856 2046744
>>46088
Замени const на constexpr.
Даун сломал себе мозг 857 2046895
Это абсолютная срань, вообще не понимаю, почему это происходит.
Нужно посчитать функцию пикрил 1 в точке 1.0. Для этого я пишу программу пикрил 2. В ней я пишу функцию, а во второй строке то, как я бы считал на калькуляторе. Получаю пикрил 3, причём во второй стрчке верный ответ, можете сами посчитать на калькуляторе. Сижу с горелой дупой уже третий час.

ЧТО ЭТО ЗА СРАНЬ НАХОЙ????!!!1
858 2046947
>>46895
Может функция exp() какую-то еболу возвращает. У меня так было с функцией pow() из этой же библиотеки.
859 2046972
>>46947
exp(1) возвращает правильное значение экспоненты.
860 2047000
>>46895
Потому что целочисленное деление: (1/32) == 0
Лучше перепиши явное приведение к типу double, хотя бы так:
(1.0/32.0)
861 2047016
>>46895
У тебя 1/32 == 0, потому что оно вычисляется целочисленным делением, потому что оба операнда целочисленные.

Вот так будет правильно считать:
return (x / 16 - 1 / 32.) exp(2 x);
16089083751612.png471 Кб, 1280x834
862 2047017
>>47000
Спасибо, работает как надо.
863 2047680
>>38203
Как там компилировать большие проекты из нескольких файлов? Самом писать Makefile?

>>37051
Все плагины оказались говно. Дальше компиляции одного файла ничего не работает.

>>36879
А как они смогли пропихнуть CLion на Linux, где всё собирается из сырцов? Может всё таки есть исходники и их можно собрать и получить бесплатную версию?
864 2047716
На пиках есть объявление метода класса и сам метод. Объявление сделано с аргументами по умолчанию. Подскажите объявление объявляет именно эту функцию или какую-то другую?
865 2047966
>>47716
Эту, типы же аргументов совпадают. Только это конструктор, а не просто функция.
изображение.png54 Кб, 987x693
866 2048137
>>36696
В 16.10 появился
867 2048485
>>48137
Ух бля, спасибо! Ща затестим
868 2049065
Аноны, что за хуйня, у каждого долбаеба в вакансии "Хорошее знание и понимание математики: аналитической геометрии, алгоритмов на графах, численных методов, математического анализа." Причем даже если вакансия не связана с геом. моделирование, анализом и т.д. Если там есть с++ то там 100% будет это
869 2049644
>>49065
Это буквально 1/2-й курс
870 2049691
>>49644
То есть "сдал экзамен по этой хуйне несколько лет назад, с тех пор помню только пару формул, остальное забыл в силу неиспользования" - это хорошее знание и понимание математики, так?
871 2049923
>>49691
Если вакансия не на алгоритмиста, то да.
872 2049927
>>04069 (OP)
Блять, я сейчас сгорю нахуй. Взял две либы с cmake, сгенерил sln, собрал статические либы. Всё без ошибок, всё ровно. Беру эти либы, линкую к проекту в студии. Судя по выхлопу с verbose, линковщик их находит и успешно линкует. Но, блять, мне один хуй пишет unresolved external symbol! Какого хуя? Я уже всё проверил - всякую парашу вроде МТ, чарсета, calling convention и прочей ебатени. Всё сходится, нихуя не работает. Ни одной ошибки кроме unresolved external symbol. Ну ёбаный рот ваших крестов. Как мне узнать в чём дело? Почему каждый раз какой-то лютый дроч с линковкой?
873 2049928
>>49923
Понял, спс.
874 2049999
>>49927
Может ты проебался с calling conventions (extern C, mangling). Может просто нет реализации у методов. Может ты разными компиляторами собирал и теперь линкуешь. Да масса причин может быть.
875 2050125
Как в одной программе может быть сразу несколько видов инструкций AVX, SSE4 и пр? Компиляют в dll и потом подключают нужный?
876 2050143
>>49999
А есть вообще нормальные способы проверить что там собралось в либах? Я год назад их собирал и линковал без проблем, правда сразу с cmake собирал, а не через проекты. Сейчас решил через проекты делать чтоб можно было их вместе с основным проектом собирать автоматически. Я уже просто всё что можно было проверил, в основном проекте копипастой всё как в либах пробовал даже выставлять. Один хуй он не видит реализации. Может cmake как-то серит мне в штаны и выдаёт нерабочий проект? Просто если я сейчас соберу напрямую с cmake и нихуя не заработает, я нахуй разъебу пол квартиры.
877 2050239
>>50125
В принципе рабочий вариант, но это очень специфичный способ (в PCSX2 как раз так делали емнип для плагинов, но их недавно выпилили). Обычно просто в рантайме прыгают на функцию с нужными инструкциями в зависимости от CPUID. Кажется у Агнера Фога в гайде была глава как раз про такую диспетчеризацию
878 2050245
>>49927
Посмотри, какой символ требует твоя прога и какой экспортирует твоя либа. Не знаю как на винде это делается, но 100% можно.
879 2050319
Привет, аноны!
А есть в ваших библиотеках какая-нибудь хорошая книга с полным погружением в шаблоны, где используются классы тайп трейтов, появившиеся уже после 11 стандарта? А то в шапке все на 03 указаны
880 2050542
881 2050558
>>50319
Вандевурд, Джосаттис - Шаблоны C++ (второе издание смотри)
882 2050720
Что вы можете сказать о cpp reference?
883 2050761
>>50720
Прекрасное место, узнал там всё, что нужно знать. Если есть cppreference, то книги не нужны.
884 2050767
>>50558
>>50542
Спасибо!
885 2050813
Есть тут крестовики в области мульмедиа (всякие аудио кодеки, H264. H265 и др.). Что спрашивают на собесах при устройстве?
886 2051014
Часто в описаниях к библиотекам пишут, что можно наследовать какие-то объекты и описывается это как какая-то офигенная фича. А я не могу понять, зачем мне их наследовать?
Раньше вот библиотеки были более адекватными и там просто вызываешь нужную тебе функцию, а сейчас понадобавляли всякого наследования, чтобы вообще не логично и не понятно.

Я вот раньше программировал на ZX Spectrum и там самое сложное было найти инфу про какую-нибудь подпрограмму ПЗУ. А когда находил, то проблема снималась и просто вбивал в регистры нужную инфу и делал вызов подпрограммы. Всё четко и ясно. И ни какого наследования не нужно было. Всё работало!
887 2051140
>>51014
Раньше огонь для готовки еды добывали трением палки и тоже все работало.
Но современный дискурс: агрегация лучше наследования.
888 2051232
>>51014
Ну ты же на Basic писал, а не на c/c++/c# и их родственниках.
889 2051234
>>51140

> Но современный дискурс: агрегация лучше наследования.


Лет через 15, может, плюсы и эволюционируют до прогрессивного мира, но в 2021, где cmake до сих пор не сдох, этого ждать рано.
890 2051249
У меня есть класс, конструктор которого принимает вектор.
У этого класса есть методы, которые должны возвращать экземпляр класса.
Сейчас я заметил, что в этих методах я объебался и возвращал вектор, но при этом все прекрасно работало.
Получается, что если метод должен возвращать экземпляр класса, а в ретерне возвращается такой тип данных, какой конструктор может принять на вход, то конструктор будет неявно вызван?
891 2051282
>>51249
Конструктор вида MyClass(SomeType st) задает неявное преобразование из SomeType в MyClass.
Если оно нежелательно, то объявляй конструктор со спецификатором explicit.
1opt5s.jpg47 Кб, 444x516
892 2051319
>>51234

>Cmake не даёт мне делать агрегацию

image.png131 Кб, 350x350
893 2051325
>>51319

>>Cmake не даёт мне делать агрегацию

894 2051361
Я начальник отдела крестовиков на средней галере, выхожу на связь. Задавайте свои ответы.
895 2051414
>>51361
У вас на галере все начальники некомпетентны или только ты?
896 2051455
Привет работникам плюсового фронта!
Кто-нибудь юзает Code::Blocks + gcc на винде?
Как заставить gdb корректно работать и не падать при каждом чихе?
897 2051542
>>51325
Ну и я о том же.
898 2051624
>>51361
Сколько часов в день вы программируете?
899 2051828
>>51455
Я пришёл к выводу, что на винде только две альтернативы: Visual Studio (но она платная) и Qt Creator. Последний включает в себя набор MinGW. Ничего настраивать не надо, просто ставишь Qt и всё работает.
900 2051910
>>51828

> Visual Studio (но она платная)


А ещё есть community-версия.
901 2051924
>>51455
Поставь вижуал студию, не ебись с проблемами, которые решены 15 лет назад
902 2051963
>>51910
Ты ей пользовался? Там надо быть постоянно онлайн, чтобы просто она запускалась. Я пару месяцев не запускал и у меня слетела авторизация, дак пришлось заходить на сайт, выполнять авторизацию, на почту пришло подтверждение и только после подтверждения с почты, я смог снова зайти в студию.
Так же ты не являешься владельцев программ, которые написал в этой версии студии. По сути ты бесплатно пишешь для Microsoft код. Так что кроме учебных целей, она ни для чего не подходит.

Qt же можно использовать и для коммерческих целей, только надо делать динамическую линковку библиотеки. Либо открывать код для всех. Авторство у тебя никто не отберёт.
903 2051989
>>51414
:3

>>51624

>Сколько часов в день вы программируете?


14
904 2051997
>>51989
Я хочу работать не больше 4 часов и зарабатывать 150к/сек.
905 2051999
>>51997
Разрешаю хотеть.
906 2052001
>>51963

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


А можно пункт из соглашения и конкретную цитату?
907 2052071
>>51963

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


так ведь похуй
908 2052100
>>52071

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


Ну ты ебанутый...
909 2052110
>>52100

>>читает бесполезную простыню текста и видит в ней хоть какую-то силу


ой дебил....
910 2052122
>>51963
Я, кажется, начал понимать вимопердолей, кок-блокс-дебилов и прочих любителей доставания гланд через анальное отверстие.

Напридумывают себе сами какой-то полной хуйни, что МИКРОСОФТ ЗЛОЙ ВЛАДЕЕТ ТВОИМ КОДОМ САМ БИЛЛ ГЕЙТС ЕГО ВОРУЕТ, и пердолятся дальше.
911 2052127
>>51963
Я прочитал ЛС для VS 2019 Community, ничего про "ты не являешься владельцев программ, которые написал в этой версии студии" не нашёл
912 2052200
>>51828

>Qt Creator


Спасибо, буду пробовать

>>51924
Оно не заводится на некроноуте с Windows 7
913 2052212
>>52200
Насколько некро? На моём 6-летней давности с i3 и 8 ОЗУ и семёркой летает.
914 2052229
>>52200
Я студии программировал на I5-4210U (2 ядра 4 треда), 4гб памяти и ссд на 128 гигов. И прод писал, норм было.

Правда я с этой дерьмоконторы все равно сьебал как только смог
915 2052233
>>52229
Сколько часов в день вы там программировали?
916 2052304
>>52233
8, когда начальник был на месте, 0, когда начальник был в командировках, а он был часто в них
917 2052358
>>51989
Ладно, можешь не отвечать. Просто я 1.5 года веслал на средних размеров галере и нигде ранее не видел такого слабого менеджмента (вменяемыми были только гендир и менеджмент на 1-2 уровня ниже). Ну и "начальник отдела с++ программистов" намекает, что ты залётный. Кстати, у нас были "начальники" с писечкой, а у вас есть такие?.
918 2052359
>>52212
>>52229

>Некро


>i3 и 8 ОЗУ


>I5-4210U 4гб памяти ссд


Чет проиграл.
У вас не некро, а просто слегка устаревшие модели.
Некро это когда 2 гб озу + Dual-Core + hdd как у меня сейчас, кек
919 2052385
>>52359
Если ты месяц поработаешь в макдачке - то ты на авито купишь компуктер, на котором студия будет летать

Я с Core2Duo обновился еще в 2010 году, рофел
920 2052398
>>52385

>Говорю что некро не тянет студию


>Фаза 1


>Не верят, пишут, что у них на на некро все летает


>Фаза 2


>Ряяяя да это же ноут 2010 года


Чет не перестаю с вас проигрывать
sage 921 2052402
>>52398
Съеби в /b/, рачьё.
922 2052412
>>52398
Они старых ПК и не видели наверно. Я вот вообще начинал с ZX Spectrum'а, потому что IBM PC тогда стоил астрономических денег.
923 2052420
>>52412
О! так там самое сложное было найти инфу про какую-нибудь подпрограмму ПЗУ. А когда находил, то проблема снималась и просто вбивал в регистры нужную инфу и делал вызов подпрограммы. Всё четко и ясно. И ни какого наследования не нужно было. Всё работало!
924 2052421
>>50813
Тебе прислали битый MPEG-TS, а проигрывать его надо. Что будешь делать?
925 2052423
>>52420
Нет, самое сложное было - это работа с магнитной лентой, потому что дисковода не было.
Это не как сейчас CTRL+S нажал и файлик сохранился.
926 2052462
>>52359

>У вас не некро, а просто слегка устаревшие модели.


Удваиваю этого // Pentium 4 / Windows 7 / MSVC 2015 / C++Builder 6.0
927 2052474
У меня давно назревает теория, что язык для вката выбирают по принципу "что потянет". Во всяких js/java-тредах травят тех, кто не может купить себе 64 памяти и ssd на пару терабайт, но заходишь в плюсач - а тут деды капчуют с Атари и ДВК.
928 2052490
Простите за глупый вопрос. А как в eclipse скомпилировать код?
929 2052493
>>52490
У тебя багованная ide вот с фиксами https://visualstudio.microsoft.com/ru/
930 2052502
>>52421
и что же нужно делать?
931 2052505
>>52493
Извините, но я пользуюсь IDE для гетеросексуальных мужчин.
932 2052509
>>52505
Так тебе же не гомо VS Code предлагают.
933 2052523
>>52505
Тогда зачем ты взял самое пидорское что есть в виде эклипса? А гачи-натурал?
934 2052526
>>52509
Мы на линуксе пользуемся открытым бесплатным ПО.
935 2052547
>>52526
То есть лялех ты осилил, умеешь собирать через autotools и cmake, а эклипс решил принести сюда?
936 2052550
>>52505
судя по тому, что ты не можешь скомпилировать хелло ворлд - ты выбираешь только пенис в анус.

>>52474
У меня теория о том, что плюсы привлекают шизоидов и хоббистов.

Т.к. никто РАДИ интереса не будет трогать джаву, питон и прочий мусор. а С++ можно.
937 2052561
>>52547
он научился открывать Nautilus и выходить из Vim'a
938 2052563
>>52502
Хз, я дело только с ffmpeg'ом имел немного. Отправляй ему всё и надейся на лучшее.
939 2052567
>>52550

> У меня теория о том, что плюсы привлекают шизоидов и хоббистов.


> Т.к. никто РАДИ интереса не будет трогать джаву, питон и прочий мусор. а С++ можно.


Подтверждаю. Два года работаю на джаве, но по вечерам играюсь с плюсами.
940 2052568
>>52550
Я ребенок и мне 9 лет. Вот решил заняться самообучением, а вместо советов получаю здесь ну то что ты пишешь. Трудно помочь? Ах да ты ведь местный тролль и помочь чисто не в состоянии.
image.png3 Кб, 695x49
941 2052572
>>52561
Vim уже совсем казуальный, он выдаёт пикрил на Ctrl-C.
942 2052653
>>52358

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


Собалезную. Зато бесценный опыт "как не надо"

>Ну и "начальник отдела с++ программистов" намекает, что ты залётный.


Ващет на галерах деление идет именно по ЯП, максимум мобильщиков могут вместе согнать
943 2052679
Посоветуйте плиз книжку по плюсам с уклоном в сетевое программирование. Чтобы объяснялся не сам язык, а как на нем писать разные сетевые штуки.
944 2052680
>>52679
Хардкор - документация Boost.Asio
Введение - beej guide to network programming
945 2052715
>>52653

>Собалезную. Зато бесценный опыт "как не надо"


Как не надо что? Мне нужен был опыт в определённой области, поэтому я нырнул в говна. Сейчас я общаюсь с product owner'ами, а не с клоунами типа "начальник программистов c++".

>деление идет именно по ЯП


Нет, деление идёт по заказчикам и их пулу проектов (средние галеры и выше не берут мелкую залупу от всяких ИП). А на проекте ты лишь формально "программист c++" (по факту ты пишешь на 2-3 языках, допустим, c++, пихон и жопаскрипт).
946 2052716
>>52680
Спасибо!
Интересный автор.
947 2052719
>>52715

>Сейчас я общаюсь с product owner'ами


Кек, а я еще с PM-ами и BA-ями общаюсь. Ты вообще понял что спизданул?

>Нет, деление идёт по заказчикам и их пулу проектов


Что, матричную структуру все еще неасилили?

>(средние галеры и выше не берут мелкую залупу от всяких ИП)


>А на проекте ты лишь формально "программист c++" (по факту ты пишешь на 2-3 языках, допустим, c++, пихон и жопаскрипт).


Рашн девелопмент, индусятня отдыхает. Может ты еще и мануал куа делаешь?
948 2052721
аноны, которые в нвидии. Какие там у вас зпшки. Интересует с++
949 2052722
>>52721
ну меня ~400 на руки + еще 350 примерно с акций, если годичный вестинг размазывать по месяцам.

Начинал с 250 на руки.
950 2052723
>>52722
нихуя себе. Офигеть. Почти лям в месяц. Порше кайен за год. Мда... Ты меня унизил. У вас многие там так шикуют? Ты какой-нибудь крутой ph.d, да?
951 2052724
>>52723
Я сто раз писал, что я самоучка.
А зарабатывают так +- все, т.к. акции дают всем и оно наслаивается.

> Порше кайен за год


Я на трешку в Москве накопил за 4 года
952 2052725
>>52724
а чем ты там знаимаешься? Как пройти собес к вам?
953 2052726
>>52725

> а чем ты там знаимаешься?


Хуйней всякой от С++ до батников
954 2052728
>>52726

> Как пройти собес к вам?


Я просто на hh в свое время закинул резюме без особой надежды, и оп - получилось.
Серьезно - никакой магии нету. Но да, я сурово С++ выдрачивал.
955 2052729
>>52726
А тема-то какая? DeepStream пишешь или cudnn. Или ещё шо
956 2052730
>>52729
Диванон @ лигивон. Но, оверолл - нет, я просто рядовая С++ обезьяна без каких-либо суперзнаний в области 3д графики или нейроночек.
957 2052732
>>52730
хуяссе. Рядовая обезьяна поулчает 750 штук в месяц.
958 2052733
>>52732
Ну, у меня есть достаточно уникальный бэкграунд в том, что я дохуя чего знаю от вообще почти всех областей. Я и админил, и девопсил, и, лол-куашил (иногда руками), писал код на 4х разных языках, зная только С++ из них.

Когда поняли, что мной можно заткнуть вообще любую дыру - это очень оценили, и в последнее время все мои задачи звучат как "придумай" или "разберись". За это, вестимо, и платят. У нас есть кому писать код, всем вокруг - я уже упоминал, что я далеко не самый сильный программист в команде. Но вот то, что я могу делать вообще все - ценится.
Снимок экрана от 2021-06-02 02-15-32.png344 Кб, 1920x1080
959 2052749
IDE eclipse c++ не понимаю как открыть и скомпилить вот этот пример. Помогите.
960 2052753
>>52749
Поставь операционную систему и Visual Studio
961 2052754
>>52753
Ос у меня стоит, визуал студио не хочу ставить.
962 2052756
>>52754
Ну тогда питайся через жопу
963 2052760
>>52719

>Ты вообще понял что спизданул?


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

>Что, матричную структуру все еще неасилили?


Не знаю о чём ты. Есть там всякая хуета типа skill matrix и по ней формируются проектные команды.

>Рашн девелопмент, индусятня отдыхает. Может ты еще и мануал куа делаешь?


Та галера не была таким днищем. Но идея то одна - сэкономить на работниках. Для этого нужны люди, которые будут переобуваться на ходу (либо "руководитель c++ программистов" берёт в аренду людей у "руководителя других программистов", что не так выгодно).
964 2052761
>>52749
Гугли eclipse cdt примеры. На аглицком вот тут подробно написано.

https://www3.ntu.edu.sg/home/ehchua/programming/howto/eclipsecpp_howto.html
965 2052765
>>52733

>мной можно заткнуть вообще любую дыру


>я могу делать вообще все


Сдать бы тебя на галеру. По рефералке за тебя несколько твоих зп дадут.
966 2052796
d = a*b+c, скомпилировал с флагом -mfma -mavx2, а прироста нет, gcc не умеет в FMA3?
967 2052812
Можно ли писать константные указатели и ссылки наоборот? К примеру,
const char ptrStr переписать как
char (const
) ptrStr

или

const char & Str переписать как
char (const&) Str
968 2052820
>>52760

>>Ты вообще понял что спизданул?


>Что тебе не понятно?


Маня, product owner - это должность, а ты кидаешься терминами в которых не разбираешься

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


Ахуеть удивил - менеджмент на проекте оказывается с кастомером общается!!111 Кек, сразу виден твой уровень (джун), если тебя раньше постоянно отодвигали раньше от выхода на кастомера. Видимо боялись что ты хуйни наморозишь.

>прозрачное распределение денег


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

>Есть там всякая хуета типа skill matrix и по ней формируются проектные команды.


Оно-то ясно-понятно, ты даже не понял идет речь

>либо "руководитель c++ программистов" берёт в аренду людей у "руководителя других программистов", что не так выгодно


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

Насчет выгоды - это вообще что-то за гранью, всё равно кастомер платит
969 2052821
>>52749
Проверь в eclipse указаны ли пути к компилятору в настройках. Сам эклипс это просто редактор кода. Можешь для начала вообще не использовать его, а просто сохранить код в текстовом файле и скомпилировать gcc/g++ в терминале "g++ tvoycod.cpp -o prog"
970 2052826
>>52753

>Поставь операционную систему


Маздайщик, спок
971 2052835
>>52826
Пердоля, спок.
972 2052848
>>52812
Можно, но типы будут разные.

const char "ptr
и
char const "ptr
- одно и то же

char "const ptr
- #этодругое

const char "const ptr
и
char const "const ptr
- это третье

В первом случае указателю ptr можно присваивать адрес любой константы char.
Во втором ptr хранит адрес неконстантного char. Указателю ptr нельзя присваивать новый адрес; он всегда указывает только на тот (неконстантный) char, который был задан при инициализации.
Третье - это как второе, только char уже константный.

В случае со ссылками второй и третий кейсы не имеют смысла, т. к. ссылка итак всегда связана с ровно одним объектом (тем, который задавался при ее инициализации).
973 2052857
Что нужно знать крестовику на зарплату 300k+?
974 2052886
>>52857

>зарплату 300k+


Это сколько в баксах?
975 2052891
>>52886
4083 бакса по текущему курсу))
976 2052900
>>52891
На 4к баксах нужно знать почти все в плюсах.

Я ожидаю полные ответы на:
0. английский на уровне intermediate+ или advanced
1. мув семантика, перфект форвард и универсал референсес
2. руле оф 3, 5, зеро
3. виртуал фанкшенс, виртуал тейбл, пьюре виртуал (может ли чисто виртуальная функция иметь тело?)
4. лямбды (можно ли привести лямбду к указателю на функцию?)
5. констэкспр
6. темплейты (СиЭрТиПи)
7. контейнера, алгоритмическая сложность, инвалидация итератеров
8. исключения (эксепшен гарантииес)

Если ты еще знаешь Qt/QML, то всё, вы приняты!
977 2052916
>>52900
А какой смысл вообще плотить за знания, а не бизнес велью?
Этож какая-то выслуга лет получается как у тупой военщины.
978 2052928
>>52916

>А какой смысл вообще плотить за знания, а не бизнес велью?


Бизнес велью - это и есть знания и умения быстро писать код без траты времени на фикс своих ошибок.

>выслуга лет


Выслуга лет - это безумная тупая фигня, именно что важны знания, а не кол-во лет на секундомере
979 2052946
>>52900
Вы в проекте реально используете все эти хипстерские навороты, или это чисто так, вкатунов покошмарить?
980 2052958
>>52928

>Бизнес велью - это и есть знания


В чистом виде знания составляют бизнес велью разве что только у инфоцыган. Да и то не у всех.
981 2052959
>>52946
Тут скорее тема о том, пытается ли чувак разобраться в новом молодежном сам по себе (т.е. его драйвит) или он учится из-под палки.

Но вообще большую часть юзаем.

Энивей, не знаешь чо учить - учи английский
982 2052974
>>52958
У инфоцыган софтскиллы, а не знания
1.jpg121 Кб, 738x558
983 2053070
Мудрецы С++, помогите новичку разобраться. Вкатываюсь в Фундаментальные алгоритмы от Седжвика и что-то застрял уже на втором алгоритме( пик 2). Зачем он сделал цикл for без инкремента? Он же исполнится ровно один раз. Точнее, он вообще никогда не исполнится т.к. ранее мы инициализировали все id = i.
Что за засада?
2.jpg86 Кб, 729x265
984 2053071

>>>2053070


Второй пик отклеился
985 2053075
>>53070
while (cin >> p >> q) остается, заменяется только тело цикла (в блоке { } пиком2
16225894868760.png344 Кб, 1920x1080
986 2053101
IDE eclipse c++ не понимаю как открыть и скомпилить вот этот пример. Помогите.
sage 987 2053112
>>53101
Спасение утопающих - дело рук самих утопающих.
988 2053117
>>53101
Поставь qt creator, не еби мозги с эклипсом
989 2053122
>>53112
>>53117
Почему вас не банят? Ну не нужен в треде биомусор который вместо ответов щитпостит.
990 2053135
>>53122
еба, тебе советуют не юзать говно, а ты быкуешь
991 2053142
>>52820

>кидаешься терминами


Product owner сидит с нами в одном офисе и с ним обсуждаются любые проектные вопросы напрямую, а не через "менеджмент".

>менеджмент на проекте оказывается с кастомером общается


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

>внешние рейты всей команды


У меня сейчас такого нет, мы RnD контора, а не галера.

>Оно-то ясно-понятно, ты даже не понял идет речь


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

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


Не неси хуйни. У твоего отдела один кастомер, у соседнего другой. Если ты спихиваешь работу в соседний отдел, то люди начинают выгорать там (время работяг чётко расписано и за просрочки кастомер жёстко ебёт). Если в соседнем отделе манагер не совсем долбаёб, то хуй тебе он людей даст за просто так.
992 2053153
>>53135
Был задан конкретный вопрос, а не вопрос какой IDE поставить.
sage 993 2053166
>>53153
Ты задал один и тот же вопрос 100500 раз. Неоднократно получив ответы, ты отписываешься, что "тебе не помогло". Гуглить ты не умеешь и повторяешь вопрос тем, кто ответа не знает и гуглит за тебя, потому что никто этим говном здесь не пользуется. Уже реально на шизу похоже. Я не верю, что бывают настолько тупые вкатыши, даже я не задавал таких вопросов в самом ю начале. Скорее всего, ты тролль, и ответ тебе не нужен, тебе нужно всех заебать. И ещё говоришь что-то про бан, это именно тебя надо было давно забанить.
Matrix-Organization-Structure-Powerpoint-and-Keynote-templa[...].jpg42 Кб, 1280x720
994 2053168
>>53142

>Product owner сидит с нами в одном офисе и с ним обсуждаются любые проектные вопросы напрямую, а не через "менеджмент".


Маня, продакт оунер и есть менеджмент

>На моём проекте, когда кастомер вышел на работяг, то сразу сбросил за борт "руководителя" (типа тебя) и ещё пару "аналитиков" (норм у них пердаки тогда полыхнули).


Ну и пизда им, кек, раз они не могут оплатить юриста, чтобы вписал пнукты о не переманивании ВЕЗДЕ

>У меня сейчас такого нет, мы RnD контора, а не галера.


Ясно-понятно, "прозрачно" кек. Денежные вопросы никогда не выходят за пределы сейлзов и финансового отдела

>Не неси хуйни. У твоего отдела один кастомер, у соседнего другой


Какая ебанина. Кастомер есть не у отдела, а у галеры. Точка блядь. И это задача галеры - собрать гребцов из разных отделов на проект. Хоть из разных городов, но чтобы попадали по скиллсету.

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

https://en.wikipedia.org/wiki/Matrix_management
995 2053174
>>53070

>Седжвика


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

>Зачем он сделал цикл for без инкремента?


В иллюстративных целях.
996 2053209
>>53166
Годных ответов не было. Один щитпостинг. Гуглить умею. Возьми и напиши нормальный ответ на вопрос если ты можешь ( в чем я лично сомневаюсь ). Я десятилетний школьник который пытается учиться на каникулах, а у вас такое отношение...
997 2053218
>>53075
>>53174
Да все, вроде понял уже.
Короче он как бы от одной цифры идет по ссылке к другой, пока не встретит цифру равную самой себе. И вот уже тогда их связывает присваиванием. Я просто не сразу догнал как у него фор без тела цикла работает.

>В иллюстративных целях


Ну мог бы и не изощряться да попроще написать, да.

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


Что можешь посоветовать по алгоритмам?
998 2053219
>>52826

>Маздайщик


Как там в 97? Кайфуешь от первого фаллаута?
999 2053220
>>53209
Нормальный ответ - не пользоваться говном, которым не пользуется вообще никто почти.
1000 2053223
>>53219
У нас пока все норм, но вангую что маздай через 20 лет будет без твоего спроса сливать и закачивать любую инфу с/на твой ПК
1001 2053228
>>53220
Вдогонку.

Эклипсом пользуются в основном несчастные, которые делают что-то супер узкоспециализированное, т.к. для этого какие-то садисты написали эклипс плагин. Всё, по собственной воле эту парашу никто не юзает.
1002 2053232
>>53209
Ну тебе уже ответили >>52821, но ты проигнорировал и продолжаешь постить одно и то же.
Последний раз объясняю последовательность действий.
1. Проверяешь настройки эклипса, знает ли он о пути к компилятору
2. Проверяешь, установлен ли в системе компилятор
Вангую, что проблема может быть только в этих двух пунктах.
Если ты не в состоянии это сделать, значит тебе нужно изучать основы работы с ОС, а не программирование.
1003 2053233
>>53168

>Маня, продакт оунер и есть менеджмент


Я тебе про доступ к менеджерам разного уровня говорю. И о том, что на галерах есть большая прослойка из говноменеджеров. Когда через них идёт информация, то она очень сильно искажается.

>о не переманивании


Каком переманивании? Люди не пошли в штат заказчика. Они сами окуклились в рабочую единицу и брали у заказчика подряды.
Во втором случае заказчик пообщался с конечными исполнителями и сократил штат до смысла, что в итоге ударило галеру по карману.

>Денежные вопросы никогда не выходят


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

>собрать гребцов из разных отделов


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

>matrix management


На пике: research prodction sales finance
Это вообще не про галеры, дебич. Откуда там research и sales? Это для компаний полного цикла.
1004 2053239
>>53228

>какие-то садисты написали эклипс плагин


This. Например пидорасы из NVidia, сделавшие Eclipse NSight Edition.
1005 2053260
Будут ли отличаться конструкторы класса если в одном случае уберу вторую строчку, а в другом нет. С деструктором такой же вопрос.
Зачем вообще деструктору default?
struct Foo {
Foo() = default; // 2
int x;
~Foo() = default;
};
1006 2053266
>>53228

>Эклипсом пользуются в основном несчастные


Все верно, нормальные программисты используют Vim.
1007 2053295
>>53239
Плагин уже деприкейтед даже для вижуал студии.

>>53266
Вим используют только старики и карго-культисты, которые хотят походить на стариков.
1008 2053297
>>53233

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


Та нет такого

>Каком переманивании?


О таком, что пидорнули посредника. Значит посредник долбаеб

>И зачем тогда вообще такие "отделы"? Получается, что "начальник отдела программистов с++" - хуйня без задач.


1. Решать вопросы по стеку входящих проектов ("этот проект для C++ или нет?")
2. Быть первым кто ответит на вопрос, кто подойдет на новый проект по скиллам
3. Проводить собесы гребцов в команду
4. Отвечать на сложные вопросы подчиненых, помощь с проектом, менторство
5. Остужать горящие пердаки заказчиков, когда кто-то из подчиненных обосрался
6. Заниматься передачей опыта по горизонтали
7. Выходить на звонки с кастомерами по технической части
8. Педалить блядь код

>>matrix management


>На пике: research prodction sales finance


>Это вообще не про галеры, дебич. Откуда там research и sales? Это для компаний полного цикла.


Мань, включить мозги и увидеть там PM, BA, FrontEnd, BackEnd, QA --- что, религия не позволяет?
Алсо, ору с "компаний полного цикла"
изображение.png370 Кб, 895x1249
1009 2053314
eclipse.jpg175 Кб, 1919x991
1010 2053324
>>53101
В чём проблема собственно? Все компилируется и выполняется.
1011 2053334
>>53260
Как зачем? Это ты явно указываешь компилятору создать деструктор, но он бы его и так создал, так что это пустая команда
1012 2053345
>>53232
Ишак ты ебаный. Попробовал бы сам скомпилить раз такой умный. Компилятор установлен по умолчанию удот ты ебаный мамку твою трахал. По настройкам хз.
1013 2053348
>>53324
Братик запиши видео пожалуйста как ты это сделал. Прям с 0 создание проекта и т.п. Когда я создаю проект у меня нет папки includes. Может у меня что то настроено в компиляторе не так хз. Ну или инструкцию в скриншотах сделай.
1014 2053353
>>53348
Небойсь build-essential не поставил (или как оно там называется)
1015 2053356
>>53353
Не знаю. Реально зашел думал тут помогут, а по факту один токс. Вот школьник пытается учится на каникулах, а вы так..
1016 2053358
>>53356
Борда 18+
1017 2053360
>>53353
Я просто установил eclipso, настроил язык. Все. Больше ничего не настраивал. ( ну может пару окон закрыл, а потом вернул).
1018 2053364
>>53358
Нет. +18 определенные разделы же.
1019 2053367
>>53360
пока ты тут занимаешься хуйней - уже бы мог писать код как нормальные люди в MSVC
1020 2053375
>>53345
Свали отсюда, безмозглый олень.
Отправил ссылку в твою школу.
qtcreator.jpg164 Кб, 1919x991
1021 2053386
>>53348
Поставь Qt Creator и не парься. Это самый лучший совет. Там ничего настраивать не надо. Всё работает сразу.

Тем более для 300к/нсек всё равно Qt надо изучать.
1022 2053388
>>53386

> Тем более для 300к/нсек всё равно Qt надо изучать.


Вооще нет
1023 2053395
>>53388
Чел тут пишет, что надо >>52900

Да я и сам понимаю, что без Qt сейчас ни куда. Альтернатива только WinAPI/MFC и всякие корявые библиотеки на линупсах.
1024 2053400
>>53395
Большая часть разработки на С++ там, где гуй не нужен. QT знать лишним само собой не будет.
1025 2053401
>>53386
Я хочу в твой IDE так сделать.
1026 2053403
>>53400
У меня 4 параллельных проектах на плюсах, и на 3х из них юзается Qt (аж в одном случае --- QWidget'ы, а не QML)
1027 2053407
>>53400
У вас заказчики принимают консольные приложения? Меня бы на 3 буквы послали за такую поделку, потому что все хотят нормальное графическое приложение.
1028 2053413
>>53407
>>53403
У меня внутренняя разработка, пишем сервисы, которые даже без консоли, просто с логами.
1029 2053415
>>53407

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


Ебать, а как быть разработчикам библиотек?
1030 2053424
Почему тред не перекатывается?
1031 2053428
>>53424
тварь что ж ты делаешь...
1032 2053437
>>53395
qt тянет за собой тонны из за кроссплатформенности + он весь в лицензиях. Лучше использовать mfc.
1033 2053438
>>53437
Лучше использовать MAUI в конце годика
MauiLandsatPhoto.jpg104 Кб, 741x584
1034 2053451
>>53438

>MAUI


Ok, как скажешь
1035 2053452
>>53437
Лучше веб-параша на говнореакте, чем ебучий mfc.
1036 2053453
>>53424
Потому что ты перекатываешь в еклипсе, а надо в студии.
1037 2053472
>>53453
Студия платная и с анальной регистрацией, чтобы микрософтам было легче воровать твой код. Плюс ещё ограничения на коммерческие продукты.
1038 2053486
>>53472
Шизоиды боятся, что их хеллоу ворлд своруют.

Спойлер алерт - студия бесплатная, регается на любую говнопочту с мейлру. Ограничения на коммерческие продукты есть только у тебя больше 5 разрабов или оборот больше ляма баксов в год. И ТО - эти все ограничения снимаются покупкой лицензии.
1039 2053491
>>53486
Я что миллион долларов зарабатывал чтобы студию покупать?
1040 2053495
>>53491
Если ты будешь зарабатывать миллион долларов - то ты поймешь, что продуктивность разработчиков стоит цены студии.
1041 2053543
>>53486
Ну на виме нет и таких ограничений, а производительность не хуже
1042 2053550
>>53486

>на любую говнопочту


Тут ты сильно ошибаешься. Я регистрировался ещё в 2009 и пришлось писать в тех. поддержку, чтобы добавили мою почту (mail.ru). Благо тех. поддержка за сутки ответила и помогла с проблемой.
Возможно сейчас с этим проще.
1043 2053551
Смотрите:
{
std::string str;
str.~string();
}
---------------------------------
error C2300: 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>': class does not have a destructor called '~string'

вспомнил, что string - это basic_string<char>:
{
std::string str;
str.~basic_string();
}
---------------------------------
OK

НО
{
using std::string;

std::string str;
str.~string();
}
---------------------------------
Тоже ОК

Откуда этот ~string() вместо ~basic_string() берется?
Он вообще есть или нету его? поиск в заголовках по "~" находит только ~basic_string()
1043 2053551
Смотрите:
{
std::string str;
str.~string();
}
---------------------------------
error C2300: 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>': class does not have a destructor called '~string'

вспомнил, что string - это basic_string<char>:
{
std::string str;
str.~basic_string();
}
---------------------------------
OK

НО
{
using std::string;

std::string str;
str.~string();
}
---------------------------------
Тоже ОК

Откуда этот ~string() вместо ~basic_string() берется?
Он вообще есть или нету его? поиск в заголовках по "~" находит только ~basic_string()
15602857461850.jpg34 Кб, 600x399
1044 2053558
1045 2053590
>>53558
понел
1046 2053593
>>53543
Пчел, ты откровенно стебешь сейчас, в виме нет вообще нихуя, кроме подсветки синтаксиса по словам (вне контекста). После того, как ты сверху наворотишь стопицот плагинов - ты получишь некую уебищную карикатуру на IDE по функционалу, только вот все равно там не будет ни интегрированной системы сборки, ни нормального GUI к дебаггеру.

>>53550
Я начал изучать С++ где-то в 2013 году, скачал коммунити 2013 студию, без проблем зарегал ее на свою говнопочту на мейлру.
bug.webm500 Кб, webm,
1920x1080, 0:09
1047 2053605
Как исправить пикрил?
1048 2053614
>>53593

>без проблем зарегал ее на свою говнопочту на мейлру


А у меня через некоторое время начала просить перелогиниться. А в логин без телефона не зайти.
В принципе эту шляпу можно было игнорить. Но после длительного перерыва прям наотрез отказалась меня пускать и все тут. Пришлось им слить номер телефона.
1049 2053628
>>53614
я на 10 минутную почту регаю, а потом, когда попросит, делаю новый акк с 10 минутной почтой
1050 2053631
>>53605
Консоль - это часть ОС.

Пердолься с апи своей ОС или ставь ncurses/pdcurses, которые пердолят апи твоей ОС за тебя.
1051 2053632
>>53628
Я так пробывал, но второй логин микрософты у меня сразу же забраковали.
1052 2053643
>>53295
Для студии плагин действительно убогий был (впрочем, как и все плагины для студии).
А Nsight это не плагин, а целая IDE.
image.png1014 Кб, 1244x717
1053 2053647
>>53631
Так ведь делают как-то подобные вещи и у них вообще ничего не лагает. Это что за такой пердоль? ncurses ?
1054 2053652
>>53647
в консоль можно буферы выводить, а не посимвольно
1055 2053681
>>53297

>Та нет такого


Тебя нет на твоём пике с менеджерами.

>Значит посредник долбаеб


Что допустил прямое общение работяг с заказчиком, да. Для этого и делается боттлнек из пма и пары доверенных ему лиц.

Пп 1-8 указывают, что у вас там полный бардак с организацией. Ты говоришь, что у тебя проекты к отделам не привязаны => в твоём отделе N проектов и ты во всех кодишь, тушишь N жоп и обслуживаешь N заказчиков сразу? И несёшь перед ними ответственность за лиц из других отделов, которые на тебя хуй клали? Ахахах блядь, ебать ты лошара.

Полный цикл это сами придумали, сами разработали и сами продали. Естественно что не всё на 100% сами, но на галерах полностью отсутствует "придумали" и "продали".
1056 2053694
>>53647
Конкретно твой пикрил вообще на каком-то гейм-движке запилен.

>>53652
Курсор все равно никуда не спрячешь стандартными средствами.
1057 2053702
>>53694
По идее можно менять цвет и частоту мигания курсора (как минимум через настройки консоли).
1058 2053710
>>53702

>через настройки консоли


Ну вот то-то и оно. Это уже фактически на стороне ОС делается.

cin/cout ничего не знают про настройки консоли (читай всех существующих консолей, где c++ запускаетя). Да и кому оно надо, чтобы банальный <iostream> еще за собой подтягивал йобу уровня windows.h ?
1059 2053717
>>53710
лол, как по твоему cin\cout взаимодействуют с консолью? Через платформенное апи, как раз через тот самый windows.h
1060 2053726
>>53717

>как по твоему cin\cout взаимодействуют с консолью?


Через минимальный набор системных вызовов наверное.
1061 2053730
>>53726
А где эти системные вызовы находятся?

В виндовых длльках, которые линкуются к твоему проекту, а декларации функций - в виндовых хедерах
1062 2053767
Каково хуя хеллоуворлд скомпилированный через g++ весит под 1.2 МБ? Срезал символьную информацию через -s стало 660 Кб. Какие есть варианты утрамбовать это непотребство?
1063 2053787
>>53681

>Ты говоришь, что у тебя проекты к отделам не привязаны => в твоём отделе N проектов и ты во всех кодишь, тушишь N жоп и обслуживаешь N заказчиков сразу?


Ты еблан? У меня не проекты, у меня люди

>И несёшь перед ними ответственность за лиц из других отделов, которые на тебя хуй клали


Ебать, ты далбаеб, тебе говорят - отвечает ПМ, а ты опять витаешь в своих фантазиях

>Полный цикл это сами придумали, сами разработали и сами продали


Это называется "продуктовая галера". Ебать ты нифтеме вапще, ору с тебя
1064 2053791
>>53767
Стандартная библиотека тоже немало занимает, и похуй компилятору, что ты не юзаешь её целиком.
1065 2053802
>>53787

>У меня не проекты, у меня люди


>8. Педалить блядь код



>отвечает ПМ


>5. Остужать горящие пердаки заказчиков, когда кто-то из подчиненных обосрался



>"продуктовая галера"


Галеры иногда пишут свои проекты, но это обычно касается управления собственными ресурсами и персоналом. Проекты на продажу совсем редкость.
1066 2053805
>>53791
Как можно организовать чтобы он всю ее не засовывал туда?
Динамически пробовал линковать - программа вылетает при запуске, но даже если обновлю нужные длл то размер хеллоуворлда неприемлим - 21 Кб
1067 2053807
>>53787
На галерах есть мутная позиция типа deliveri director. Этот товарищ занимается конкретно людьми и заказчиками (но не кодит, не собеседует, не менторствует и т.д.). Ты же скорее тимлид, на которого накинули непрофильных задач и назвали "руководителем", чтобы ты не догадался, что тебя поимели за дёшево.
1068 2053813
>>53805
Если нужно чтоб совсем мало, то отсекай использование std. Используй сишное наследие типа printf().
Ну и флаг оптимизации побольше постав.
1069 2053815
>>53813
Какого размера хеллоуворлд считается нормальным в с++?
1070 2053841
>>53815
Не знаю, но такой же код на чистом C точно будет меньше.
Потыкал чутка. Под студией получилось 9кб. Думаю, что можно до 2-3 довести.
Снимок экрана от 2021-06-02 19-57-42.png268 Кб, 1920x1080
1071 2053863
Привет. Расшифруйте мне ошибки. Что опять не так?
1072 2053868
>>53863
А этот необучамый все продолжает жрать говно
1073 2053874
>>53868
Ты необьективен. Я обучаюсь. Новые ошибки взамен старых это прогресс :) Маня как же у тебя рвется от того что другие прогрессируют:) Завистливая тупая токсичная сука.
1075 2053878
>>53874
:) :) :) :) :) :)
1076 2053879
)))0
1077 2053897
>>53875
Мамкин копирователь ссылок с гугла ошибки как решить?
1078 2053900
>>53897
1. Нанести курсор мыши на ссылку
2. Кликнуть левой кнопкой мыши
3. Читать, сука
1079 2053908
>>53900
Я прочитал и все равно не понял. Зачем ты в треде сидишь если тебя так разрывает от безобидных вопросов новичка-школьника? Человек сидит старается, не в минекрафт играет, а ты....
1080 2053910
>>53908
Так ты советы не слушаешь, ты траллируешь тут своей тупостью. Иди лучше в майнкрафт поиграй, в фортнайт там, что сейчас модно у дегенератов
1081 2053913
>>53910
Я слушаю советы. Ты скинул ссылку - я прочитал и не понял что делать. Если ты не способен отвечать на вопросы новичков смысл сидеть в треде?
1082 2053918
>>53913

>не понял что делать


Тебе миллион раз сказали в треде - поставить вижуал студию, где всех ебанутых проблем, что ты пытаешься сейчас тут решить - просто нету.
hqdefault.jpg29 Кб, 480x360
1083 2053930
1084 2053933
>>53930
чел, мы уже поняли, что ты школьник, сьеби теперь
1085 2053935
>>53930
Раз ты слился, пора ставить вижуалстудию.
1086 2053941
>>53935
>>53933
Сьебите с доски черти.
image.png260 Кб, 600x400
1087 2053950
Mamkuebalnotjoke.jpg70 Кб, 600x450
1088 2053954
image.png30 Кб, 978x290
1089 2053970
1090 2053977
>>53918
Как поставить вижуал студию в бубунте?
1091 2053980
>>53977
Надо установить операционную систему.
Снимок экрана от 2021-06-02 21-44-34.png271 Кб, 1920x1080
1092 2054039
Как решить данные ошибки и что они значат? Код не запускается. В чем проблема простым языком?
image.png30 Кб, 978x290
1093 2054044
1094 2054045
>>53863
Все нормально с кодом, проблема с компиляцией. Сноси к хуям еклипс и качай гецеце
1095 2054048
>>54039
Проиграл с комментариев, что-то уровня:
int main() //заголовок функции
{ // открывающая скобка
} // закрывающая скобка
1096 2054049
>>53875
>>53918
>>53935
>>53980
Блять, да вы совсем кретины, если пытаетесь состязаться тупостью со школьником-дегенератом. Хватит уже позориться.
1097 2054051
>>54039
Блять, че-то вспомнил как с десяток тредов назад один полуёбок создал проект на С++/CLI вместо нативного. И два дня шумно бугуртил на компилятор, студию и всё вокруг, требуя всё более подробных инструкций..
1098 2054062
>>54049
Хорошо.
1099 2054070
>>54051
У меня не в этом проблема. Полупокер как раз таки ты если не можешь помочь с такой простой задачей.
image.png30 Кб, 978x290
1100 2054071
1101 2054074
>>54039
В том что ты умственно отсталый кретин.
1102 2054080
Пилите перекат, иначе я запилю без шапки
1103 2054084
Начал читать Шлее по Qt. Вроде объём впечатляющий, книга с первых страниц себя презентует как хороший мануал по Qt. Но вот когда дело дошло до описания конкретики всё свелось к лаконичным фразам "ну тип эта штука делает то-то, а ещё у нас в библиотеке есть такие штуки... кек пук...". Как ими пользоваться? В чём вообще их предназначение? В общем, картина по Qt у меня вообще не вяжется и я не понимаю как писать программы на нём.
1104 2054091
>>54084
Попробуй дизассемблировать программы которые используют Qt и смотри как они работают. Там очень много завязано на системе виджетов и событий
1105 2054093
>>54091
Охуительный совет, я в голосину просто
1106 2054097
>>54084
У меня всегда такие ощущения, когда я тыкаю какую-нибудь незнакомую либу или тулзу. Куча зависящих друг от друга понятий, кажущаяся важной хуйня не поясняется, а затем резко понимаешь и начинаешь юзать.
1107 2054098
>>54091

>дизассемблировать программы


Чел... ты это... какой-то вариант для слабаков предлагаешь.
Имхо гораздо лучше написать свою версию Qt с нуля, тогда точно будет понятно как с ней работать
1108 2054102
>>54084

>ну тип эта штука делает то-то, а ещё у нас в библиотеке есть такие штуки... кек пук...


Краткое содержание 95% книг по тулкитам.
Проще читать доки и пилить какие-то свои штуки, чтобы разобраться.
1109 2054105
>>54097
Когда я читал "Программирование для Win95" Ч. Петзолда, то сложно было только в начале принять событийный механизм программирования в WinAPI, а потом всё пошло как по маслу.
В Qt же надобавляли всяких расширений языка, свой препроцессор, свой язык разметки, но толком не объясняют как этим всем пользоваться. Примеров очень мало.
1110 2054108
>>54080
Просто скопируй текущий ОП-пост, увеличь номер на 1, исправь ссылку на прошлый тред ("(OP)" удали), с тегом не проебись, на пикчу поставь аниме-девочку на тему C++. Остальное похуй.
1111 2054109
>>54108
Ну ты нашел кому создание треда поручить...
1112 2054116
1113 2054136
Адекваты здесь остаются, я правильно понял?
1114 2054139
>>54136
Именно.
1115 2054147
>>54136
Адекваты проходят в ассемблер-тред, остальным сочуствую
Снимок экрана от 2021-06-02 22-46-34.png241 Кб, 1920x1080
1116 2054318
>>53324
Код скомпилился, но не запускается. Как решить?
1117 2054354
>>54105
Что за событийный механизм? Опиши
1118 2054557
>>53802

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


Есть продуктовые галеры, ау

>>53807

>Ты же скорее тимлид


Тимлид - это позиция на проекте, а не в отделе. Асильте блядь матричную структуру. Вы блядь устройте соревнование за проект между отделами блядь
1119 2054903
>>54557

>Есть продуктовые галеры, ау


Какие есть примеры на просторах СНГ?

>устройте соревнование за проект между отделами блядь
У вас там отдел Java соревнуется за проекты с отделом С++?

>Тимлид - это позиция на проекте, а не в отделе.


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

>8. Педалить блядь код


Ты ж его не в отдел пилишь.

>4. помощь с проектом, менторство


>3. Проводить собесы гребцов в команду


В проектную команду (не на бенч же).

Общий посыл в том, что ты выполняешь роли кодера, пм, тимлида, delivery directora и ещё хуй пойми кого (да, некоторые роли могут пересекаться, но не в таком количестве).

Как я писал ранее, на галере ты лишь формально кто-то ("программист c++", "руководитель отдела с++"), по факту ты постоянно переобуваешься между ролями и компетенциями. Из-за этого на галерах довольно говёно в плане организации рабочих процессов.
изображение.png12 Кб, 962x181
1120 2055758
Бюджет 10 тыщ рублёв. Беретесь?
1121 2055789
>>55758
Маловато будет
1122 2056507
>>41854
я все знаю, откуда это, хочу работу сменить
Тред утонул или удален.
Это копия, сохраненная 5 июня 2021 года.

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

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