TGViewer
Channel Public Channel
Библиотека C/C++ разработчика | cpp, boost, qt

Библиотека C/C++ разработчика | cpp, boost, qt

@cppproglib

Все самое полезное для плюсовика и сишника в одном канале.

Как запустить своего ии-агента: https://clc.to/tvpmDQ

По рекламе: @tproger_sales_bot

Обратная связь: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17

#WXSSA
Subscribers
16.8K
Photos
2.3K
Videos
74
Links
4.6K

Showing posts older than #4356 · Back to latest

Older Posts 20 shown
Post #4355 5.2K
💩 Задача: Сумма вдоль столбцов

Условие: дается квадратная матрица, необходимо вычислить минимальную сумму вдоль столбца.

На движение вдоль столбца есть ограничение: можно перемещаться на ячейку вниз лишь по диагонали или строго вниз.

Пример:

Ввод:
matrix = [[2,1,3],[6,5,4],[7,8,9]]
Вывод: 13

Каковы будут ваши решения?👇
  • ❤ 37
  • 👍 4
  • 🥰 3
Post #4354 5.35K
🧲 Magnet

Это минималистичный менеджер зависимостей для вашего следующего проекта на C++. 

🛠 Установка

Берем репозиторий: git clone https://github.com/futureblur/magnet.git --recursive

macOS:
▪️ Установите Homebrew
▪️ cd magnet/scripts && chmod +x ./macOSInstaller.sh
▪️ ▪️ Xcode: ./macOSInstaller.sh --xcode
▪️ ▪️ CLion (Ninja): ./macOSInstaller.sh --ninja

Windows:
▪️ Установите CMake
▪️ Запустите нужный установщик в magnet/scripts:
▪️▪️ Visual Studio 17: Дважды щелкните по WindowsInstaller (Visual Studio 17).bat
▪️▪️ CLion (Ninja): Дважды щелкните по WindowsInstaller (Ninja).bat

Linux:
▪️ Установите следующее с помощью менеджера пакетов: cmake, clang, ninja-build
▪️ Запустите программу установки: cd magnet/scripts && chmod +x ./LinuxInstaller.sh && ./LinuxInstaller.sh
  • ❤‍🔥 36
  • 👍 3
  • 👏 2
Post #4353 5.38K
#memes
  • 🔥 55
  • 😁 9
  • 👏 7
  • 🤔 2
  • 🙏 1
Post #4352 6.28K
Как работает оператор new в C++ и почему используется именно этот оператор для выделения динамической памяти?

Оператор new используется в C++ для выделения динамической памяти (heap memory), которая выделяется во время выполнения программы. При его вызове, сначала выделяется необходимое количество памяти из операционной системы, а затем возвращается указатель на эту область памяти.


При исполнении оператора new происходит следующее:

✏️ Сначала он выделяет память в размере, указанном в аргументе оператора или размере типа данных, на который указывает указатель.
✏️ Затем он вызывает конструктор для создания объекта в выделенной области памяти.
✏️ Возвращает указатель на выделенную память.

Оператор new является предпочтительным для выделения памяти по сравнению с функцией malloc в C, поскольку он позволяет при выделении памяти автоматически вызывать конструкторы объектов. С использованием оператора new не нужно явно выделять память под объекты и вызывать конструкторы отдельно.

В данном примере оператор new выделяет память под объект класса MyClass и вызывает его конструктор. Оператор delete используется для освобождения ранее выделенной памяти.
  • ❤ 33
  • 👍 10
  • 👾 8
  • 👏 2
Post #4351 5.38K
😎💪 Монады, обертки, std::expected: плюсы и минусы С++ 23 глазами практикующего разработчика

В видосе обсуждается, какие проблемы были закрыты, а какие создал новый стандарт языка. Спикер на примерах показал, как работает новая функциональность и в каких задачах можно применять фичи С++ 23. Его фавориты — монадический std::optional и std::expected, а удаленные опции aligned_storage и aligne_uninion спикер обещает помнить всегда.

Зачем смотреть: много практической информации — узнаете, как решать реальные задачи на С++ 23.

Смотреть

#видео
  • 👏 4
  • 🥱 2
  • ❤ 1
Post #4350 5.13K
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

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

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
  • 🔥 2
  • 🌚 1
Post #4349 5.07K
  • 👍 27
  • 🥰 5
Post #4348 5.53K
🤔 Очередной #дайджест по С++

🔹 Математическим путем — инженерный подкаст о научных технологиях в прикладных отраслях промышленности

🔹 SObjectizer Tales — обработка GUI из main

🔹 Just in case — Debian Bookworm поставляется с глючным GCC

🔹 День влюбленных в математику — мероприятие, командная игра по математике

🔹 Современный С++ в разработке девайсов — о том, как инструменты статического и динамического анализа помогают поддерживать единый стиль и высокое качество кода в проекте
  • 🎉 14
  • ❤ 12
  • 👍 6
Post #4347 5.23K
#memes
  • 😁 53
  • 👍 5
Post #4346 5.64K
🤔❓❓ Зачем избегать Pointer Arithmetic?

Выпущен бесплатный CLion с гораздо более быстрыми функциями core IDEA. CLion Nova — версия с языковым движком C++ от ReSharper, C++ и JetBrains Rider. Это обеспечивает:

👉 более высокую скорость выделения
👉 более отзывчивый UI
👉 значительно меньше фризов при рефакторинге

Смотреть видео

#видео
  • ❤ 21
  • 👍 3
  • 🥰 1
Post #4345 5.63K
💥🏃 Быстрый парсинг 8-битных целых чисел

В статье приводится разбор интересной задачи: вам нужно быстро распарсить 8-битные целые числа (0, 1, 2, …, 254, 255) из строки ASCII/UTF-8. Дана строка и её длина: например, ’22’ и длина 2.

Изучить решение

#гайд
  • 👍 21
  • 👏 3
  • 🌚 2
Post #4344 5.63K
🤖8️⃣ Mixtral 8x7B — новый ИИ

Это сет из 8 нейронок, которые работают вместе.
Благодаря этому снижаются галлюцинации, повышается точность работы.
Mixtral 8x7B — топовая из opensource, превышает по показателям Llama и не уступает GPT 3.5.
Мы подключаемся к Mixtral 8x7B через Llama CPP при помощи Google Colab.
При желании можно развернуть локально, или протестировать модель на сайте Hugging Face используя Hugging Chat.


Смотреть

#видео
  • 👍 8
  • ❤ 1
Post #4343 5.77K
#memes
  • 😁 85
  • ❤ 5
  • 👍 5
  • 🤩 4
Post #4342 5.93K
Использование Boost

Если ваш проект открыт для поддержки библиотеки, рассмотрите возможность использования boost::algorithm::join алгоритм. Он объединяет все элементы в указанном списке в строку, где сегменты объединяются заданным разделителем.

Другие способы преобразования вектора в строку можно найти здесь.
  • 👍 10
  • 😁 4
  • ❤ 1
Post #4341 6.03K
🤲✍️ Базовые алгоритмы на графах

Рассматриваются основные алгоритмы на графах и их реализацию на C++:

▪️Обход графа в ширину (Поиск в ширину) aka BFS | Breadth First Search
▪️Обход графа в глубину (Поиск в глубину) aka DFS | Depth First Search
▪️Алгоритм Дейкстры
▪️Алгоритм Флойда-Уоршелла
▪️Алгоритм Прима

Изучить вопрос

#туториал
  • ❤‍🔥 10
  • 👍 7
Post #4340 6.11K
🤔 Очередной #дайджест по С++

☀️ Как крысячить и выжить — крысы бегут первыми с ИТ-корабля

☀️ 4 миллиарда операторов if — идея проверки чётности числа при помощи одних сравнений

☀️ Книга «C and Python Applications» — встраивание кода Python в программы на C, методы SQL и сокеты Python

☀️ Паттерн проектирования «Наблюдатель» в C++ — основы шаблона проектирования Observer на C++ с теорией и реализацией

☀️ CspChan — чистая реализация каналов Go на C89, включая блокирующие и неблокирующие селекты
  • 👍 8
  • 🥰 3
Post #4339 6.14K
#memes
  • 😁 55
  • 🥰 12
  • ❤ 3
  • 🤔 3
Post #4338 6.36K
  • 🥰 7
  • 🤔 6
Post #4337 6.26K

Forwarded from Библиотека задач по C++ | тесты, код, задания

Задача

Найти среднее арифметическое в трех рядах.

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

Теперь подумаем какие переменные нам понадобятся :

Переменная summa — для суммы чисел каждого ряда
Переменная average — для среднего арифметического каждого ряда
Переменная number — обычное число которое мы будем постоянно прибавлять
Переменные i и j — для циклов, перпенные у нас будут локальные, т.е. использоваться и объявляться и цикле.
  • 👍 11
  • 👏 3
Post #4336 26.8K
🏦⚠️ Борьба с ошибками разработки ПО в финтехе

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

Читать статью
  • 👍 7
  • ❤ 2
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →