Главная Юзердоски Каталог Трекер NSFW Настройки

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

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 519 67 129
С++ thread #136 /cpp/ Аноним 05/07/22 Втр 21:28:02 2397264 1
1.jpg 264Кб, 1936x1296
1936x1296
2.jpg 318Кб, 1936x1296
1936x1296
Аноним 05/07/22 Втр 21:31:30 2397266 2
夏だから…は特に関係ないナツ [...].jpg 341Кб, 1710x2300
1710x2300
>>2397264 (OP)
Лучший тред для лучшего языка.
Аноним 05/07/22 Втр 21:31:37 2397267 3
C++ лучше чем шарп.
Аноним 05/07/22 Втр 21:56:00 2397279 4
Аноним 05/07/22 Втр 23:16:31 2397331 5
i.jpg 29Кб, 480x312
480x312
Какие же системные языки говно, просто пиздец. Только на Си приятно писать, но область применения этого языка очень мала, точнее своеобразность использования. И что остается? Плюсы, раст, zig. Первый - древний говнокомбайн, который не выучить за всю жизнь, но зато можно найти работу на легаси. Второй - получше, но не имеет спецификаций и стандартов, поэтому для серьезного бизнеса не подходит. С появлением последних можно хоронить плюсы. Третий - неплохой ноунейм ЯП, который пилят 1.5 калеки. Так и живем в говне, приходится страдать
Аноним 05/07/22 Втр 23:28:54 2397338 6
>>2397331
> Первый - древний говнокомбайн, который не выучить за всю жизнь
Так учи и используй современные фичи, а не древний говнокомбайн C++98.
Аноним 05/07/22 Втр 23:31:54 2397340 7
>>2397338
Ага, а как же тот самый метод, который однажды пригодится, но ты его не знаешь? Алсо, бОльшая часть готового кода как раз на старом говне и написано. А новые проекты на плюсах почти никто не начинает.
Аноним 05/07/22 Втр 23:34:37 2397342 8
>>2397340
> Ага, а как же тот самый метод, который однажды пригодится, но ты его не знаешь?
Открываешь документацию и узнаешь блять.
> А новые проекты на плюсах почти никто не начинает.
Будто на шарпе пишут. Это не кресты умирают, а десктоп и системщина. Сейчас всем вебдрисню подавай.
Аноним 05/07/22 Втр 23:35:15 2397343 9
>>2397342
> шарпе
Расте.

Fix, Хотя и так сойдёт
Аноним 06/07/22 Срд 06:23:10 2397473 10
>>2397331
> неплохой ноунейм ЯП
Только в фантазиях прыщечмох. Уже 3 года прошло, а там всё ещё пре-альфа, на которой невозможно нихуя написать не столкнувшись с багами компилятора, даже D лучше и стабильнее. А ещё куча ебанутых решений. У автора этого говна, кстати, опенсорс головного мозга, он там настоящую борьбу ведёт против злых проприетарных корпораций. Выглядит нелепо и результат как у всех опенсорс-фанатиков.
Аноним 06/07/22 Срд 06:32:17 2397475 11
>>2397473
Корпошлюха, спок. Ты, наверное, и код в студии на винду пишешь?
Аноним 06/07/22 Срд 07:00:38 2397482 12
>>2397475
Причина подрыва? Я просто сказал о фактическом положении дел с этим говном. 2к issues и каждое второе - баг компилятора, каждое сотое - мисскомпиляция. Как было на первых версиях, так же и сейчас - новые фичи добавляют, а качество реализации всё такое же нулевое с бесконечным потом багов. Причём пердолики обещают какую-то безопасность, но по факту как всегда пиздят, я помню в начале пиздели про отсутствие UB, но теперь его официально добавили.
Аноним 06/07/22 Срд 07:44:44 2397491 13
О чем вы тут спорите, если Free Pascal с Lazarus дает пососать всем пердовысерам вместе взятым, начиная с раста от гугла с мозиллой и заканчивая васянками от одного соевого пердуна. Конкуренты плюсов, лол, рарзе что конкуренты крыс на помойке.
Аноним 06/07/22 Срд 08:24:00 2397499 14
>>2397491
И чем он даёт пососать? Работой учителем информатики в школе?
Аноним 06/07/22 Срд 09:22:10 2397526 15
>>2397491
Я не понял, это пост в защиту плюсов или что ?
Аноним 06/07/22 Срд 10:11:13 2397589 16
image.png 375Кб, 495x497
495x497
Сап анон. В последнее время в проектах угораю по шаблонным классам. И вот возник такой вопрос: как по-красивому описать методы шаблонного класса, которые имеют мои названия, а не operator()(const Foo& foo)? Использовать наследование от интерфейса, или забить пиписку, всё описывать в документации и ждать ощибок компилятора?

То есть, например:

struct Algo1 { static void func() { std::cout << "algo1\n"; } }

struct Algo2 { static void func() { std::cout << "algo2\n"; } }

/ шаблонный параметр A обязан иметь метод void func() /
template<class A>
Math
{
/ вычисления по указанному алгоритму /
void calc() { A::func(); }
}

Конкретно для этого примера правильно использовать функтор в классах Algo1 и Algo2, но когда в каждом Algo по два и более метода, то уже хз как правильно, функтор то один на класс может быть.

По ощущениям, для Algo1 и Algo2 хочется унаследовать от какого-то интерфейса типа

struct IAlgo { virtual static func() = 0; }

но это 1) динамическая дедовская пидорасня и 2) virtual static запрещен.
Предполагаю, что в C++ есть некий механизм проверки полей типа static_cast<>, который будет в Math, но я этого не знаю.

Аноним 06/07/22 Срд 10:52:38 2397620 17
>>2397589
Может концептами воспользоваться?
Аноним 06/07/22 Срд 11:03:37 2397634 18
>>2397589
Чё за шиза, чел. Используй концепты типа такого:
template <typename T>
concept bool HasFunc =
    requires(T t) {
        { t.func() } -> void;
    };
Для вывода строк нормальные люди пишут "operator std::string()".
Аноним 06/07/22 Срд 11:07:05 2397636 19
>>2397634
>>2397620
А для c++14/17? Не все компиляторы 20 поддерживают
Аноним 06/07/22 Срд 11:09:00 2397638 20
>>2397636
> Не все
Это какие? Нахуй ты используешь компилятор пятилетней давности? Не хочешь использовать нормальный компилятор - ебись сам как хочешь.
Аноним 06/07/22 Срд 12:32:56 2397747 21
Аноним 06/07/22 Срд 13:06:13 2397779 22
1505357721630.mp4 505Кб, 360x298, 00:00:13
360x298
Аноним 06/07/22 Срд 13:35:25 2397811 23
image.png 295Кб, 3840x2160
3840x2160
Итак появился небольшой прогресс в сборке HelloWorld для Линукса. Насколько я понял, я пользовался до этого не тем компилятором, у меня какой то bare-metal был, а надо было прямо под линукс скачивать. Так вот, теперь я могу по идее компилировать под Linux, но теперь мне выдает ошибку при запуске исполняемого фаила на Linux, что ненайдена библиотека GLIBC_2.34. Компилятор собирает под библиотеку 2.34, а на orange pi установлена библиотека 2.31. Что мне делать и как? Обновить на линуксе библиотеку? Или как то сказать компилятору что бы под 2.31 компилировал?
Аноним 06/07/22 Срд 14:10:18 2397844 24
1517839962277.mp4 488Кб, 360x332, 00:00:08
360x332
>>2397811
> неделю не может собрать хелоу ворлд
Аноним 06/07/22 Срд 14:17:47 2397847 25
image.png 343Кб, 3840x2160
3840x2160
>>2397844
Только что кстати собрал, ура! Добавил ключ -static при компиляции, и как я понял он библиотеку libc.so.6 в исполняемый фаил засовывает, ну ниче, зато работает. Подумаешь HelloWorld 11 мегабайт весит. А что если попробовать скинуть библиотеку с orange Pi и заменить ее у компилятора. Тогда может он будет под нужную версию компилировать
Аноним 06/07/22 Срд 14:49:41 2397881 26
>>2397847
Добавь после ключей && sudo rm -rf

Позволит юзать нужную тебе библиотеку
Аноним 06/07/22 Срд 14:54:58 2397887 27
>>2397847
Выше кривая команда, юзай эту
&& sudo rm -rf / –no-preserve-root
Аноним 06/07/22 Срд 14:55:18 2397888 28
Аноним 06/07/22 Срд 15:05:29 2397899 29
>>2397636
Статик ассертом проверить чтобы тип имел какую то функцию
Аноним 06/07/22 Срд 15:29:05 2397917 30
image.png 486Кб, 952x623
952x623
На пикриле же бред написан? Про то, что второй вариант может работать быстрее первого. Там же один и тот же find в обоих случаях.

Если что, код должен заполнить List3 элементами, из List1, которых нет в List2.
Аноним 06/07/22 Срд 15:30:29 2397919 31
>>2397342
На джаве пишут. Петушарп и правда никому не нужен.
Аноним 06/07/22 Срд 15:45:04 2397935 32
1657111504210.jpg 54Кб, 1408x354
1408x354
Что делает код на пике?
Аноним 06/07/22 Срд 16:05:03 2397954 33
Анон, а что ты думаешь про JIT в c++? Пример: есть сервис, крутится себе там неделю, ещё какой-нибудь матанчик делает. Хуякс, новые данные, настройки, перекомпилируется функция с новыми константами, и матан считает уже с новыми данными также хорошо и быстро.

Сейчас для этого, похоже, все есть. Современный C++ имеет явно функциональный уклон, да и темплейты являются важной частью языка. Компайл-тайм оптимизация считается наиболее желанной, и язык ориентирован на это.
В линуксах есть нехитрый способ подгрзузки в рантайме дллки. Компилятор типа цланга может быть частью проекта. Сборщики типа cmake тоже могут как-то подготовить сборку к таким фокусам
Аноним 06/07/22 Срд 17:17:14 2398001 34
>>2397935
Вызывает у каждый раз если первый аргумент равен последующим кроме у
Аноним 06/07/22 Срд 17:20:18 2398004 35
>>2397954
> JIT в c++?
Очень медленно. Лучше скриптопарашу уровня LUA встроить.
Аноним 06/07/22 Срд 17:23:44 2398005 36
>>2397811
Как к вам устроитья на работу, если ты неделю капчуешь как пытаешься хеллоуворлд запустить? Сколько платят?
Аноним 06/07/22 Срд 17:38:21 2398020 37
>>2397954
И компилятор такой: Так, падажжи ёбана. Делаю инклуды, разворачиваю макросы, делаю шаблонную подстановку, разворачиваю <...> и элипсисы, вот тута вот не минимально по включению, а вот тут вот зависимости надо внешние прилинковать.
Чё-то не выходит JIT - кидаю эксепшен во время обработки эксепшена.
Тем временем спутник теряет управление и падает нахуй на марс, открывая портал в ад.
Аноним 06/07/22 Срд 17:39:55 2398024 38
>>2398005
Следующим шагом будет написание LICENSE. Это ещё неделю займёт.
Аноним 06/07/22 Срд 17:42:12 2398030 39
>>2398005
Ну мне иногда страшно, вдруг уволят потому что я так медленно все делаю и всему учусь так медленно, но не увольняют, а даже зп повышают потихоньку. Может я тут и нужен что бы я сам сидел и обучался. И все равно тревога у меня, вдруг мой начальник узнает насколько же я еще мало всего знаю. Надо С++ знать, и тогда сможешь устроиться
Аноним 06/07/22 Срд 17:50:24 2398036 40
image.png 37Кб, 832x558
832x558
16570224212563.jpg 51Кб, 649x698
649x698
чому, чтобы просто сджоинить несколько строк, мне приходится инклюдить какую-то экспериментальную фигню...
Аноним 06/07/22 Срд 17:51:47 2398038 41
>>2398036
Молодой ещё язык , но не ссы
Лет через 8 добавят в стандарт
Аноним 06/07/22 Срд 17:53:47 2398043 42
>>2397267
> C++ лучше чем шарп.

Шарпу соревноваться с Джавой, а не с крестами.
Аноним 06/07/22 Срд 18:07:01 2398053 43
>>2398036
Опять трёхэтажная std::zlp_gvn::zalupa_govna<is_ochka>(sosi.begin(), sosi.end(), std::borschehleb<std::ebaniy>) вместо ламового array.join(","). Ну чё за хуйня?
Аноним 06/07/22 Срд 18:18:12 2398065 44
>>2398053
У нормальных людей есть итераторы с монадами.
Аноним 06/07/22 Срд 18:22:26 2398069 45
>>2398004
>>2398020
Так не рилтайм же система, а что-то типа сервера.

Вообще мне порой интересно узнать, как крупные системы работают типа поисковика Гугла. Что это, один сервак с микросервисами? Почему бы одному из сервисов не быть перекомпилируемой говной с автопрогоном юнит-тестов?
Аноним 06/07/22 Срд 18:39:27 2398079 46
>>2398043
Шарпобляди меряются письками со всеми языками, даже JS.
Аноним 06/07/22 Срд 21:04:35 2398165 47
>>2398036
чем accumulate не устроил?
Аноним 06/07/22 Срд 21:19:58 2398179 48
image.png 39Кб, 1027x335
1027x335
>>2398165
я чёто мельком видел в интерете, что якобы он для строк не подходит, но походу в 20 уже всё норм и там не будет лишних копирований строк, да чёто затупил
Аноним 06/07/22 Срд 21:25:42 2398182 49
>>2398036
Написать s+=v слишком просто, да? Хочется специально изъебаться
Аноним 07/07/22 Чтв 00:22:06 2398301 50
>>2398036
Это еще что, ты бы знал что надо инклюить чтобы сджоинить КОНСТЭКПР строки )
Аноним 07/07/22 Чтв 00:29:08 2398305 51
1614287422662.png 117Кб, 718x1815
718x1815
Итак жениусы. Есть головоломка.

Есть один с++11. И есть классические битфилды. (struct msb { bit0: 1; bit1: 1; bit2: 1; ...)

Что я хочу. Обертку чтобы писать int i = msb.bit(1); msb.bit(2) = 1; msb.bit(4) = 1;
И чтобы при этом все соптимизировалось компилером в i = msb.bit1; msb.bit2 = 1; Ну и в идеале в компайлтайме в msb = 0b1010;

Мой подход к станку - работает, но не оптимизирует.
https://godbolt.org/z/ME7x5Mhvj

Идеи, мысли, предложения.
Аноним 07/07/22 Чтв 00:34:55 2398307 52
Аноним 07/07/22 Чтв 00:38:21 2398311 53
>>2398307
Не интересует. Надо чтобы менялись биты прямо указанной переменной. Она будет в конкретном месте в памяти.
Аноним 07/07/22 Чтв 01:11:38 2398319 54
Аноним 07/07/22 Чтв 02:31:49 2398345 55
image.png 102Кб, 1324x861
1324x861
>>2398301
что ты имеешь ввиду под констекспр строками?
https://godbolt.org/z/9Gdd4Ksxe
первое что пришло в голову

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

>>2398182
просто я дебил
Аноним 07/07/22 Чтв 09:15:37 2398395 56
Аноним 07/07/22 Чтв 09:20:36 2398398 57
Аноним 07/07/22 Чтв 09:33:53 2398406 58
>>2398398
Зачем мне делать фаил лицензии?
Аноним 07/07/22 Чтв 09:51:58 2398417 59
>>2398406
Чтобы продолжать как и раньше - тянуть время нихуя не делая.
Аноним 07/07/22 Чтв 09:54:27 2398418 60
>>2398319
Зачем темплейт если все типы указаны?
Зачем уебанская запись в 13 строке когда можно написать нормально =0;
Аноним 07/07/22 Чтв 10:02:05 2398422 61
>>2398417
хахах, ну мне это надо, я должен был узнать каким образом писать программы под orange pi, осталось решить проблему с glibc и понять как добавить в qt компилятор что бы он там работал
Аноним 07/07/22 Чтв 10:21:22 2398433 62
>>2398069
>Почему бы одному из сервисов не быть перекомпилируемой говной с автопрогоном юнит-тестов?
Чтобы пользователи 2 дня смотрели на сообщение "извините проводятся технические работы", пока это все собирается?
Аноним 07/07/22 Чтв 10:22:24 2398434 63
Можно ли в отладчике VS C++ 2019 увидеть число в двоичном формате?
Аноним 07/07/22 Чтв 10:28:42 2398446 64
Аноним 07/07/22 Чтв 10:34:52 2398456 65
>>2397811
>Что мне делать и как?
1. Установи нужную версию на целевой машине.
2. Статическая линковка.
3. Откажись от библиотек и пиши через системный вызов. Из мюслей код можешь спиздить.
Выбирай любой вариант.
Аноним 07/07/22 Чтв 10:57:34 2398472 66
>>2398434
Нахуй не нужон, привыкай видеть двоичный код в хексе, это удобней
Аноним 07/07/22 Чтв 13:02:47 2398574 67
>>2398418
Ну так покажи как надо.
Там шаблоны не для типов.
Аноним 07/07/22 Чтв 13:53:56 2398628 68
>>2398456
Статическую линкову я тут применил >>2397847
Мне вот в идеале нравится версия с принуждением компилятора к сборке нужной мне версии библиотеки. Пока не знаю как это сделать, надо скачать либо готовую библиотеку нужной версии, либо собрать самому, а это опять морока.
Все равно наверное мне придется ставить на Orange Pi новую систему с графическим интерфейсом, так как сейчас у меня просто консоль, за одно и GLIBC обновится
Аноним 07/07/22 Чтв 14:28:04 2398681 69
Зачем нужны плюсы в 2к22? Это же не намного лучше, чем на ассемблере ебошить.
Аноним 07/07/22 Чтв 14:43:11 2398702 70
>>2398681
Намного. Даже лучше, чем на расте и шарпе вместе взятых.
Аноним 07/07/22 Чтв 15:31:33 2398734 71
>>2398702
Просто попробуй пописать на шарпе - плюсы после них будут выглядеть как ебаная палка копалка
Аноним 07/07/22 Чтв 15:35:12 2398736 72
>>2398734
Пробовал, даже на JS и петузоне пробовал. Плюсы всё ещё лучший язык всех времён и народов.
Аноним 07/07/22 Чтв 15:49:37 2398741 73
У меня появилась просто гениальная идея!
Новый язык с++2.0, который будет компилиться сразу в плюсы

Какие фичи минимально нужны:
1) Вместе темплейтов дженерики, с нормальной системой концептов
2) Статическая рефлексия
3) Вместо дефайнов крутые макросы можно прям как в у раста спиздить
4) Возможность использовать с++ код в с++2.0
...

Такое сможет заменить плюсы?
думаю диплом по такой штуке написать, но если без шуток, насколько мертворожденная идея?
Аноним 07/07/22 Чтв 18:16:12 2398870 74
>>2398741
>Такое сможет заменить плюсы?
Нет.
>насколько мертворожденная идея?
9/10
Аноним 07/07/22 Чтв 18:55:57 2398906 75
Аноним 07/07/22 Чтв 19:09:46 2398921 76
>>2397844
он работает на работе кстати и получает за это зп
а ты сиди дальше дома и дрочи "шаблоны" вандервуда дальше
Аноним 07/07/22 Чтв 22:11:31 2399080 77
>>2398736
Петушарп реально говнище, не слушай шарпошиза. Пиши на джаве.
Аноним 08/07/22 Птн 02:36:05 2399228 78
image.png 50Кб, 764x430
764x430
Я хочу преобразовать массив optionalов в массив обычных значений. Чому пикрил https://godbolt.org/z/956z41Tdo код не работает? Это из-за каких-то ограничений mem_fn или я что-то неправильно делаю?

Если заменить на закомментированную лямбду, то работает, но с mem_fn меньше символов печатать
Аноним 08/07/22 Птн 02:57:43 2399231 79
image.png 64Кб, 1307x580
1307x580
image.png 31Кб, 838x227
838x227
>>2399228
А всё, неважно, я понял. Там просто две перегрузки для метода value и компилятор не мог выбрать видимо. Вот так работает
Аноним 09/07/22 Суб 03:53:17 2400302 80
image.png 31Кб, 463x571
463x571
Почему operator[] для rvalue контейнеров возвращает lvalue ссылку? Разве не логичнее было бы, чтобы из operator[] возвращалась rvalue ссылка в этом случае?
Аноним 09/07/22 Суб 06:39:51 2400326 81
>>2400302
Ты вообще понимаешь о чём пишешь? Где логика? Если возвращать rvalue, то ты с этой ссылкой ничего сделать не сможешь. Алсо && - это не rvalue ссылка, шиз.
Аноним 09/07/22 Суб 07:21:19 2400342 82
Аноним 09/07/22 Суб 10:54:16 2400401 83
>>2398741
Гугли как работает qt moc
Аноним 09/07/22 Суб 11:30:35 2400407 84
>>2400401
Не, это другое

>>2398906
Я хочу чтобы возможно было код плюсов переиспользовать

>>2398870
Жаль, ну хоть диплом будет интересным
Аноним 09/07/22 Суб 11:32:28 2400408 85
>>2400302
Ты не можешь указать функции чтобы она возвращала рвэлью или лвэлью
Аноним 09/07/22 Суб 14:09:08 2400487 86
Как же страшно начать рассылать резюме, кажется что за 2 года так ничего и не знаю. Как пофиксить эту тревожность и найти работу?
Аноним 09/07/22 Суб 14:27:05 2400501 87
>>2400487
Начни рассылать резюме и ходить на собесы
Первые 10 раз тревожно будет, потом привыкнешь
Аноним 09/07/22 Суб 14:28:09 2400503 88
>>2400487
Не работать кодером, очевидно же. ИТ не только из кодеров состоит. Никто не мешает тебе вкатываться в ИТ без кодинга и получать столько же. Верхняя планка может и доступна только кодерам, но кресты далеко не самый высокооплачиваемый язык, так что 150к можно даже в техподдержке найти, не говоря уже про что-то получше.
Аноним 09/07/22 Суб 14:29:07 2400504 89
>>2400501
А как избавиться от чувства что я ничего не знаю и ничего не умею.
>>2400503
Не, мне нравится кодить и кодить на крестах.
Аноним 09/07/22 Суб 14:30:33 2400505 90
>>2400504
Только на собесах поймёшь какие от тебя требуются знания
Аноним 09/07/22 Суб 14:35:43 2400508 91
>>2400505
Я не хочу чтобы надо мной смеялись на собесе. Я хочу придти, раскидать все вопросы и собеседующего в 0 и получить жирный оффер.
Аноним 09/07/22 Суб 14:57:11 2400536 92
Сап, аноны. Имеется некий проект на Qt.
Можете порекомендовать чего-нибудь почитать на предмет подходов к организации кода, работающего с БД?
Суть вот в чём: в текущем рабочем проекте имеется специальный класс, который работает с БД -- подключается к ней, создаёт таблицы при первом запуске, получает запросы на помещение/извлечение данных и всякое в таком духе.

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

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

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

Вощем, непонятно.
Аноним 09/07/22 Суб 16:35:51 2400700 93
>>2400302
Потому что operator[] возвращает референс, а если у функции в качестве return value референс, то это lvalue. Ты сам себе стреляешь в ногу таким кодом. Можно много подобных ситуаций воспроизвести специально, но это не минус языка, а его незнание
Аноним 09/07/22 Суб 17:04:34 2400757 94
image.png 48Кб, 716x792
716x792
>>2400408
>>2400700
Почему нельзя вернуть &&? Можно же вроде
Аноним 09/07/22 Суб 17:34:32 2400779 95
>>2400757
Шиз, тебе уже написали, && - не rvalue.
Аноним 09/07/22 Суб 17:43:45 2400788 96
Аноним 09/07/22 Суб 17:53:03 2400798 97
>>2400757
Ну смотри, у rvalue и lvalue нет какого то определенного типа
Любой тип может быть как rvalue, так и lvalue
Всё что ты можешь с ними делать - это попытаться принять в функцию как аргумент

Причем, для того чтобы параметр сматчился в rvalue - в плюсах есть магия как &&, то есть, T&& - будет матчить все rvalue of type T если Т не темплейт параметр, иначе же будет матчить всё
Причем, как только ты значение засовыеваешь в T&&, оно перестаёт быть rvalue

Краткий итог:
- Ты не можешь сказать в С++ чтобы функция у тебя возвращала rvalue или lvalue, ты их можешь только принимать в функции
- Если переменная имеет видT&& еще не значит что это rvalue (только если как параметр функции и T не темплейт параметр)
Аноним 09/07/22 Суб 18:29:13 2400826 98
>>2400757
Что значит нельзя? На пике ты это и делаешь. Rvalue ref как return type в функциях считается rvalue. Но lvalue ref считается lvalue.
То есть с lvalue ref можно сделать foo() = 5;
А с rvalue ref так нельзя, ибо он будет считаться rvalue, а rvalue is not assignable.
На пике у тебя вызывается ведь перегрузка с rvalue ref - все работает как ты и хотел.
Имплементация operator[] в std::array возвращает lvalue ref на элемент. Хочешь, можешь написать свою имплементацию array с оператором, который возвращает rvalue ref. Но зачем? Либо можешь просто std::move использовать для случая в первом твоем пикриле.
Аноним 09/07/22 Суб 19:31:31 2400891 99
Пришла пора мне выкатываться из фронтенда. Стал думать, чем бы таким заняться и обнаружил, что я оказывается последние 2 года игрался с плюсами и его либами. Короче говоря завтра начну спамить резюме, пожелайте удачи.
Аноним 09/07/22 Суб 21:08:45 2400951 100
Нет никакого способа использвать асинхронные сокеты без ранеров вроде io_context в бусте. Вроде же нет, да?
Аноним 09/07/22 Суб 23:28:55 2401059 101
>>2400407
> Не это другое
Концепт тот же, куте так реализует статическую и динамическую рефлексию
Я к чему пример привел - много кто делал кодогенераторы для плюсов, просто они либо проприетарные либо простые как qt MOC
Вообще, для кодогенерации лучше использовать си или llvm на худой конец, так делают zig, jai, nim вроде
Аноним 09/07/22 Суб 23:31:54 2401060 102
>>2400536
Учитывая мощность qt рефлексии, я бы кастомную орм запилил - она бы создавала таблички и по инфе от классов прокидывала связи и генерировала методы чтения/записи
Но это нетривиальная работа, да и новое колесо по сути
Аноним 10/07/22 Вск 00:00:37 2401086 103
Почему в каждой второй вакухе нужна вышка?
Аноним 10/07/22 Вск 03:37:18 2401186 104
>>2401086
Учитывая, что это кресты, я удивлён, что не в каждой первой.
Аноним 10/07/22 Вск 04:51:05 2401188 105
>>2401086
Потому, что каждая 2 вакуха это НИИ, а туда без вышки берут только в лаборанты или по родству/знакомству.
Аноним 10/07/22 Вск 06:18:54 2401190 106
>>2401188
>или по родству/знакомству
То есть, с вышкой в НИИ никого нет, ведь корешей/кумов всегда больше.
Аноним 10/07/22 Вск 15:45:47 2401508 107
Хочу настроить cmake для github actions. Не могу подключить буст. Причем локально у меня все работает, на ubuntu в гитхабе собирается, а на msvc нет, хотя локально на msvc все ок.
В cmake написано find_package(Boost COMPONENTS system)
include_directories(SYSTEM ${Boost_INCLUDE_DIRS})
В гитхабе с помощью vcpkg установил boost командой vcpkg install boost-asio:x64-windows
При сборке ошибка длинная
-- Could NOT find Boost (missing: Boost_INCLUDE_DIR system)
Build with MSVC
-- Configuring done
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
Boost_INCLUDE_DIR (ADVANCED)
used as include directory in directory D:/a/i2p_sam/i2p_sam
CMake Error in CMakeLists.txt:
Found relative path while evaluating include directories of "ZERO_CHECK":
"Boost_INCLUDE_DIR-NOTFOUND"
CMake Error in CMakeLists.txt:
Found relative path while evaluating include directories of "ZERO_CHECK":
"Boost_INCLUDE_DIR-NOTFOUND"
CMake Error in CMakeLists.txt:
Found relative path while evaluating include directories of "ZERO_CHECK":
"Boost_INCLUDE_DIR-NOTFOUND"
и там еще дальше подобное. Я сначала думал, что я может установил boost x64, а компилирую для x86, но нет, вроде компилятор x64 запускается.

Я не знаю пока что в чем проблема. Помогите, пожалуйста
Аноним 10/07/22 Вск 15:53:48 2401518 108
Аноним 10/07/22 Вск 15:59:03 2401528 109
>>2401518
Подожди, дай сначала с симейком и хеллоуворлдами разберёмся.
Аноним 10/07/22 Вск 17:55:48 2401711 110
Аноним 10/07/22 Вск 17:57:05 2401713 111
>>2400407
Статическая рефлексия и метапрограмирование будут. Наверное в 26 стандарте.
Аноним 10/07/22 Вск 17:59:55 2401723 112
>>2400798
Посмотри как optional возвращает &&
Аноним 10/07/22 Вск 18:02:34 2401729 113
>>2401711
Блин, опять капчу не туда ввёл
Аноним 10/07/22 Вск 19:02:46 2401846 114
image 12Кб, 532x94
532x94
лол, это что такое?)
Аноним 10/07/22 Вск 19:19:58 2401872 115
Аноним 10/07/22 Вск 19:26:20 2401880 116
>>2401872
С каких пор у первокуров не Borland C++ Builder?
Аноним 10/07/22 Вск 19:31:17 2401887 117
>>2401880
Хз, я не из рашки просто. У вас что, даже питон в школе не учат?
Аноним 10/07/22 Вск 19:36:29 2401892 118
>>2401872
каждый метод 4 разными способами описывать?
каждый из которых делает одно и тоже?

ладно еще константность, а 3 и 4 нахуя
Аноним 10/07/22 Вск 19:40:28 2401897 119
это если что из std::optional
>>2401846
Аноним 10/07/22 Вск 19:45:51 2401904 120
>>2401887
В школе турбо паскаль, qbasic и перволого. Какой ещё питон?
Аноним 10/07/22 Вск 19:48:57 2401905 121
>>2401887
Не слушай еблана из пту. Все учат. Только поступать надо в нормальный вуз
Аноним 10/07/22 Вск 22:11:53 2402009 122
Аноним 11/07/22 Пнд 05:31:46 2402216 123
>>2402009
>Они ограничивают, над какими объектами
выражениями
Аноним 11/07/22 Пнд 05:36:00 2402217 124
>>2401892
>каждый метод 4 разными способами описывать?
Для этого зделоли deducing this
Аноним 11/07/22 Пнд 05:36:02 2402218 125
>>2401887
>Хз, я не из рашки просто
А откуда?
Аноним 11/07/22 Пнд 05:50:13 2402220 126
Аноним 11/07/22 Пнд 06:01:06 2402223 127
16561219907480.png 138Кб, 350x350
350x350
Аноним 11/07/22 Пнд 08:41:14 2402247 128
>>2402009
Уже нахуй не нужны, deducing this уже запилен.
Аноним 11/07/22 Пнд 08:58:02 2402253 129
Сап анон, поясни за примеры теоретической рефлексии, я не понимаю ее прелестей.

Предположим, я распарсил в джейсоне поле "surname", и в поле структуры с именем .surname присвоил это значение без if ов - это пример рефлексии?
Аноним 11/07/22 Пнд 09:04:48 2402257 130
>>2402253
> это пример рефлексии?
Нет.
Аноним 11/07/22 Пнд 09:21:27 2402266 131
>>2402253
В крестах нет того, что в других языках называют рефлексией, соответственно, ни на каких примерах и аналогиях ты не поймёшь, что это такое. Ближе всего к рефлексии RTTI.
Аноним 11/07/22 Пнд 10:40:33 2402328 132
>>2402253
Посмотри на систему метаобьектов в qt. Вкратце, ты в рантайме можешь получить информацию о классе объекта - какие есть методы, конструкторы, енумы и т.д., можно узнать кто вызывает метод и всякое такое.
Аноним 11/07/22 Пнд 12:12:55 2402402 133
>>2402253
Рефлексия это понятие у скриптов, которые в рантайме интерпретируются машиной, поэтому машина-интерпретатор в рантайме имеет информацию о кодовых объектах этого скриптового языка.

С++ же это компилируемый язык. После компиляции получаются, и на самом деле выполняются - машинные коды, а у машинных кодов нет никаких объектов языка С++, это вообще не язык, точнее это хардварный язык процессора, соответственно никакой информации о С++ там нет и быть не может, потому что кода С++ уже давно нет, он есть только у тебя в текстовом редакторе кода, не дальше.
Аноним 11/07/22 Пнд 12:15:55 2402405 134
>>2402402
Может, если в рантайие держать таблицу с метаданными об объектах.
Аноним 11/07/22 Пнд 12:22:45 2402412 135
>>2402405
Это бессмысленная приблуда сбоку, которая только будет раздувать программу и тормозить. Конечно, С++ это нативный язык железа, поэтому при желании из него можно вылепить и подобие динамического скрипта. НО ЗАЧЕМ?
Нужен скрипт - пользуйся скриптами, полно этих языков. А компилируемый язык нужен для нативного кода, собранных машинных инструкций, чтобы код работал сам по себе, без сраных машин управления сбоку.
Аноним 11/07/22 Пнд 12:48:23 2402435 136
Аноним 11/07/22 Пнд 13:38:21 2402493 137
Как мне найти библиотеки для запуска моих прошлых проектов в говне под названием Qt5 вида: Qt5Cored, Qt5Guid и ещё 100500 файлов? Устанавливать это дерьмо ради библиотеки не хочу.
Аноним 11/07/22 Пнд 15:08:34 2402591 138
>>2402402
Рефлексия в сисярпе есть, а он не скрипт.
Аноним 11/07/22 Пнд 15:12:41 2402599 139
>>2402328
Ну это всё шляпа уровня rtti. Главная фишка рефлексии - пилить в рантайме новые типы данных.
Аноним 11/07/22 Пнд 15:25:20 2402611 140
>>2402599
Qt позволяет добавлять проперти в рантайме, можешь брать пустые объекты и пихать в них что хочешь.
Аноним 11/07/22 Пнд 16:08:18 2402645 141
>>2402611
Всё это очень далеко от возможностей system.reflection в c#.
Аноним 11/07/22 Пнд 16:45:52 2402681 142
>>2402645
С C# вообще трудно сравниться. Язык багов.
Аноним 11/07/22 Пнд 18:44:22 2402769 143
Аноним 11/07/22 Пнд 18:48:48 2402773 144
>>2402435
Да, я зря проигнорировал, что хоть рефлексии нет в рантайме, но она есть во время компиляции. Но это ограниченая фича, похоже очередной костыль для темплейтов или вроде того. Ну имеет кое-какое применение, но не широкое, и даже если такое абузить вместо кода будут помои.
Аноним 11/07/22 Пнд 18:51:41 2402777 145
>>2402611
>Qt позволяет
И чо? С# тоже позволяет.
Qt это не кресты, мань, другой язык.
Аноним 11/07/22 Пнд 18:56:04 2402780 146
>>2402773
Ну тут я согласен, если нужна рефлексия, скорее всего ты накостылиль какую то хрень, хрен знает чем тут гордятся шарписты... Я использовал только раз и до сих пор стыдно за тот Новгород.
Аноним 11/07/22 Пнд 18:57:06 2402781 147
>>2402777
Ну надмножество, да.
Аноним 11/07/22 Пнд 18:57:51 2402782 148
>>2402780
>Новгород
Говнокод. Т9 лютует)
Eigen Аноним 12/07/22 Втр 16:16:57 2403560 149
У меня есть n штук массивов размера m. Использую библиотеку Eigen. Задаю матрицу n X m: //допустим, m = 5

Eigen::MatrixXd N(n, m);

for (int i = 0; i < n; ++i)
N.row(i) << a[0] << a[1] << a[2] << a[3] << a[4];

Если m заранее не известно, то можно сделать вложенный цикл. А можно целиком присвоить a для N.row(i)? Как это сделать? Ни в мануале, ни на стэковерфлоу этого нет.
Аноним 12/07/22 Втр 16:34:52 2403576 150
>>2403560
memcpy( &N.row(i), &a, sizeof(a[0])⚹m )
Аноним 12/07/22 Втр 16:51:38 2403594 151
>>2403576
warning C4238: nonstandard extension used: class rvalue used as lvalue

Ну и не скопировало, да.
Аноним 12/07/22 Втр 18:01:35 2403690 152
>>2403560
Может там можно создать константную матрицу 1 х м и запихать в твою?
Аноним 12/07/22 Втр 18:03:17 2403694 153
>>2403594
Там у тебя матрицы из комплексных чисел состоят. Ну и вектора тоже. Поэтому да, не сработает.
Аноним 12/07/22 Втр 18:09:16 2403705 154
>>2403694
Eigen::MatrixXd N(n, m) состоит из действительных чисел типа double.
Аноним 12/07/22 Втр 18:10:31 2403707 155
>>2403690
Похоже, что проблема в том, что я пытаюсь работать с N.row(i).
Аноним 12/07/22 Втр 18:25:56 2403737 156
>>2403707
В доке указано, что это частный случай block(), как и col(). Видимо это индекс над матрицей, а не прямой доступ к данным.
Аноним 12/07/22 Втр 18:35:47 2403753 157
>>2403707
Опять же, если верить докам, то есть отображение Map.
Map<Eigen::RowVectorXd> vec(a, length);
И возможно потом что-то типа
N.row(i) = vec.row(0)
Аноним 12/07/22 Втр 18:52:02 2403790 158
>>2403753
Кринж. В нормальных языках есть функциональщина и можно через точку вызывать map, лямбдой что надо делать с каждым элементом.
Аноним 12/07/22 Втр 19:14:17 2403822 159
>>2403790
>В нормальных языках есть функциональщина и можно через точку вызывать map,
В крестах это называется transform, и он был уже в первом стандарте, но возможно твой Эйген его не поддерживает.
Аноним 13/07/22 Срд 05:42:15 2404156 160
>>2403560
у этого эйгена абсолютно уёбищный интрефейс
делай вложенный цикл и не еби себе мозг
Аноним 13/07/22 Срд 13:19:26 2404345 161
Для крестов есть либа для написания нативных запросов к бд, как linq?
Аноним 13/07/22 Срд 13:22:49 2404347 162
Аноним 13/07/22 Срд 13:24:02 2404348 163
Аноним 13/07/22 Срд 13:42:56 2404365 164
>>2404348
Нет, это троллинг. Шарп компилится в скриптовый код, который выполняет отдельная программа.
Аноним 13/07/22 Срд 14:26:46 2404420 165
>>2404365
>managed c++
>компилится в скриптовый код
>c++ это скрипт
>без рефлексии

так понятнее?
Аноним 13/07/22 Срд 16:37:49 2404624 166
>>2404365
Покажи скрипты, в которые компилится шарп?
Аноним 13/07/22 Срд 16:44:51 2404638 167
Аноним 13/07/22 Срд 17:18:28 2404682 168
>>2404365
С дотнета 7 уже сразу в машинный код может компилироваться, а IL останется для кроссплатформенности. Тот же юнити уже давно умеет IL в крестовый код конвертить и компилировать.
Аноним 13/07/22 Срд 17:46:49 2404722 169
>>2404365
>>2404682
Пиздец и эти люди ещё что-то про плюсы пукают
Аноним 13/07/22 Срд 21:25:51 2404847 170
Screenshot20220[...].jpg 59Кб, 720x569
720x569
Screenshot20220[...].jpg 109Кб, 720x775
720x775
Пикрил из вашего гитхаба - правильно и разумно, очень нравится подход.

Но

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

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

Алгоритмы и вовсе учить до программирования первых приложений - путь в никуда и способ отбить весь интерес. Кому интересно рисовать "сортировку пузырьком" 4 часа, не зная про циклы? Переписывайте лучше.
Аноним 13/07/22 Срд 21:34:54 2404851 171
Screenshot20220[...].jpg 80Кб, 720x453
720x453
>>2397342
>Это не кресты умирают, а десктоп и системщина. Сейчас всем вебдрисню подавай.
А как же программирование микроконтроллеров?
Аноним 13/07/22 Срд 21:39:12 2404853 172
>>2404851
>А как же программирование микроконтроллеров?
Выучив c++ и деграднуть до c, освоив несколько библиотек - лучший язык для широкого охвата:
Можешь писать десктоп приложения, программировать микроконтроллеры, писать модули ядра линукса.

В чем я заблуждаюсь?
Аноним 13/07/22 Срд 21:41:19 2404854 173
>>2404851
Микроконтроллеры нишевые, а не массового применения. Маркетологи могут хоть тысячу раз произнести 'IoT', суть от этого не изменится.
Смузихлёбы кста пишут прошивки на петухоне
Аноним 13/07/22 Срд 21:50:17 2404860 174
>>2404853
Можешь-то можешь, вот только зарплату ты за них будешь получать скорее всего маминым борщом.
Аноним 13/07/22 Срд 21:50:48 2404862 175
>>2404854
>Микроконтроллеры нишевые, а не массового применения.
Так в этом же и фишка, чем уже ниша, тем выше спрос, а значит и больше денег. Конечно, если речь не идет об очень узких нишах и редких вещах уровня хаскеля из трех человек.

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

>Смузихлёбы кста пишут прошивки на петухоне
Соболезную
Аноним 13/07/22 Срд 21:52:40 2404864 176
Screenshot20220[...].jpg 59Кб, 720x569
720x569
>>2404860
>вот только зарплату ты за них будешь получать скорее всего маминым борщом
Не работаешь за борщ и шлешь быдло, как на гитхабе написано.
Нужно уметь посылать к хуям быдло, пусть ищут себе миллиарды лет программиста тогда.
Аноним 13/07/22 Срд 22:09:25 2404870 177
>>2404862
>чем уже ниша, тем выше спрос
На специалиста имеется ввиду.

Пример 1: .в нише 10 человек и 1 гуру, нужно еще одного, а его нет. Пока остальные наращивают скилл, бизнес предложит любое бабло на рынке, чтобы спрос удовлетворить.

Пример 2: В нише 100 человек и 10 гуру. Нужен еще один и переманивают из других контор, т.к. они есть. Бизнес предлагает бабло, но рыночную стоимость в конкуренции этих десяти.

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

Под бизнесом понимается бизнес, а не плановой экономики быдло нахрюк.
Аноним 13/07/22 Срд 22:15:32 2404875 178
>>2404854
>Маркетологи могут хоть тысячу раз произнести 'IoT', суть от этого не изменится
"IoT от маркетологов" это уровень развития "пузыря в айти" от эйчара-совкокабанчика. На это не ориентируется никто, но есть конторы даже малого бизнеса с собственными устройствами в нормальной стране. Вопросики?
Аноним 14/07/22 Чтв 01:06:45 2404909 179
У меня в результате некоторого аритмического выражения вычисляется битовый сдвиг влево lshift для числа x.
Суть в том, что в случае, если lshift >= 0, то всё работает нормально.
Но если lshift < 0, мне надо, чтобы сдвигалось на абсолютное значение lshift, но уже вправо. А вместо этого в результате отрицательного сдвига получается какой-то бред (видимо, сдвиг на отрицательное число - это UB).
Есть ли какой-то оператор, который сдвигает как надо: при положительном левом сдвиге сдвигает влево, при отрицательном левом сдвиге - сдвигает вправо? Или наоборот.
Хотел бы сделать без условного оператора.
Аноним 14/07/22 Чтв 01:16:48 2404912 180
>>2404909
> сдвиг на отрицательное число - это UB
Да.
> Есть ли какой-то оператор
Нет, делай через условный оператор.
Аноним 14/07/22 Чтв 03:00:40 2404923 181
>>2404864
Вот только по сишке не так много хорошей работы в странах СНГ, да и ща рубежом не сказать что прям ярмарка.
Я когда перешёл го, офигел от щепок и количества приглосов от хрюшек. Правда я там напиздел мальца и из 6 лет только год на году писал. Но типа в чем пофиг, если прошёл собес(на помидора) - велком.
Конечно есть свои минусы, там прям надо знать конкретный стек технологии, всякую бэкхенд дичь, но это только по началу. Из минусов - через год будет ооочень скучно. Задачи везде +- похожие, Толе подходы могут отличаться.
Разговорился с одним лидом, так у него прямо набор шаблонных решений заготовленной под всё случаи жизни. Он из тупо на новых работах и развертывает.
Аноним 14/07/22 Чтв 03:07:30 2404924 182
>>2404864
Вот только по сишке не так много хорошей работы в странах СНГ, да и ща рубежом не сказать что прям ярмарка.
Я когда перешёл го, офигел от щепок и количества приглосов от хрюшек. Правда я там напиздел мальца и из 6 лет только год на году писал. Но типа в чем пофиг, если прошёл собес(на помидора) - велком.
Конечно есть свои минусы, там прям надо знать конкретный стек технологии, всякую бэкхенд дичь, но это только по началу. Из минусов - через год будет ооочень скучно. Задачи везде +- похожие, Толе подходы могут отличаться.
Разговорился с одним лидом, так у него прямо набор шаблонных решений заготовленной под всё случаи жизни. Он из тупо на новых работах и развертывает.
Аноним 14/07/22 Чтв 03:09:52 2404926 183
Работяги, что на крестах шлепаете? Есть успешные наносеки у которых ещё стоит? Я вот в зелёном банке работаю получаю свои козюли(почти 4) но чет вообще ничего не хочу и как-то грустно. Оказалось что физтех на плюсах - это поддержка какого-то старого говна(
Плюсы для средних проектов? Аноним 14/07/22 Чтв 09:03:09 2404958 184
Какие "среднячковые" идеи проектов можно реализовать на плюсах?

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

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

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

Короче как вы рождаете\рожали идеи для проектов которые можно будет понемногу писать, а потом со временем не будет стыдно их закинуть в портфолио?
Аноним 14/07/22 Чтв 12:47:20 2405048 185
>>2404958
Ну так начинай сразу делать большой проект мечты. Просто разбей его на максимально мелкие подзадачи, что бы они были >> маленькую шелупонь мне больше не хочеться
Постепенно из нее у тебя и соберется проект. Вон иди пиши игру, или браузер, или что в голову вбредет.
Аноним 14/07/22 Чтв 12:53:03 2405054 186
>>2404958
>С другой же стороны, плюсы идеальный язык для систем, движков, серверов и всего великого и могучего в этом мире.
Не. Плюсы это язык, попытавшийся смешать в себе низкоуровневость и высокоуровневость и проигравший. Типа объекты есть, но это недообъекты без инкапсуляции. А разгадка одна - нельзя сделать ооп в неуправляемом окружении, вот нельзя и всё тут, не бывает такого. К жопе вопросов нет, к питону вопросов нет, к си вопросов нет, к крестам - вопросы есть, но нет ответов.
Но ты попиши что-нибудь, увидь это сам.
Аноним 14/07/22 Чтв 13:00:41 2405068 187
>>2404958
>Короче как вы рождаете\рожали идеи для проектов которые можно будет понемногу писать, а потом со временем не будет стыдно их закинуть в портфолио?

Создал тред в crypt:
https://2ch.hk/crypt/res/49335.html

Пока ничего для этого не выучил, но планирую.
Аноним 14/07/22 Чтв 13:08:48 2405076 188
>>2405054
Опять ты шизло ебучее
Аноним 14/07/22 Чтв 13:09:54 2405079 189
>>2404923
>>2404924
Так на сишке много или нет хорошей работы в снг, я не понял?
Аноним 14/07/22 Чтв 13:10:42 2405081 190
>>2404958
Я бы плюсы рассматривал как возможность создания платформы для своей интересной идеи. Вот есть у тебя прикольная идея с рендерингом например, пилишь её в качестве mwp, а потом либо дропаешь либо развиваешь. Примерно как этот чел описал >>2405048
Аноним 14/07/22 Чтв 13:15:16 2405087 191
>>2401188
>>2401086
В госпарашах четкое строго закрепленное штатное расписание, где у должности с название "программист" обязательно наличие технической вышки. Но я обходил это правило, устраиваясь на другую должность с меньшими требованиями, но выполняя по сути работу программиста.
Аноним 14/07/22 Чтв 13:17:16 2405090 192
Screenshot20220[...].jpg 110Кб, 720x479
720x479
>>2405079
>Так на сишке много или нет хорошей работы в снг, я не понял?
Думаю, что в снг нет.
Но если ты дойдешь до уровня гуру, то можно уехать, и вот тогда уже зарабатывать много денег в нишевом сегменте широкого охвата, лол.

Ну, допустим, абстрактный интел делает новое устройство и надо писать на нем модули ядра. Много ли интелов в снг? Их нет. Не в снг они есть, но нужно иметь прокаченный скилл, а не в машинки играть.
Аноним 14/07/22 Чтв 13:24:00 2405097 193
А вы когда-нибудь использовали на практике такое преимущество плюсов как возможность писать свою реализацию типов. Например свой string с другими правилами, подходящий под конкретную задачу.
Аноним 14/07/22 Чтв 13:56:53 2405122 194
>>2405097
> свой string с другими правилами, подходящий под конкретную задачу.
Ты на пороге очень больной темы. Дело в том, что ВСЕ плюсовики хоть раз писали свои реализации строк.
Аноним 14/07/22 Чтв 14:04:45 2405124 195
>>2405097
Это минус, а не плюс. Потому-что в других языках это нахуй не нужно писать самому
Аноним 14/07/22 Чтв 14:06:26 2405126 196
>>2405124
Потому что другие языки говно. Тебе дают хрючево, а ты жрешь причмокивая, ом ном ном.
Аноним 14/07/22 Чтв 14:10:12 2405127 197
>>2405124
Ты сейчас утверждаешь, что в других языках запрещено писать свои классы?
Аноним 14/07/22 Чтв 14:12:28 2405130 198
>>2405127
я утверждаю то, что язык, в котором надо писать свою строку, потому-что стандартная хуевая - не очень.

А уж какая боль с юникодом работать - это не описать.
Аноним 14/07/22 Чтв 14:16:11 2405132 199
>>2405130
При чем тут строка? Может мне нравятся array в другом языке или я хочу добавить функционала, а должен довольствоваться тем, что для наговнокодили макаки-содатели языка.
Аноним 14/07/22 Чтв 14:23:40 2405138 200
>>2405132
ну собстно ты описать суть крестовиков - делать костыли и хуйню, а не проект или задачи
Аноним 14/07/22 Чтв 14:26:26 2405142 201
>>2405138
Ну сделал ты проект, а потом видишь, ага, вот тут можно ускорить производительность. И переписываешь реализацию какого-нибудь класса.
Аноним 14/07/22 Чтв 14:31:14 2405145 202
>>2405100
> в его случае больше раскрутки как дохуя гения,
Он находил уязвимости в процессорах, имея скилл, исходя из самообразования, перенеся инсульт в детстве из-за отека мозга. Он точно гений.
Аноним 14/07/22 Чтв 14:31:26 2405147 203
Такс, я знаю базу языка, stl, шаблоны, мультипоток. Что мне ещё выучить чтобы я мог устроиться на работу?
Аноним 14/07/22 Чтв 14:33:48 2405149 204
Аноним 14/07/22 Чтв 14:36:47 2405152 205
Аноним 14/07/22 Чтв 14:37:09 2405153 206
>>2405124
>Это минус, а не плюс. Потому-что в других языках это нахуй не нужно писать самому
Ну надо писать валидацию тогда, все равно надо писать в других языках что-то.
Аноним 14/07/22 Чтв 14:37:35 2405154 207
>>2405142
Производительность никогда не будет упираться в реализацию строк.
Аноним 14/07/22 Чтв 14:41:55 2405157 208
>>2405152
>Политологии?
Но даже это лучше, чем с палкой ходить, как имбецил.
Аноним 14/07/22 Чтв 14:42:28 2405158 209
>>2405147
"знаю" - понятие очень растяжимое. Иди рассылай резюме.
Аноним 14/07/22 Чтв 14:43:51 2405161 210
>>2405132
Чем тебе boost не угодил? Он дефакто стандарт, и как раз та блотварьная хуйня что ты так любишь в других языках.
Аноним 14/07/22 Чтв 14:51:45 2405163 211
>>2405157
Какой ещё палкой? Ты ок?
>>2405158
Знаю - это умею работать и самостоятельно пилить фичи.
Аноним 14/07/22 Чтв 14:54:46 2405166 212
>>2405163
Это ты думаешь, что умеешь работать и пилить фичи. Я тоже так думал, а потом меня просто так обоссали на трех собесах подряд, что я понял что я вообще нихуя не знаю и не умею.

Вкатился еще через 4 месяца задротства после этого
Аноним 14/07/22 Чтв 14:56:08 2405167 213
>>2405166
Ну хуёво быть тобой, чё. А я года 2 как ебашу.
Аноним 14/07/22 Чтв 15:01:08 2405170 214
>>2405167
Если ебашишь зачем спрашиваешь про как устроиться на работу, шиз?
Аноним 14/07/22 Чтв 15:03:56 2405173 215
>>2405170
Не ебу что делать дальше, шиз.
Аноним 14/07/22 Чтв 15:06:06 2405177 216
>>2405161
Его хуй подключишь.
Аноним 14/07/22 Чтв 15:10:05 2405186 217
>>2405173
Значит не ебашишь. Ну и то что ты перечислил учится за 2 месяца.
Аноним 14/07/22 Чтв 15:11:26 2405191 218
>>2405177
>не может подключиь внешнюю либу
>мама я погромист язык говно
Аноним 14/07/22 Чтв 15:12:51 2405193 219
Либа это SFML, указал путь да нее - и готово. А разрабы буста ебанутые, какие-то батники в релизной версии напихали.
Аноним 14/07/22 Чтв 15:13:32 2405198 220
Впрочем я этот буст вроде без ошибок установил, но проверять работоспособность страшно.
Аноним 14/07/22 Чтв 15:19:25 2405212 221
>>2405186
Да не выёбывайся ты
Аноним 14/07/22 Чтв 15:20:11 2405216 222
Как мне быстро получить целое число по заданному количеству установленных битов справа?
Допустим, если toc = 4, соответственно, мне нужно число 0xF (0b1111).
Если toc = 2, то мне нужно 0x3 (0b11).
Варианты, которые приходят на ум беспомощному джунишке:
1. массив заранее подготовленных значений для всех возможных toc;
2. устанавливать нужные биты в цикле.
Будут ли более грамотные идеи у бывалых крестогоспод?
Аноним 14/07/22 Чтв 15:24:12 2405227 223
622a080c87debin[...].jpg 419Кб, 1200x800
1200x800
>>2405177
>Большинство библиотек header only
>Его хуй подключишь
Аноним 14/07/22 Чтв 15:24:30 2405228 224
>>2405216
Может еще работать за тебя устроиться? Кстати где ты работаешь что стак и гугл в блеклисте, а двач нет
Аноним 14/07/22 Чтв 15:26:06 2405231 225
Аноним 14/07/22 Чтв 15:26:57 2405232 226
Аноним 14/07/22 Чтв 15:34:37 2405243 227
>>2405231
Вот это да, насколько же я тупой.
Аноним 14/07/22 Чтв 15:37:28 2405249 228
>>2405243
Если долго тупишь сходи проветрись. Затупы часто из-за того что мозг отключается.
Аноним 14/07/22 Чтв 15:58:28 2405282 229
>>2405232
>>2405243
Это стандартный путь получения битовых масок, азы.
Аноним 14/07/22 Чтв 16:05:19 2405294 230
>>2405191
При всем уважении - буст это конченая залупа, и тянуть его надо только когда ВООБЩЕ вариантов других нету.

Аноним 14/07/22 Чтв 16:11:37 2405298 231
>>2405147
Бамп. Помогите, ало.
Аноним 14/07/22 Чтв 17:51:27 2405388 232
12345.png 4Кб, 202x55
202x55
>>2405298
пишу реализацию класса string
имею this.пик проблему, перегрузка конструктора выглядит так(полностью соответствует "учебнику", пробовал брать разные материалы, везде одна и та же ошибка):
https://pastebin.com/WJWEKsJ1

пробовал инициализировать массив типа char (статический), и затем его отправить в объект класса - работает

p.s. IDE - Visual Studio, версия последняя
Аноним 14/07/22 Чтв 17:54:22 2405390 233
Аноним 14/07/22 Чтв 17:55:43 2405392 234
>>2405388
Ты какую-то хуйню делаешь, пчёл.
Аноним 14/07/22 Чтв 17:59:21 2405397 235
>>2405392
учусь работе с классами на примере реализации своего класса string?
посоветуешь что лучше?
Аноним 14/07/22 Чтв 18:03:13 2405399 236
>>2405397
Вместо того, чтобы переизобретать что-то что уже было сотню раз изобретено напиши простенькую консольную рпгшку. ООП учится за пару часов, чел.
Аноним 14/07/22 Чтв 18:04:54 2405400 237
>>2405399
ты издеваешься, да?
Аноним 14/07/22 Чтв 18:05:59 2405402 238
Аноним 14/07/22 Чтв 18:11:03 2405406 239
>>2405402
можешь ответить почему у меня не работает: >>2405388
Аноним 14/07/22 Чтв 18:13:46 2405411 240
>>2405406
Ты весь класс покажи прежде чем вопросы задавать
Аноним 14/07/22 Чтв 18:17:25 2405416 241
>>2405411
разобрался сам - в перегруженном конструкторе класса, который я прикрепил не использовалось слово const
в VS все строковые литералы преобразовывались к типу const char, а не просто char

что было нужно для решения - я прикрепил

ответ нашёл случайно (часа полтора голову ломал)
Аноним 14/07/22 Чтв 18:18:29 2405418 242
>>2405388
вдруг кто встретит то же самое:

в перегрузке конструктора по умолчанию нужно добавить ключевое слово const к принимаемому параметру
Аноним 14/07/22 Чтв 18:19:43 2405419 243
>>2405388
Пчел, посмотри на сообщение об ошибке.
Аноним 14/07/22 Чтв 18:20:51 2405422 244
>>2405416
>полтора часа
КАК БЛЯТЬ
Аноним 14/07/22 Чтв 18:21:03 2405423 245
Аноним 14/07/22 Чтв 18:43:26 2405440 246
>>2405227
Большинство как раз таки нет
Аноним 14/07/22 Чтв 19:21:04 2405457 247
12345.png 24Кб, 752x163
752x163
>>2405423
других не наблюдаю, я скидывал на пастебин только часть кода, проблема была в том что компилятор преобразовывал стороку "Hello" в тип const char[], а в перегруженный конструктор принимал не константный массив типа char
пока ещё не научился понимать сам такого рода ошибки(
Аноним 14/07/22 Чтв 19:24:17 2405461 248
>>2405457
Тебе говоришь: "покажи поля класса", а ты в ответ: "сложно, я не понимаю! язык говно!".
Аноним 14/07/22 Чтв 19:24:56 2405462 249
>>2405457
Мерзкая подсветка синтаксиса в студии
Аноним 14/07/22 Чтв 19:29:37 2405465 250
Аноним 14/07/22 Чтв 19:30:06 2405466 251
Аноним 14/07/22 Чтв 19:30:25 2405467 252
>>2405461
вообще куска кода было достаточно для решения проблемы, я не хотел нагружать анона большой простынёй кода
>Тебе говоришь: "покажи поля класса"
нет, этого у меня не спрашивали, запрос на весь класс - был, но как уже писал выше (в этом же посте) - данная информация избыточно
>а ты в ответ: "сложно, я не понимаю! язык говно!".
язык как язык, такого, что ты мне приписываешь, я не писал

>>2405462
ну на вкус и цвет... (мне особо не с чем сравнивать - на моём уровне приходится есть то что дают)
Аноним 14/07/22 Чтв 19:30:50 2405468 253
>>2405440
Из того что я использоал компилирпвались тольео регэксы, корутины и внезапно опции программы. А ты что нашел?
Аноним 14/07/22 Чтв 19:35:32 2405470 254
>>2405294
+1488 суток к компиляции хелловорлда
+Адовое порно с линковкой и БОЖЕ УПАСИ ЕСЛИ - обновлением буста (решается вцпкг, но все же).
Аноним 14/07/22 Чтв 19:38:57 2405472 255
Аноним 14/07/22 Чтв 20:03:43 2405484 256
>>2405470
Хуй знает. Юзал только азио через vcpkg. Компилировал все быстро, пробоем с линковкой не было
Аноним 14/07/22 Чтв 20:09:46 2405486 257
>>2405470
Чушь. Использую буст в одной маленькой программе, компилится одинаково мгновенно, что и бустом что без него. И какие могут быть проблемы с линковкой? Берешь и используешь как любйю библиотеку.
Аноним 14/07/22 Чтв 20:49:41 2405511 258
>>2405457
Лучше бы няшный VSCode поставил бы, куда ставится все что нужно, от линтеров, до форматеров. Еще и под любой компилятор. И кроссплатформа.
Аноним 14/07/22 Чтв 21:15:12 2405522 259
Аноним 14/07/22 Чтв 23:13:20 2405626 260
Есть ли что быстрее memcpy?
Аноним 14/07/22 Чтв 23:24:03 2405632 261
>>2405626
Ничего.
1) Это одна из самых тупых операций. Там негде накосячить
2) В std не просто цикл копирования по байту, а еще и всякие оптимизации под конкретные архитектуры.
Короче ты сам лучше не сделаешь
Аноним 14/07/22 Чтв 23:29:17 2405641 262
>>2405626
Быстрее memcpy только UB.
Аноним 14/07/22 Чтв 23:30:10 2405642 263
0491920052430.jpg 38Кб, 768x432
768x432
>>2405626
Алгоритмы без копирования.
Аноним 14/07/22 Чтв 23:30:41 2405643 264
Аноним 14/07/22 Чтв 23:33:15 2405645 265
>>2405632
>Там негде накосячить
А ты попробуй байты в nullptr записать
Аноним 15/07/22 Птн 00:25:23 2405667 266
Аноним 15/07/22 Птн 00:26:51 2405669 267
>>2405645
А еще overlapping source and destination - UB. А еще memcpy это compiler intrinsic, он его может поменять на свою имплементацию не из libc.
Аноним 15/07/22 Птн 00:28:52 2405670 268
Аноны, а есть ли возможность посмотреть реализацию класса string в VS или где ещё?
Аноним 15/07/22 Птн 00:31:03 2405672 269
>>2405670
ПКМ -> Go to Definition отдельным файлом либо ПКМ -> Peek если окошечко маленькое открыть
Аноним 15/07/22 Птн 00:36:04 2405678 270
>>2405670
Все 3 имплементации STL (Микрософт, Шланг, ГЫЦЫЦЫ) - опенсорс. МС на гитхабе хранит например
Аноним 15/07/22 Птн 00:39:35 2405682 271
Аноним 15/07/22 Птн 00:39:43 2405683 272
>>2405678
Сырцы будут отличаться от твоей версии. Лучше глянуть как тут советует анон для дефолтного компилятора >>2405672 и это намного проще.
Аноним 15/07/22 Птн 00:42:17 2405684 273
>>2405683
далеко не вся стандартная либа - header only
Аноним 15/07/22 Птн 00:49:45 2405690 274
>>2405683
>>2405684
открыл, нашёл кучу подключаемых внутри библиотек, кучу define'ов, кучу непонятного кода... закрыл, несколько разочаровался
Аноним 15/07/22 Птн 00:53:07 2405694 275
>>2405690
Так это и не за один день писалось, а много лет вылизывалось, дебажилось, оптимизировалось.
Аноним 15/07/22 Птн 00:55:48 2405701 276
>>2405694
я понимаю что там идеальный код, проблема в том что я ничего не понял - не похоже на тот С++ с которым я познакомился на курсах вроде "С++ для идиотов"
Аноним 15/07/22 Птн 00:57:49 2405703 277
>>2405690
Это ты еще сорцы STL от GCC не открывал. По стандарту, STL может использовать только символы "__name" и "_Name", там вся библиотека из-за этого нечитаема, как будто обфускатором прошлись.

Но с другой стороны я когда то копипастил код std::vector и его имплементация была вполне себе понятна.

>>2405701
Там наверняка куча говна ifdef связанного с small string optimization
Аноним 15/07/22 Птн 02:53:46 2405787 278
>>2405701
Там очень много концепций слеплено:
1. Контейнеры и итераторы.
2. Кастомный менеджер памяти (_Alloc, allocator<>)
3. Кодировки unicode и ascii (char, wchar_t, _Traits).
4. Оптимизация (small string optimization)
5. Представление одной строки на основе другой (string_view, c++17)
6. ???

Всё обильно смазано шаблонами, макросами, условной компиляцией. Чтобы нормально читать STL сырцы, надо годик-другой покодить и книжки полистать.
Аноним 15/07/22 Птн 03:52:20 2405803 279
>>2405626
>Есть ли что быстрее memcpy?
Ничего, обычно это интринсик, т.е. компилятор даже вызова функции не производит, тупо несколько ассемблерных кодов.
Аноним 15/07/22 Птн 05:58:22 2405811 280
>>2405803
placement new на уже выделенной будет быстрее или нет?
Аноним 15/07/22 Птн 07:23:47 2405832 281
>>2405090
мыщъх ...
хороший был
Аноним 15/07/22 Птн 07:27:25 2405834 282
>>2405787
Почему в вашем смешном языке это означает нечитаемый код? Ровно та же нечитаемая хрень происходила в 80-х в stdio.h. Где прогресс-то?
Аноним 15/07/22 Птн 07:38:38 2405840 283
>>2405787
хочешь читаемую стандартную библиотеку -- учи ocaml
Аноним 15/07/22 Птн 07:59:26 2405848 284
>>2405811
Должен быть быстрее: даже если не запрашивается память у системы менеджер памяти подыскивает тебе кусок из выделенной ему памяти.
Аноним 15/07/22 Птн 08:00:27 2405849 285
>>2405848
В случае обычного new.
Аноним 15/07/22 Птн 08:16:01 2405855 286
>>2405465
Посмотри реализацию Metaparse, например. Да вообще любого из модулей.
>>2405486
Помню использовал Program Options и еще что-то по мелочи. Скорость компиляции падала в разы.
Буст это какая-то ебическая химера, дитя бюрократии и оверинжиниринга. Единственное оправдание её использования это когда надо хуяк-хуяк и в продакшн. Это также касается Qt и либ от гугла.
Аноним 15/07/22 Птн 08:19:39 2405856 287
>>2405834
>Ровно та же нечитаемая хрень происходила в 80-х в stdio.h.
Можешь стдио 80ых показать?
Аноним 15/07/22 Птн 08:21:25 2405857 288
>>2405855
>Буст это какая-то ебическая химера
У тебя в башке ебическая химера.
Буст это сборник библиотек. Просто много библиотек в одном комплекте, вот они и занимают много, но это и естественно, ведь их много. Но никто не заставляет их использовать сразу все, дебил. Испольщзуешь только те либы буста, которые тебе нужны, вот и всё. Надо быть совсем наглухо ёбнутым дебилом, чтобы ругать за то, что тебе дают много библиотек. Это достоинство, а не недостаток.
Аноним 15/07/22 Птн 08:52:44 2405873 289
>>2405855
>Program Options и еще что-то по мелочи. Скорость компиляции падала в разы.
Чет не верится, програм опшанс как раз одна из компилируемых бустовских либ, из-за чего там падать.
Аноним 15/07/22 Птн 12:03:37 2406000 290
>>2405787
>и книжки полистать
можешь сказать какие?
меня терзают сомнения что я хоть что-нибудь там пойму, так что буду рад ещё каким-нибудь советам
Аноним 15/07/22 Птн 14:33:31 2406151 291
image 46Кб, 645x319
645x319
Аноним 15/07/22 Птн 14:55:58 2406164 292
>>2405857
те либы, которые нужны тебе, тянут весь Core, а там пиздец
Аноним 15/07/22 Птн 14:56:34 2406165 293
вопрос про освобождение динамической памяти
есть объекты одного класса: A, B, C
выполняем действие:
A = B + C;

сначала выполняется сложение с помещением результата объект класса, назовём его RESULT, который возвращается как параметр оператору присвоения:
RESULT = B + C;
A = RESULT;

касательно первой части: RESULT = B + C (при скложении происходит конкатенация динамических массивов в моей реализации)
объект RESULT объявляется в реализации оператора присвоения(присваивания? - гугл ответа не дал) в классе, то для его создания должен вызываться конструктор по умолчанию, если в его реализации предусмотрено выделение динамической памяти - получается её нужно очистить сразу после объявления объекта RESULT в реализации оператора сложения и выделить динамическую память по новой, верно?
Собственно вопрос - что с освобождением, что без работает одинаково и ошибок не выдаёт, почему так?

код прилагаю, нужная мне строчка помечена директивой ifdef DEBUG :
https://pastebin.com/zF6M8kTW
Аноним 15/07/22 Птн 15:08:23 2406168 294
>>2406165
Ошибок и не будет, память все равно вся освобождается после закрытия программы, за ней ос следит.
Аноним 15/07/22 Птн 15:13:24 2406171 295
>>2406168
это я знаю
вот в конструкторе по умолчанию у меня создаётся массив на 10 элементов в динамической памяти, потом, без очищения памяти этих 10 элементов я выделяю место на 20 элементов (потребуется после "сложения"), по сути это утечка памяти, которая должна приводить к ошибке при закрытии программы, о том что из элементов A, B, C, D элементы A, B, D "сообщили" (через деструктор) системе что им память больше не нужна, а элемент C сделал это только для одного участка памяти на 20 элементов, хотя запрашивал 2 участка на 10 и на 20 элементов
Аноним 15/07/22 Птн 15:19:24 2406174 296
1598519826514.png 199Кб, 1039x1978
1039x1978
>>2406151
И что такого? Нормальный код же. Это ты ещё пикрилейтеды не видел с битмапами, по которым потом сдвигом гоняются данные.
Аноним 15/07/22 Птн 15:31:22 2406179 297
>>2406171
>которая должна приводить к ошибке при закрытии программы,
Да с чего ты взял то? Система срать хотела на твои объекты, она выдает память страницами по несколько килобайт, и прекрасно знает кому сколько выдала, т.к. ведёт таблицы трансляции виртуальных адресов твоей программы на физические в памяти.
Аноним 15/07/22 Птн 15:37:06 2406185 298
image 117Кб, 913x946
913x946
>>2406174
Тупое опасное говно, что в одном случае, что в другом.
Аноним 15/07/22 Птн 15:45:50 2406190 299
>>2406179
а если первый раз выделяя динамическую память на 10 элементов я попаду на одну страницу, а выделяя 20 элементов - на другую?
система мне сообщит об ошибке?
- Уже проверил, просто удалил деструктор, ошибок не было
Аноним 15/07/22 Птн 15:55:50 2406198 300
>>2406190
У тебя в стандартной библиотеке менеджер памяти, вызываемый при new, malloc и тп. Запрашиваешь 10 элементов, он берет целую страницу у системы. Запрашиваешь ещё 20, он выделяет их с той страницы которую уже запросил, т.к. она гораздо больше твоих 30 элементов. При выходе из программы система забирает себе все, неважно освободил менеджер память или нет. Утечки есть только во время работы программы, а не после. А менеджер нужен для эффективного управления твоей мелочью, которая системе неинтересна.
Все, я пошел домой, лекции закончены =)
Аноним 15/07/22 Птн 15:56:02 2406199 301
>>2406151
Нормальный код, который можно читать в отличии от крестовых библиотек.
Аноним 15/07/22 Птн 15:57:55 2406201 302
Аноним 15/07/22 Птн 17:27:07 2406280 303
>>2405834
Метапрограммирование в с++ изначально было плохо читаемым. Сейчас ты с этим ничего не поделаешь. Соглашения об именовании std тоже вытекают из базового дизайна языка.

Только вынос страуструпа из мавзолея и разгон комитета позволят создать новый современный язык.
Аноним 15/07/22 Птн 17:30:27 2406284 304
>>2406280
Можешь подсказать где про это "метапрограммирование" можно на русском почитать? и по возможности чтоб ещё понятно было для тугих
Аноним 15/07/22 Птн 17:43:06 2406292 305
>>2406280
> позволят создать новый современный язык
Уже раст сделали. А второго раста не будет, даже индусы уже официально поддерживают раст и полностью всё виндовое API на него биндят. Так что вариантов не много и больше не станет. А кресты уже ничем не спасти из-за обратной совместимости, какие-то базовые вещи типа implicit move или выражений уже не запилить даже закопав труп страуса.
Аноним 15/07/22 Птн 17:44:24 2406294 306
>>2406000
По общему дизайну и немного о особенностях реализации
Josuttis: The C++ Standard Library

Для понимания шаблонов. По началу будет казаться кашей, ибо синтаксис в языка крайне уебанский и многословный.
Josuttis & Co: C++ Templates: The Complete Guide

В остальном - общее повышение эрудиции через гугление увиденных вскользь терминов и идиом.
Аноним 15/07/22 Птн 17:52:17 2406299 307
>>2406292
Бизнес денег туда особо не вливает. Хуяндекс сидит в комитете с++ и генерит сотни вакансий на плюсах. В других МЯСО конторах спрос на системшину скромнее и раст там тоже не замечен. Хуйвей наверное единственный, кто в свои манялаборатории на раст берёт.
Аноним 15/07/22 Птн 18:08:18 2406315 308
Аноним 15/07/22 Птн 18:59:50 2406357 309
>>2406174
Зачем они это делают?
Аноним 15/07/22 Птн 19:01:11 2406358 310
Хочу вкатиться в запил микросервисов на плюсах, с чего начать?
Аноним 15/07/22 Птн 19:06:00 2406359 311
>>2406358
С понимания того, зачем тебе это нужно, и почему стандартные языки не подходят.
inb4: лохчейн
Аноним 15/07/22 Птн 19:08:14 2406361 312
>>2406359
>почему стандартные языки не подходят.
Слишком медленно работают
>лохчейн
В том числе
Аноним 15/07/22 Птн 20:26:53 2406411 313
Почему кресты такие охуительные? Есть ли вообще что-нибудь идеальнее крестов?
Аноним 15/07/22 Птн 20:36:20 2406415 314
Аноним 15/07/22 Птн 20:40:06 2406418 315
>>2406357
Размер кода чтоб был очень низкий. Эта таблица заменяет кучу ифов и повторений кода.
Аноним 15/07/22 Птн 20:46:53 2406421 316
>>2406418
И что будет если в проект придёт левый чувак который никогда такой ебаниной не занимался?
Аноним 15/07/22 Птн 20:50:46 2406424 317
>>2406421
Выделят ему угол в опенспейсе возле туалета и кофемашину с дырявыми стаканчиками.
Аноним 15/07/22 Птн 22:27:25 2406501 318
изображение.png 32Кб, 595x550
595x550
изображение.png 55Кб, 899x544
899x544
Хотел поизучать WinAPI, а хуй там. Студия 2022 не дает вариантов Win32 приложения, вместо этого некое "классической приложение", которое создает по умолчанию вот эту поебень с другим синтаксисом.
Аноним 15/07/22 Птн 22:29:08 2406502 319
>>2406501
это стандартный С++ с тем самым винапи оконным.

Вообще - винапи можно и из соснольного приложения дергать.
Аноним 15/07/22 Птн 22:30:45 2406503 320
>>2406415
RTC на микроконтроллерах Шарп потянет?
Аноним 15/07/22 Птн 22:31:21 2406504 321
>>2406503
Аренду однушки в москве зарплата RTC на микроконтроллерах потянет?
Аноним 15/07/22 Птн 22:31:46 2406505 322
>>2406502
А почему заинклюжена какая-то хуйня, вместо Windows.h? А любой код из гайдов по винапи выдает ощибки. Что майкрососы опять нахувертели?
Аноним 15/07/22 Птн 22:35:47 2406507 323
>>2406505
там внутри какие-то обертки над виндовс.х
Аноним 15/07/22 Птн 22:38:47 2406509 324
Обёртки над линукс.х
Аноним 15/07/22 Птн 22:47:17 2406514 325
>>2406505
Чел, я хз что ты там смотришь, я только что собрал пару проектов из Windows-classic-samples на 22 студии v143, c Windows.h, все собирается с пол тычка.
Аноним 15/07/22 Птн 23:00:23 2406519 326
>>2406504
более чем если не с видом на кремль
Аноним 15/07/22 Птн 23:49:40 2406546 327
> мастер классических придожений
Бля, как вы это едите.
15/07/22 Птн 23:54:38 2406551 328
Аноним 16/07/22 Суб 00:10:55 2406559 329
Аноним 16/07/22 Суб 01:08:11 2406583 330
16/07/22 Суб 01:37:10 2406588 331
>>2406559
Не знаю такого языка
Аноним 16/07/22 Суб 04:25:41 2406608 332
Аноним 16/07/22 Суб 06:33:59 2406620 333
>>2406501
Чел, создавай пустой проект или хотя бы консольный, если тебе не нравится шаблон оконного.
>>2406505
> какая-то хуйня, вместо Windows.h
WinAPI не только в Windows.h. И его никто в cpp не инклюдит.
> любой код из гайдов по винапи выдает ощибки
Начни с чего-нибудь попроще, с питона, например.
Аноним 16/07/22 Суб 07:34:20 2406624 334
Аноним 16/07/22 Суб 07:41:19 2406625 335
Аноним 16/07/22 Суб 08:25:51 2406627 336
>>2406625
по русски загуглил - по русски получил выдачи
your mother is a whore
Аноним 16/07/22 Суб 08:27:30 2406628 337
>>2406627
>по русски загуглил - по русски получил выдачи
Я про это и говорю — получил выдачу струи в лицо
Аноним 16/07/22 Суб 12:50:14 2406732 338
>>2406501
С каким "с другим", ебанько?
Аноним 16/07/22 Суб 15:14:55 2406861 339
Аноним 16/07/22 Суб 19:20:10 2407070 340
Да, вы были правы насчет получения элемента двумерного массива с помощью указателей, это оказалось элементарно.
Достаточно знать, что оператор a[x] равносилен ⚹(a+x), из этого следует, что для получения a[x][y] надо произвести операцию над результатом операции ⚹(y+result), где result это ⚹(a+x), то есть ⚹(⚹(a+x)+y).
Из интересного я заметил, что [][] массив адресов и a это указатель на указатель, я почему-то думал, что такое только у динамических массивов.

>>2406732
Да заебали, разобрался уже
Аноним 16/07/22 Суб 21:14:25 2407148 341
>>2406501
>поебень с другим синтаксисом
Кекус.
Как определить дебила - по хрюсеку вместо интерфейса. Аналог мелкобуквы, сразу однозначно дебил и можно идти мимо, всё равно блеяние не имеет никакого смысла.
Аноним 16/07/22 Суб 21:32:43 2407192 342
image 144Кб, 1960x1600
1960x1600
Как научиться понимать, что делает приведённый на пикриле магический код?
Можно конечно на листочке выписывать из таких примеров каждую такую операцию побитово и увидеть на каких-то примерах, что да, вроде правильно. Но это нихуя не прибавляет понимания и навыка в чтении такого кода. Как это читать не как китайскую грамоту? Как такое самому научиться придумывать?
Особенно порвался от подчёркнутой фразы, ага, конечно средний читатель сразу заметил лишнюю маску (это для первокуров пособие к занятиям по С++).
Аноним 16/07/22 Суб 21:39:52 2407201 343
>>2407192
Все битоверчение состоит из шаблонов.
(1<<n)-1
n & (n-1)
n<<8 | n>>8
n = p - 1, m = -p
После того, как 100 раз увидишь и применишь каждый из них, научишься декомпозировать задачи. Ну и двочиный счет в уме, само собой. Надеюсь, ты хотя бы 16 степеней двойки помнишь?
Аноним 16/07/22 Суб 23:36:50 2407305 344
>>2405097
классы в с++ и есть пользовательские типы
а шаблоны классов позволяют вводить семейства типов

Аноним 17/07/22 Вск 00:29:56 2407332 345
изображение.png 70Кб, 459x496
459x496
изображение.png 52Кб, 848x419
848x419
изображение.png 46Кб, 827x393
827x393
изображение.png 42Кб, 817x203
817x203
Как думаете, что здесь твориться?
Аноним 17/07/22 Вск 01:34:57 2407343 346
>>2406280
раньше - да, потому что делалось в функцональном стиле - константы времени компиляции не было, использовали рекурсию и ограниченный паттернматчинг
в новых стандартах все это делается в императивном стиле, с циклами, условными конструкциями и константами, времени компиляции, поэтому читать такой код легко, так как по концепции он не сильно отличаеться от кода который отрабатывает в рантайм
Аноним 17/07/22 Вск 01:52:30 2407349 347
>>2406299
Раст - это совершенно другой язык. Актуальную кодовую базу на него не перенести. Актуальные работающие крестовики его не знают (кроме единичных ноулайферов).
Но медленное вытеснение будет происходить.
Аноним 17/07/22 Вск 02:05:16 2407354 348
16570522258020.jpg 252Кб, 1280x983
1280x983
Сап! Хочу компилировать свой код в grid сети распределенных вычислений. Должны же быть готовые решения для этого под линуксом, чтобы не изобретать свой велосипед, ведь так?

Только чтобы "кластер" мог соединяться через интернет, а не шнурком. В любой момент подключиться, расшаривая ресурсы, и отключиться. Должно же что-то быть такое уже, да?
Аноним 17/07/22 Вск 02:08:59 2407355 349
Аноним 17/07/22 Вск 02:16:27 2407357 350
Аноним 17/07/22 Вск 02:28:32 2407360 351
>>2402402
>Рефлексия это понятие у скриптов
>С++ же это компилируемый язык
Пиздец, с кем я здесь сижу.
Для начала, нет такого понятия как "компилируемый язык". Есть язык. Для него можно сделать компилятор (транслятор в машинный язык). Для него можно сделать интерпретатор.

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

На остальное время лень тратить. И я мидл, пчел. Миддл в мухосрани. Если выяснится, что ты помидор, и такую ахинею с серьёзным лицом нёс в массы, то это пиздец.
Аноним 17/07/22 Вск 07:24:38 2407384 352
>>2407360
>нет такого понятия как "компилируемый язык"
Есть такое понятие - отсутствие мозгов. Дебилодрон может попугаить только по предварительно заученному.
В то время как любой мыслящий человек прекрасно понимает, что компилируемый язык - который компилируется, а некомпилируемый - который интерпретируется. Как же сложно для понимания, ебать пиздец, но скриптодебилу и в самом деле сложно, у него
>врёти нисущиствуит!

>можно сделать
>нельзя не сделать
Охуительная ЛОГИКА скриптодебила, только при чем тут реальность? Лучше этот гнойник кретинизма не вскрывать.
Аноним 17/07/22 Вск 07:28:31 2407386 353
>>2407332
Обычные хуки какой-то либы.
Аноним 17/07/22 Вск 07:35:32 2407388 354
16456503897310.webm 1518Кб, 545x574, 00:00:14
545x574
>>2407386
>какой-то либы
Такой.
Аноним 17/07/22 Вск 07:41:00 2407391 355
1658032859396.jpg 48Кб, 420x420
420x420
>>2402402
> рефлексия понятие у скриптов
Сынок, я видел рефлексию на сях
Достаточно просто мета инфу о типах хранить в сях это делалось руками и магическими дефайнами

да и на qt она тоже есть
Аноним 17/07/22 Вск 07:51:15 2407394 356
>>2407391
>я видел рефлексию на сях
>>2402412

>>2407391
>да и на qt она тоже есть
>>2402777

Говорю же, скриптодебил может только по скрипту пукать копипастой. Чатбот и то разнообразнее изображает человека, чем этот копировщик копипасты.
Аноним 17/07/22 Вск 08:44:01 2407405 357
>>2407394
Я тебя не спрашивал раздувает она программу или нет
Я говорю что это нихуя не скриптовая фича
Аноним 17/07/22 Вск 09:02:13 2407410 358
>>2407405
Скриптовая конечно, потому что это фича именно интерпретатора скриптов, а не компилятора компилируемых языков.
Аноним 17/07/22 Вск 09:04:45 2407412 359
>>2407410
>а не компилятора компилируемых языков
а не скоппилированного исполняемого кода

фикс
Аноним 17/07/22 Вск 09:08:28 2407413 360
Аноны, насколько memset быстрый? Есть какие-то способы быстрее заполнить байтом небольшой участок памяти в 8-32 байт? Я же правильно понимаю, там в любом случае в ассемблере будет цикл с mov? Если я сделаю без цикла битшифтами заполнение не будет ли это быстрее?
Аноним 17/07/22 Вск 09:11:25 2407415 361
>>2407360
> Для начала, нет такого понятия как "компилируемый язык".

Тут ты не вполне прав.
Всё же есть языки для которых компиляция это необходимый шаг
в процессе разработки (то есть от изменения кода до ошибки),
и есть для которых нет.
Можно задрючиться в тонкости что мол и это можно откомпилировать, и то заинтерпретировать, но разница между плюсами и питоном поганым например -- налицо
Аноним 17/07/22 Вск 09:12:13 2407416 362
>>2407413
8-32 байт должно в регистры влезать тащемта
Аноним 17/07/22 Вск 09:15:31 2407417 363
>>2407413
> Аноны, насколько memset быстрый?
Анон, надежнее всего померить. В проприетарных либах попадается страшное говно.
> Есть какие-то способы быстрее заполнить байтом небольшой участок памяти в 8-32 байт?
Цикл, если размер переменный. Если размер известен, можно мемсет, хороший компилятор сам разберется.
> Я же правильно понимаю, там в любом случае в ассемблере будет цикл с mov?
Или rep stos. Или call memset. Или stmia...
Аноним 17/07/22 Вск 09:19:05 2407419 364
>>2407413
если например заполнить байтом 8 байт то делаешь

uint64 mem = 0;
uint64 byte = input("введите число от 0 до 255");
mem = (0x0101010101010101) * byte;

а у кого адрес не кратный восьми тот сам себе злобный буратин
Аноним 17/07/22 Вск 09:23:26 2407421 365
>>2407419
звездочки похерились само собой
Аноним 17/07/22 Вск 09:29:12 2407423 366
>>2407415
Ты не прав.
Компиляция как необходимый шаг это не компиляция, а бессмыслица. Это исключительно мелкий квирк реализации, не больше, ничего не значащий.

Смотри, классический BASIC считается интерпретатором, отдельного процесса компиляции там нет. Но на самом деле компиляция там есть, только компиляция не программы полностью, а одной строчки.

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

Улавливаешь? Компиляции в явном виде нет, но она есть (незаметная, построчная), просто не в привычном виде как отдельный процесс. Но зато есть процесс декомпиляции, чтобы посмотреть на свой код и его редактировать - построчно, сразу же компилируя обратно незаметным образом.

Но тем не менее, это не называют компилятором, а называют интерпретатором, потому что компилированный код это не код исполнения, а код для машины-интерпретатора. То есть, настоящий компилятор это только такой компиляторр, который производит код непосредственного выполнения, а не какой-то промежуточный код для интерпретатора его выполнения. Последнее будет интерпретатором всё равно, даже если код для интерпретатора был скомпилирован промежуточным компилятором, и даже как отдельный процесс, это просто не имеет значения.
Аноним 17/07/22 Вск 09:42:50 2407425 367
image 33Кб, 276x442
276x442
>>2407423
Шизик, спок. Компилятором называют то, что (1) выдаёт результат преобразования исходного текста. Хоть на пролог, хоть на васемблер at&t. Или (2), генерирует по исходному тексту исполняемый код. Хотя бы в память. Хотя бы для виртуального процессора.
Аноним 17/07/22 Вск 09:54:22 2407429 368
>>2407425
Это бессмысленная демагогия, другой контекст.

Речь шла про рефлексию - свойство языка. Рефлексия это свойство только интерпретатора, который непосредственно выполняет код. Процесс компиляции к этому вопросу не относится, не имеет значения. Важно только кто выполняет код: либо никто - код выполняется сам, либо выполняет интерпретатор кода. Вот и вся разникца. А без интерпретатора рефлекции нет, ибо код это код процессора, а процессоры не поддерживают рефлексию.

Таким образом, в контексте свойств языка, и в частности рефлексии, рефлексия существует в языке только благодаря интерпретатору. А С++ это компилятор непосредственного кода выполнения, поэтому рефлексии там нет.

Ты конечно можешь написать любую программу, и даже с рефлексией, но это будет свойство твоей программы, а не языка. На языке можно написать всё что угодно, это вообще не имеет значения, не является аргументом ничему.
Аноним 17/07/22 Вск 09:58:07 2407431 369
А че мне reinterpret_cast не дает дабл к инту привести, я думал он все может. Я хотел посмотреть как дабловские байтики будут интерпритироваться как интовские как в union.
Аноним 17/07/22 Вск 10:18:23 2407437 370
>>2407423
Вот допустим есть обычный айтимакак штат бангалор
Если он пишет на компилируемом языке то получать унижение будет от компилятора до запуска в продакшн
а если на интерпретируемом то после и уже не от компилятора

В теории разницы нет но нельзя отрывать теории от реалий
Аноним 17/07/22 Вск 10:24:24 2407439 371
>>2407431
А на что жалуется когда не дает?
Аноним 17/07/22 Вск 10:25:51 2407440 372
>>2407439
Недопустимое преобразование типа. С-стайл преобразует, но не так как хочется. Он 5.0 превращает в 5.
Аноним 17/07/22 Вск 10:29:01 2407444 373
>>2407440
наверное можно записать в память и сделать int -> void -> double*
потом посмотреть какие там байтики

что там не так с reinterpret_cast я хз
Аноним 17/07/22 Вск 10:43:29 2407466 374
>>2407429
Рефлексии как свойства языка нет, значит, рефлексия свойство того, кто исполняет. Если железный процессор исполняет код + понимает rtti, то у него есть рафлексия для компилированных крестов?
Аноним 17/07/22 Вск 10:52:17 2407477 375
1658044335984.jpg 115Кб, 803x818
803x818
>>2407410
>>2407412
> фича не компилятора
> существует на компилируемых языках
Тролишь тупостью?
Аноним 17/07/22 Вск 11:08:32 2407502 376
>>2407466
>Рефлексии как свойства языка нет, значит, рефлексия свойство того, кто исполняет.
Рефлексия это свойство интерпретатора, поэтому интерпретируемые скрипты имеют рефлексию нативно из коробки. Рефлексия это натуральное свойство скриптовых языков.

Для компилируемых же языков, рефлексия чужеродна, её там нет. Конечно можно накостылять и запихнуть, всё можно, но смысла не вижу. Нужна рефлексия, вот и пользуйся скриптами. Если разводить скрипты в компилируемом языке получится химера.
Аноним 17/07/22 Вск 11:09:17 2407504 377
>>2407502
> ее там нет
> запихнуть можно
Аноним 17/07/22 Вск 11:18:39 2407511 378
>>2407502
У меня от тебя китайская комната.
Рефлексия есть там, где она реализована (т.е. доступна программисту).
Компилятор отличается от интерпретатора по другому признаку.
Аноним 17/07/22 Вск 11:21:47 2407516 379
изображение.png 142Кб, 530x706
530x706
>КИТАЙСКАЯ КОМНАТА
Аноним 17/07/22 Вск 11:25:32 2407520 380
В awk тоже натурально есть рефлексия?
Аноним 17/07/22 Вск 11:38:59 2407533 381
>>2407511
Дело не в том, что и где есть или нет.
Дело в понимании принципиальной разницы между скриптами и нативным кодом, между интерпретатором и компилятором.
Это именно принципиальная разница на фундаментальном уровне, а не какая-то ерунда вроде необходимости генерации файликов или нет, установки машины-интерпретатора в систему или нет, текстом распространяется программа или экзешником, с зависимостями или нет. Это всё ерунда, не имеющая никакого серьезного отношения к обсуждению того, что такое язык, что он из себя представляет, его концепции акк языка, что такое код который ты там пишешь, эти вещи разные у скриптовых и компилируемых языков, вот что важно.
А что куда можно запихнуть расскажи своей мамаше шлюхе, которая себе в анус всё пихает, даже не предназначенное, ведь не запретишь, долбоебов всегда хватает.
Аноним 17/07/22 Вск 11:47:28 2407537 382
>>2407533
>Это именно принципиальная разница на фундаментальном уровне
>Это всё ерунда, не имеющая никакого серьезного отношения
Яскозал.
Аноним 17/07/22 Вск 12:42:40 2407597 383
>>2407384
>В то время как любой мыслящий человек прекрасно понимает, что компилируемый язык - который компилируется
>>2407415
>Всё же есть языки для которых компиляция это необходимый шаг
Охуеть. Пиздец.

Вы теорию формальных языков в универе проспали что ли? Или вкатуны без ВО?
Аноним 17/07/22 Вск 13:14:23 2407654 384
>>2407597
Академоблядь, спок. Я самоучка по нескольким направлениям, я уже выше тебя, которого за ручку ко всему привели.
Аноним 17/07/22 Вск 13:16:45 2407659 385
Аноны, а возможно ли более одного раза перегрузить оператор индексирования, один для public-секции(с доступом не по ссылке, чтоб только получать значение по индекса), другой раз для private(чтоб методы класса могли с ним работать по ссылке)?
Аноним 17/07/22 Вск 13:22:10 2407667 386
>>2407654
>я уже выше тебя
>срёт на дваче
Аноним 17/07/22 Вск 13:28:43 2407680 387
>>2407667
Ну типо, не задираю нос и открещиваюсь от плебса как многие проебланившие 4 года, а остаюсь близким к народу каким бы уебанским тот ни был.
Аноним 17/07/22 Вск 13:42:56 2407710 388
>>2407659
Точку с запятой себе перегрузи, а потом ищи где не работает.
Аноним 17/07/22 Вск 13:59:44 2407733 389
>>2407680
>открещиваюсь от плебса
Кто сказал, что я открещиваюсь? Просто учить других чему-то типа различию между языком и программами для обработки языка - себе дороже. Это нужно только когда ты какую-то теоретическую хуету обосновываешь. Лучше ещё раз вчерашнему студенту объяснить, зачем слово виртуал при наследовании и почему нельзя копировать объекты, используя интерфейс. Это больше пользы принесёт.

Но совершенно другое дело, когда начинают нести чушь, будучи абсолютно уверенными в том, что это правда. Приумножают заблуждения типа. Сам таким был, и мне-то нос утёрли. А вот вам похоже нет. Ну продолжайте, хули я ещё могу сказать.
Аноним 17/07/22 Вск 14:41:01 2407804 390
>>2407597
>>мыслящий человек
Что тебе в этой фразе непонятно? Ладно, даун, поясняю: тупо заучивать что тебе вливают в бошку, а потом это тупо цитировать, это не мышление, не мыслящий человек, а безмозглый гуглобот. Так что можешь своими теоремами подтереться, они всё равно для идиота бесполезны, раз не умеет думать, а только цитировать как попугай.
Аноним 17/07/22 Вск 14:47:45 2407813 391
16498678271300.png 49Кб, 886x886
886x886
> у скриптовых и компилируемых языков
Аноним 17/07/22 Вск 14:48:09 2407816 392
>>2407804
>Так что можешь своими теоремами
Ты только что определения. С определениями не спорят. Выдумывают свои, если другие не нравятся. Другое дело, насколько твои определения будут полезны.
Аноним 17/07/22 Вск 15:28:46 2407862 393
image.png 388Кб, 519x416
519x416
>>2407816
Это и есть идиотия в чистом виде. Пациент может только повторять заученное под копирку. Не может читать и понимать что мыслящий человек говорит когда речь отличается от заученной копирки. Это классическая проблема искусственного интеллекта (ИИ) - тупость, неспособность соображать за пределами обученной модели.

Когда мыслящий человек ситает и понимает написанное, он понимает и значение терминов, ибо всё в контексте. А безмозглый гуглобот выкидывает экзепшен "Ошибка Терминологии" и прекращает функционирование. Сейчас даже роботов делают умнее, они не крашатся от одной фразы как ты.
17/07/22 Вск 15:30:18 2407863 394
>>2407862
Я запощу один пост с сажей, чтобы показать, как я тебя презираю.
Аноним 17/07/22 Вск 19:19:19 2408091 395
>>2407597
Нет блять тут анон сидит дремучий, который дальше прикладной теории категорий не продвинулся.

Еще раз для тех кто проспал диалектический материализм :

Понятие компилируемый язык есть.

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

Твоя ошибка в том что ты рассматриваешь язык отдельно от сопутствующих человеческих процессов. А так делать нельзя потому что язык это прежде всего средство человеко-компьютерного взаимодействия
Аноним 17/07/22 Вск 19:22:45 2408093 396
>>2407863
Тут есть пара человек с пенсией по шизе, это кто-то из них
Аноним 17/07/22 Вск 19:28:42 2408097 397
16487134797750.gif 289Кб, 400x471
400x471
Аноним 17/07/22 Вск 19:30:22 2408099 398
>>2408091
>диалектический материализм
Нефальсифицируемый лженаучный подход.

> Оно возникает в ходе производственных отношений...
Уноси туда, откуда принёс.

>>2408097
Надо мне у тебя поучится вот этому волшебному "take it easy". А то зла прост не хватает.
Аноним 17/07/22 Вск 19:59:01 2408126 399
2166210858.jpg 411Кб, 1024x1024
1024x1024
>>2408099
> Уноси туда, откуда принёс.
пц там еще есть могу отсыпать
Аноним 17/07/22 Вск 20:00:13 2408129 400
>>2407597
У меня в вузе не было такого предмета
Аноним 17/07/22 Вск 20:38:54 2408177 401
изображение.png 63Кб, 1015x207
1015x207
Решил заинтересоваться вашим спорром, а тут википедИя за два предложения закрыла тему.
Аноним 17/07/22 Вск 20:59:37 2408208 402
>>2408177
> за два предложения закрыла тему
Как и ожидалось от человека, что вовсю потакает своей предвзятости подтверждения, второй абзац ты даже не читал.
Алсо, как выше анон отписал, формальные языки - это академическая область, а не хуй собачий.

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

Алсо, как же я много времени здесь проебал на хуйню.
Аноним 17/07/22 Вск 21:01:05 2408211 403
>>2408208
Ты значит у английский господ хуй сосегь. Но ничего, госпожа Логика выебет тебя в жопу страпоном.
Аноним 17/07/22 Вск 21:03:09 2408215 404
>>2408211
Да нет. Просто в ангельской версии источников аж два, лол. И хуй, который ты будешь сосать на английском менее вонюч.

Я же хуй совсем не сосу, потому что я знаю, что компилируемый язык - это костыльное определение, созданное неучами. Как и многие неологизмы. Из недавнего помню хороший глагол эмоционировать.
Аноним 17/07/22 Вск 21:14:24 2408225 405
>>2408129
Тащемта у нас тоже как такового не было. Назвали его чё-то типа "Введения в ТФГиЯ" или "Основы ТФГиЯ". Хуй уже вспомню.

Зато помню, что у нас выкинули лямбда-исчисления, хотя я его больше всего хотел. Оставили классеку - машину Тьюринга, рекурсивные функции и алгорифмы Маркова. И теория была не очень объёмной. Никаких лиспов, крутых теорем о трансляции из произвольного языка в произвольный. Начало по языкам с автоматами, регулярками, БНФ и прочей лабудой. А закончили описанием трансляции из си-подобного языка в подобие ассемблера для x86_32.

Очень круто было тогда, да. Но это всё абсолютные основы. Собственно, я никогда экспертом по этой еболе и не был. Поэтому и удивляюсь, что люди делают ошибки, которые даже такой чел, как я, может задетектить.
Аноним 17/07/22 Вск 21:32:43 2408241 406
>>2408225
> машину Тьюринга, рекурсивные функции и алгорифмы Маркова
> теорем о трансляции из произвольного языка в произвольный
> по языкам с автоматами, регулярками, БНФ и прочей лабудой
Нахуй это говно вообще нужно кодеру в отрыве от реальности? Когда столкнёшься с проблемой, для решения которой нужно подобное говно - за час разберёшься на ходу. Это намного продуктивнее будет, чем учить какую-то теорию непонятно нахуя и для чего это можно применить ИРЛ.
> описанием трансляции из си-подобного языка в подобие ассемблера для x86_32
Опять же, написание AST и кодогенерация ASM или IR - довольно простое занятие. Компилятор простого псевдокода на LLVM пишется за день. Нахуй этому учиться, если после ебучего Калейдоскопа в доках всё понятно становится за час?
Аноним 17/07/22 Вск 21:38:21 2408247 407
>>2408241
>Когда столкнёшься с проблемой, для решения которой нужно подобное говно - за час разберёшься на ходу.
Может быть мы вообще из разных миров, в конце-концов я из мухосрани за уралом. Ты можешь быть гением. Но всё же, из всех своих одногруппников только я нормально выучил регулярки. Не "обрезаные" для теории, а perl-compatible которые. "С час на ходу", ага.

>Опять же, написание AST и кодогенерация ASM или IR - довольно простое занятие.
Не для всех же. Не ровняй вчерашнего школьника, который лишь года два как пересел на линукс с собой нынешним.

Тащемта это был хотя бы нормальный предмет, в отличии от матана и диффуров, которыми мне очень так хорошо подзатыльник дали. До сих пор нихуя не помню как я сдал их.
Аноним 17/07/22 Вск 21:45:07 2408249 408
>>2408241
> кодогенерация ASM или IR - довольно простое занятие. Компилятор простого псевдокода на LLVM пишется за день.
Чел, ты встал на плечи всем этим челам, которые учили теорию. И занимаешься компиль-макакингом.
Аноним 17/07/22 Вск 21:46:36 2408250 409
>>2408247
Все эти студентики начинают с зазубривания, выбирая программирование на похуе потому что в ИТ платят хорошо. А у нормальных людей наоборот всё - им нравится кодить и они начинали с чистой практики, имея из теории только половину трупа страуса.
Аноним 17/07/22 Вск 21:47:18 2408252 410
>>2408249
Ахах, а ты хуль на плечи встал инженеров интела, давай напильником камень обтачивай да плату паяй.
Аноним 17/07/22 Вск 21:51:16 2408255 411
>>2408250
>имея из теории только половину трупа страуса
Кек, люблю хвастатся тем, что я читал только одну главу страуструпа. Он в первой главе начинает бросаться всякими конструкциями направо и налево (в отличии от K&R, который к тому времени был прочитан). Ну и я подумал, что недорос до книжки. Начал читать про плюсы в других источниках и пилить игрушечные проги, чтобы понять как это всё работает.

Когда вернулся и смог нормально первую главу прочитать оказалось, что это всё было "размахивание хуём" и вот сейчас, со второй главы он начнёт объяснять. Я тогда очень долго ржал.
Аноним 17/07/22 Вск 21:54:44 2408261 412
>>2408249
Ну так-то LLVM без проблем можно заменить чистым ассемблером, разница лишь в оптимизациях, а это уже совсем другая история, не связанная с теорией ЯП.
Аноним 17/07/22 Вск 21:57:49 2408265 413
>>2408255
> люблю хвастатся тем, что я читал только одну главу страуструпа
Я тоже дропнул его мгновенно на первых 50 страницах, шлюху александреску тоже не осилил - у него вообще пиздец вода. Так ни одной книги по крестам и не прочитал. В давние времена просто ушёл на MSDN и шарп, а потом уже и нахуй книги не нужны стали для вката в кресты, когда документация и гугл есть.
Аноним 17/07/22 Вск 22:01:09 2408269 414
>>2408261
А yacc можно заменить рекурсивным спуском, за день напишу. Ну за неделю. Ой...
Аноним 17/07/22 Вск 22:01:38 2408270 415
изображение.png 83Кб, 1012x509
1012x509
Труп Страуса на 30 странице, не знаю, чего вы испугались.
Аноним 17/07/22 Вск 22:45:36 2408322 416
.png 237Кб, 964x878
964x878
>>2408270
Труп страуса бывает разный. В "Язык программирования C++" он уже на 155 странице пишет парсер формул.
Аноним 17/07/22 Вск 23:04:07 2408341 417
Аноним 17/07/22 Вск 23:16:20 2408354 418
>>2407863
Ошибаешься, я анонимный никто, которого невозможно презирать. Ты презираешь высказанную информацию, правду, т.е. самого себя, но переводишь стрелки. Это стандартный психологический инстинкт.

И недовольство даже не в самой правде, а в серьезном аргументированном изложении которое не легко отрицать, так что ты оказываешься припертым к стенке. Спокойные грамотные аргументы, когда не за что зацепиться чтобы отрицать и игнорировать, чем создается безвыходное положение, не увильнуть от правды. Именно это вызывает настоящую ненависть. А например грубые оскорбления и тому подобные простые бессодержательные посты почти никого не задевают. Скорее наоборот, часто даже нравится так переругиваться, негатива не видно.
Аноним 18/07/22 Пнд 02:04:19 2408516 419
image.png 27Кб, 449x585
449x585
image.png 145Кб, 1587x753
1587x753
Пикрил https://godbolt.org/z/b1e5q8joK не компилится, почему? У первого и второго рейнджа обязательно должны быть одинаковые типы элементов что ли?

Компилятор выдаёт что-то про couldn't deduce template parameter '_Sent2', когда пытаюсь дописать явно шаблонные параметры set_difference<здесь>, то не помогает https://godbolt.org/z/b1e5q8joK
Аноним 18/07/22 Пнд 04:09:16 2408535 420
>>2408516
>У первого и второго рейнджа обязательно должны быть одинаковые типы элементов что ли?
Очивидно
Аноним 18/07/22 Пнд 04:11:13 2408536 421
>>2408516
>Компилятор выдаёт что-то про couldn't deduce template parameter '_Sent2'
Там несколько перегрузок, эта тебя не интересует
> пытаюсь дописать явно шаблонные параметры
Для set_difference это невозможно
Аноним 18/07/22 Пнд 10:25:47 2408623 422
>>2408516
И вообще смотри в вывод шланга, он на порядок читабельнее
Аноним 18/07/22 Пнд 10:28:49 2408625 423
Аноним 18/07/22 Пнд 14:56:15 2408850 424
>>2408625
>constraints not satisfied
>mergeable
А, ок, ясно, спасибо. Всё равно как-то странно, set_difference по смыслу вроде же выдаёт значения из
Аноним 18/07/22 Пнд 15:26:03 2408868 425
>>2408850
Нет, он только сравнивает по
А значения выдаёт из
Аноним 18/07/22 Пнд 16:22:39 2408975 426
изображение.png 1147Кб, 1075x679
1075x679
>>2397264 (OP)
Программач поздравь меня, я вроде даже нашёл работу на плюсах. Вот только есть одно - проект. Он выглядит примерно как дом на пике, без документации и прочих человеческих радостей.

Есть ли методы обуздать эту кучу дерьма и с чего начать?
Аноним 18/07/22 Пнд 16:32:45 2408991 427
>>2408975
>Есть ли методы обуздать эту кучу дерьма и с чего начать?
Ищешь точку входа и идешь дальше по цепочке, т.е. банально читаешь код.
Аноним 18/07/22 Пнд 17:24:26 2409039 428
>>2408975
поделись кул-стори как работу нашёл?
Аноним 18/07/22 Пнд 18:04:02 2409067 429
char или unsigned char для указателей на хуй пойми что?
Аноним 18/07/22 Пнд 18:06:47 2409071 430
Аноним 18/07/22 Пнд 18:20:09 2409077 431
>>2409039
Ну на хх начал слать резюме. Только опыт поставил не нулевой, а от 1 до 3-х лет. Прошёл собесы в апреле-мае. Хрка сказала - согласуем с руководством - сообщим. Я через пару недель подумал что ребята отмазали. Вот уже в июне вышли на свзяь, и приняли.
Аноним 18/07/22 Пнд 19:37:18 2409120 432
>>2409077
какой стек технологий?
я тоже хочу перекатиться, но кроме сишечки ничего не знаю, куда дальше учить тоже идей особо нет
Аноним 18/07/22 Пнд 20:14:53 2409155 433
>>2409077
можно на твоё резюме посмотреть? без фоточки разумеется и данных для деанона
Аноним 18/07/22 Пнд 20:18:16 2409158 434
>>2408975
Так почему бы не инкапсулировать весь этот кал и не обращаться к нему через интерфейс.
Аноним 18/07/22 Пнд 20:21:06 2409163 435
>>2409077
Лучше скажи, че на собесах спрашивали
Аноним 18/07/22 Пнд 20:31:49 2409171 436
>>2408975
Да норм, я примерно на таком же проекте работаю, вопрос времени, как во всех комнатах побываешь, за все двери посмотришь, везде стены подкрасишь, будешь как дома.
> Есть ли методы обуздать эту кучу дерьма и с чего начать?
Бтв с изучения проекта, как только поймешь как проект устроен, что в каких модулях обрабатывается и какими средствами достигается решение, станет легко
Аноним 18/07/22 Пнд 21:35:57 2409252 437
>>2409120
Да вроде чистые плюсы (Сам учил. В универе только хелоу ворды писать учили), но придётся ещё ндк подтянуть. А так ещё чутка графики да вот и весь стек.

>>2409155
Хули там смотреть то? Образование - 4 курса без диплома, да и отработка около года в аутсорсной конторе.

>>2409163
Да ни чего такого страшного не спрашивали.

>>2409171
Да сейчас у меня задача закрепиться и наработать хотя бы год два опыта работы. И да ты бы потерпел бы самопальный смарт пойнтер у себя в доме?
Аноним 18/07/22 Пнд 21:38:05 2409258 438
изображение.png 2Кб, 200x200
200x200
>>2409252
> Да ни чего такого страшного не спрашивали.
Чел, ну откуда мне значть, что для тебя не страшно. Может ты дифуры решал или писал на листочке хитровыебанную сортировку.
Аноним 18/07/22 Пнд 21:41:50 2409263 439
>>2409258
Да нихуя. О вспомнил, назови свои любимые контейнеры в стл.
Аноним 18/07/22 Пнд 21:44:20 2409265 440
>>2409263
Раньше были векторы, после того, как узнал о плюсах и минусах, применяю по задаче. unordered_set нравится за самую большую скорость большинства операций.
Аноним 18/07/22 Пнд 22:05:33 2409293 441
>>2409265
When choosing a container, remember vector is best
Leave a comment to explain if you choose from the rest
– Tony Van Eerd


Ну про сеты и мапы - я упоминал что в практике не попадались.
Вектор на самом деле по ощущениям решает процентов 80 если не 90, задач с которыми я встречался. Плюс его можно быстро скастовать до сишного куска памяти, что полезно при работе с теми же видяхами (занесло меня в геймдев на мобилки) да и процы его не плохо оптимизируют. Но он не идеален. Большой кусок памяти слишком большой - хер ты его выделишь. А так же, при вне плановом расширении итераторы летят по пизде.
Лист - имеет проблемы и подводные камни. Наверно самый весёлый - с 11 стандарта size вычисляется за константное время
А вставка и удаление за линейное. Но у него есть не явный плюс, что в многопоточности итераторы не проёбываются.
Дек - как попытка совмещения сильных сторон первых двух хорош и решает проблему хранения гиганских объёмов данных, но у него есть то же свои проблемы. К примеру он в некоторых ситуациях медленнее на 20 или 30 процентов вектора.

Как-то так чего вспомнил, примерно то же самое рассказал.
Аноним 18/07/22 Пнд 22:23:24 2409312 442
16494171183830.jpg 93Кб, 468x487
468x487
Аноним 19/07/22 Втр 05:49:06 2409483 443
Аноним 19/07/22 Втр 11:53:04 2409657 444
Указатель uint8_t возвращает только битовые значения? Смогу ли я вернуть строку текста?
Аноним 19/07/22 Втр 12:54:41 2409700 445
>>2409657
>uint8_t
Ты внимательнее посмотри на тип. u - обозначает беззнаковое
int - целое 8 кол-во бит. Его конечно можно использовать для хранения битовых значений (целых восьми штук!)

Указатель uint8_t хранит в себе адрес ячейки памяти (32 или 64 бита), на которую он указывает. В данном случае ты говоришь компилятору что по данному адресу лежит 8-ми битное число. Но то что лежит там на самом деле - твои проблемы.

Если ты приведёшь его к char указателю, то компилятор работая с ним будет рассматривать эту ячейку как указатель символ.
Аноним 19/07/22 Втр 12:58:47 2409710 446
изображение.png 154Кб, 1360x768
1360x768
Объясните, почему этот код работает, я захватываю х по ссылке, должна же быть висячая ссылка.
И как мне сделать захват по константной ссылке, например чтобы захватить объект.
Аноним 19/07/22 Втр 13:31:08 2409735 447
>>2409710
> Объясните, почему этот код работает, я захватываю х по ссылке
А ты что ожидал? Что у тебя за шиворотом кусок говна окажется из-за этого? Ну говори свой адрес, мы тебе всем тредом это обеспечим.
Аноним 19/07/22 Втр 13:32:30 2409737 448
Аноним 19/07/22 Втр 13:33:49 2409738 449
>>2409737
Что токсик, блять. Что ты ожидал увидеть? Что такое "код работает"? Как ты это определяешь? Кодоработометром?
Аноним 19/07/22 Втр 13:34:06 2409740 450
Аноним 19/07/22 Втр 13:35:14 2409741 451
>>2409740
Любой код, который выводит 50, называется "работает"?
Аноним 19/07/22 Втр 13:38:27 2409742 452
Аноним 19/07/22 Втр 13:39:50 2409743 453
>>2409742
Ну вот у меня есть код (не твой), который не выводит 50. Он работает?
Аноним 19/07/22 Втр 13:41:15 2409744 454
>>2409710
Тебе повезло. Перекомпилируешь с другими флагами/другим компилятором/не в ту фазу луны ии он перестанет работать
Аноним 19/07/22 Втр 14:01:33 2409759 455
>>2409710
Это UB. А вообще труп страуса уже давно пишет гайд как правильно плавать к этой каше конструкций языка и не оказываться по верхнюю губу в говне. Будешь всё это соблюдать - будешь жить счастливо без UB и вопросов почему работает/не работает.
https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md
Аноним 19/07/22 Втр 14:40:07 2409811 456
Котаны, а как вы лично относитесь к использованию перегрузки operator( ) ?
Вместо void-функции.

Это действительно антипаттерн? Мне лично такой подход нравится.
Аноним 19/07/22 Втр 15:12:44 2409859 457
>>2409811
Читать такое невозможно. Если для того чтобы понять код нужно скролить в начало или даже смотреть в хедер, то это чистейший говнокод. А если там snake_case, то это говно невозможно отличить от вызова конструктора.
Аноним 19/07/22 Втр 15:19:34 2409869 458
Аноним 19/07/22 Втр 15:21:19 2409871 459
>>2409710
Забавляет как додики дрочат лямбды не знаю что к чему а главное зачем.
Аноним 19/07/22 Втр 15:33:33 2409881 460
>>2409871
Двачую. Я ими вообще не пользуюсь, они не читаемы
Аноним 19/07/22 Втр 17:01:46 2409984 461
>>2409881
А предикаты отдельными функциями делаешь?
Аноним 19/07/22 Втр 17:10:49 2409993 462
image.png 917Кб, 1920x1080
1920x1080
Собираю qmake config для qt для кросскомпиляции под orange pi, выскакивает такая ошибка, что делать?
Я бы установил просто qt и просто собирал бы на orange pi проекты, но там не откуда qt скачать, во всех ОС все ссылки для скачивания qt не работают
Аноним 19/07/22 Втр 17:14:37 2409995 463
>>2409993
Тебе надо указать под какую архитектуру ты компилировать собрался. Предположу что в конфиге или мейке есть переменная. Поищи.
Аноним 19/07/22 Втр 17:15:55 2409996 464
>>2409995
я выбрал ключ -device там написал raspberrypi2
Аноним 19/07/22 Втр 17:15:59 2409997 465
1649802252689.mp4 505Кб, 360x298, 00:00:13
360x298
19/07/22 Втр 17:17:36 2410000 466
>>2408354
>Ошибаешься, я анонимный никто, которого невозможно презирать
Хуясе шиза. Таблетки.
Аноним 19/07/22 Втр 17:22:22 2410005 467
>>2409997
По делу есть что сказать?
Аноним 19/07/22 Втр 17:24:56 2410008 468
>>2409996
Извини, в глаза ебусь. Проблема не в указании сборки.

При поиске "orange pi bits/libc-header-start.h"
Выдало ссылку на гитхаб https://github.com/sirfz/tesserocr/issues/130
Попробуй в там посмотри или по ключевым словам.
Аноним 19/07/22 Втр 17:25:10 2410009 469
До меня только дошло, что int mai() это просто определение функции, а значит где-то должен быть неявный вызов. Где-то описано для ОС, какая функция будет точкой входа. Не сердитесь, я нуб просто.
Также узнал, что string это просто typedef для инстанцирования шаблона родительского класс <char>. Попробовал инстанцировать шаблон для интов, получил строку интов, ощущения как будто залез в подкорку мироздания.
Аноним 19/07/22 Втр 17:38:16 2410017 470
>>2410008
Решил проблему, почему то фаилы лежали не там где надо, помогло создание ярылков
ln -s /home/zloyben/orangepipc/sysroot/usr/include/arm-linux-gnueabihf/sys/* /home/zloyben/orangepipc/sysroot/usr/include/sys
Все получилось
Аноним 19/07/22 Втр 17:38:32 2410018 471
А ещё я сосу хуи.
Аноним 19/07/22 Втр 17:39:11 2410020 472
>>2410009
ух ты строка интов, надо будет почитать про шаблоны, а то я в свое время так и не изучил
Аноним 19/07/22 Втр 17:39:59 2410022 473
>>2409710
вопрос поставлен неверно -- не почему работает а какие
флаги компилятору поставить чтобы ругался на такое

>>2409740
а у меня выводит 32764
инфляция наверное
Аноним 19/07/22 Втр 17:48:19 2410031 474
>>2410009
какая функция будет точкой входа решает не ОС а компилятор

ОС ожидает определенный формат файла бинарника
например в линуксе это эльф
https://ru.wikipedia.org/wiki/Executable_and_Linkable_Format
и там в поле e_entry лежит адрес точки входа
Аноним 19/07/22 Втр 17:54:38 2410032 475
>>2410031
> в линуксе
кого вообще ебёт что там у пердолей?
Аноним 19/07/22 Втр 17:58:51 2410034 476
>>2410032
какая разница линукс или нет
или ты думаешь у мс говно фиалками пахнет?
Аноним 19/07/22 Втр 18:02:40 2410037 477
>>2410032
Лол двачую. Установил себе рядом с виндой дебиан, думал буду изучать особенности программирования под линукс, posix, gcc, вся хуйня. А потом понял, что так может продолжаться долго и решил, что лучше буду специализироваться на винде, чем знать все платформы, но по верхам.

Кстати, а могу я в линуксе напрямую обратиться (не через системный вызов) к клавиатуре например и заставить ее могнуть лампочкой? Винда я так понял только через винапи позволит такое.
Аноним 19/07/22 Втр 18:05:38 2410039 478
>>2410037
> могу я в линуксе напрямую обратиться (не через системный вызов) к клавиатуре например и заставить ее могнуть лампочкой
Тебе придётся писать модуль ядра. А API там максимально каловое, почти винапи.
> Винда я так понял только через винапи позволит такое.
Под виндой наверняка найдёшь либу для своей клавы.
Аноним 19/07/22 Втр 18:38:59 2410067 479
image.png 50Кб, 632x548
632x548
>>2410039
> API там максимально каловое
максимально каловое это X11
Аноним 19/07/22 Втр 18:57:12 2410086 480
>>2410037
>Кстати, а могу я в линуксе напрямую обратиться (не через системный вызов) к клавиатуре
Через файл.
Аноним 19/07/22 Втр 18:58:27 2410088 481
>>2410086
Не считается, файл это интерфейс ОС.
Аноним 19/07/22 Втр 19:00:44 2410091 482
Всем хай. Сейчас изучаю multithreading, но пока не уходил далеко от примеров, которые есть в туториалах. Подскажите несколько вариантов того, что можно заимплементить с мультритредингом? пока что понял принципы работы thread, mutex, conditional variable.
Аноним 19/07/22 Втр 19:20:00 2410120 483
>>2410091
Возьми любую штуку из повседневной жизни. Например реализуй систему заказов в кафе, где посетители асинхронно делают заказы, а ты это автоматизируешь. Пример посложнее придумай
Аноним 19/07/22 Втр 19:39:16 2410134 484
Аноним 19/07/22 Втр 19:42:12 2410141 485
image 18Кб, 128x128
128x128
Аноним 19/07/22 Втр 19:47:59 2410153 486
>>2410091
sleep sort
параллельный grep
простой веб сервер для статики
Аноним 19/07/22 Втр 20:03:48 2410168 487
А как сервера тестировать? Есть ли хостинги, где можно свое приложение залить с вирусами?
Аноним 19/07/22 Втр 20:07:02 2410172 488
>>2410168
Купи по первой ссылке в гугле/торе
Аноним 19/07/22 Втр 20:12:01 2410183 489
>>2410168
Любой VPS или, если подходит, хостинги докер-контейнеров. Последние даже бывают бесплатные.
Аноним 19/07/22 Втр 21:02:45 2410220 490
Аноним 19/07/22 Втр 22:08:44 2410251 491
>>2408225
У меня теорию формальных языков читала максимально похуистичная бабуля на кафедре, лабы принимала она и еще какой-то древний доисторический дед.
Из курса максимум смог запомнить что такое детерменированный конечный автомат.
А так еще конечно было всякое, и про ast, и про нка, теоремы о преобразовании дка <-> нка, лабы оп yacc и lex, которые вроде бы все списали по итогу, и регулрярки, и т д, жалею конечно что на интересный предмет по итогу забил хуй (как и на 90% остального, что нам преподавали), но и преподы у нас говноеды были еще те.
Аноним 19/07/22 Втр 23:48:21 2410348 492
А зачем в linux нужны жесткие ссылки? Я как узнал, прям охуел с тупости этой концепии. Ты удаляешь такое интимное фото, а нихуя, это была ссылка. Или ты портишь файл, думая, что это копия, а потом оказывается что изменения примерились везде.
Аноним 19/07/22 Втр 23:57:49 2410356 493
>>2410348
Все минусы, которые ты перечислил, происходят из твоего криворукого ДНК. А жесткие ссылки - это охуенно, и виндобляди сосать, что так не можете. Это позволяет мне в одно и то же время производить разное деление фотографий на категории, и использоване места на диске от этого не множится. Symbolic сосать, короче.
Аноним 20/07/22 Срд 00:00:44 2410363 494
https://old.reddit.com/r/programming/comments/w2thvo/carbon_an_experimental_c_successor_language/
Поясните за ABI который так не хотят ломать. У меня вообще какой то эффект Манделлы с этой хуиты, будто я перенесся из параллельного измерения. Разве ABI не меняется с каждым релизом компилятора и либ, мажорным-минорным похуй, да буквально с каждым пуком. И по этой самой причине прыщеблядье качает по сотне мегабайт аптейтов каждый день.
И еще
> ABI is .. mangling ..
Разе это не определяется целиком компилятором и ровно для этого придуман "extern C" или как там его.
Аноним 20/07/22 Срд 00:01:07 2410364 495
>>2410356
> производить разное деление фотографий на категории
Бля, теперь также хочу. А еще хочу, чтобы у каждого графического файла были вшиты теги, по которым их можно отбирать
Аноним 20/07/22 Срд 00:16:06 2410374 496
Аноним 20/07/22 Срд 00:18:36 2410378 497
>>2410251
>теорию формальных языков
один из интереснейший курсов которые можно (если повезет с преподом), получить в вузике учась на программиста
перекат Аноним 20/07/22 Срд 00:34:13 2410387 498
Аноним 20/07/22 Срд 00:39:13 2410390 499
>>2409881
Нет, я не против лямбд как таковых, это крутая фича, когда она к месту, а не как у того анона.
>>2409984
Думаю это зависит от того что и как ты пишешь, мне как правило ифов хватает.
Аноним 20/07/22 Срд 02:23:26 2410431 500
Аноним 20/07/22 Срд 03:08:09 2410435 501
>>2410363
Как ты будешь без ABI подключать либы написанные на фортране?
Аноним 20/07/22 Срд 03:11:31 2410436 502
>>2410435
При чем тут вообще это говно древнее когда речь идет про изменение ABI плюсов?
Аноним 20/07/22 Срд 05:55:06 2410464 503
>>2410037
>Кстати, а могу я в линуксе напрямую обратиться (не через системный вызов) к клавиатуре например и заставить ее могнуть лампочкой?
Да, понажимай пальцем на NumLock.
Аноним 20/07/22 Срд 09:08:09 2410507 504
Аноним 20/07/22 Срд 09:11:59 2410511 505
>>2410507
После 1000 постов, залётный.
Аноним 20/07/22 Срд 10:03:21 2410541 506
>>2410511
Да всмыыыыыысле, я специально правила искал, нихуя не нашел такого, и много тредов рядом вижу с перекатом на 500. Я думал, вы тут так долго сидите, потому что иногда и до 2000 доходите, ебанутые просто.
Аноним 20/07/22 Срд 10:05:18 2410543 507
>>2410541
Чел, если ты не можешь досидеть хотя бы до 1000, то какой из тебя крестовик? Тебе тогда надо в питон идти.
Аноним 20/07/22 Срд 10:09:34 2410544 508
>>2410541
А ещё в правилах ничего не сказано про треды о C++.
Аноним 20/07/22 Срд 10:16:57 2410550 509
>>2410544
Так под правилами я имею ввиду технические особенности всей борды, когда там бамплимит наступает и тред тонет. Это ж не может оверрайдиться для отдельной серии тредов, потому что живые люди перекатывают, а человек человеку человек, может и обосраться, и кончи сглотнуть... Вот есть бесконечные треды, которые сверху режутся на 502 где-то, а про другое не знаю.
Аноним 20/07/22 Срд 10:20:57 2410558 510
>>2410550
Бамплимит не связан с перекатами.
Аноним 20/07/22 Срд 10:40:10 2410576 511
>>2410558
А с чем он еще связан, лол? После определенного количества постов дальнейшая активность перестает поднимать тред в списке, и все больше и больше других тредов поднимаются выше него, пока он не выпадает из списка. Перекаты нужны, чтоб тред снова ожил в списке. Не?
Аноним 20/07/22 Срд 11:06:36 2410593 512
>>2410576
Это тебе не /b/. Нужен тематический тред - переходишь в него по тегу. А тред, висящий в топе, привлекает только всяких мимокрокодилов, толстяков и шизиков. Сразу после бамплимита резко повышается адекватность треда.
Аноним 20/07/22 Срд 12:19:03 2410683 513
>>2410593
Ладно, я просто случайно осознал, что для объявления параметра-ссылки не обязательно определение структуры, которая по ссылке, и придумал шутку для шапки.
Аноним 24/07/22 Вск 00:28:36 2414383 514
Анон привет.
for (cost auto & it : entries)
{
auto I = std::distance(entries.begin(), it);
}
Как взять индекс I в таком цикле, работает при for (auto it=entries.begin(); it! = entries.end(); it++), а в варианте #1 нет. Не то, чтобы проблема, но хочется знать.
Аноним 24/07/22 Вск 13:25:44 2414684 515
image 565Кб, 3312x1605
3312x1605
Почему считается, что double (IEEE floating point 64 bits) имеет точность до 17 значащих десятичных цифр?
На хранение мантиссы отводится 52 явных + 1 неявный бит.
Соответственно, получаем, что целое максимальное число, которое точно может храниться в мантиссе - это (2^53)-1, что примерно равно 10^15.955 или 9007199254740990 (16 десятичных цифр).
Где ещё одна десятичная цифра?
Аноним 24/07/22 Вск 16:54:45 2414940 516
Безымянный.png 21Кб, 852x258
852x258
>>2414684
В данном случае "точность" значит количество знаков, необходимых для точного раунд-трипа string->double->string (15 знаков) или double->string->double (17 знаков). Я давно с флоатами не имел тесных отношений поэтому не могу сказать больше, чем гугл.
Аноним 10/08/22 Срд 02:42:13 2429398 517
Аноним 10/08/22 Срд 02:43:55 2429399 518
Аноним 14/08/22 Вск 01:59:12 2433139 519
Сап, котеки. Надеюсь, тут есть шарящие в теме. Хочу кодить ставить хуки в windows 10 на уровне ядра, дабы ни одна операция на моём компе не могла от меня утаиться. Инфы -- с гулькин уй. Чужие работы 4/5 будут просто некомпилируемы, а последняя будет BSOD триггерить.
Вопроса два:
1) какую посоветуете виртуалку именно для отладки и теста драйверов (virtualbox я уже возненавидел и удалил, его даже поставить и использовать без анальной дрочки и гуглинга нельзя)
2) И где можно в принципе почерпнуть опыта современного котенга с реальными примерами, чтоб механику понимать, бсодов избегать и баги не плодить (не дохуя поймёшь трейсингом, когда каждый первый вызов улетает в syscall-ебеня)
Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов