C++ Academy
16.5K subscribers
619 photos
127 videos
1 file
583 links
По всем вопросам- @haarrp

@itchannels_telegram - 🔥 best it channels

РКН: clck.ru/3FmxJF
Download Telegram
Metacall – библиотека которая позволяет вызывать функции, методы, процедуры между разными языками

🖥 Github

#C #Cpp

@cpluspluc
Please open Telegram to view this post
VIEW IN TELEGRAM
👍51🔥1
Выберите правильный вариант выделения динамической памяти под переменную X типа float:
Anonymous Quiz
56%
float *ptr = new float; X = *ptr;
19%
float & ptr = new float; X = & ptr;
25%
float * ptr = &X; X = new float;
👍6
​​​​Всё об исключениях в С++

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

Чтобы лучше понять механику обработки ошибок с помощью операторов и особенности исключений в С++, собрали самое важное в этой статье:

https://tprg.ru/IHiS

#c
👍4
Бесплатные курсы по программированию на языке C++

Хотите изучить язык C++? На Stepik доступны бесплатные русскоязычные курсы с кучей практики, которые помогут освоить все тонкости C++.

Перед изучением C++ рекомендуется знать хотя бы один язык программирования, поскольку в курсах опущены основы программирования:

1. Программирование на языке C++
Вы узнаете о том, как компилируются и выполняются программы на C++, а также усвоите основной синтаксис языка, структуры и классы, ООП и шаблоны.

2. Программирование на языке C++ (продолжение)
Дополнение к предыдущему курсу, где рассмотрены продвинутые возможности C++, нововведения современных стандартов языка, стандартная библиотека шаблонов, обработка ошибок и программирование многопоточных приложений.

#cpp #курсы
11
llama.cpp – Порт нейронки «LLaMA» от Facebook, равной по мощности GPT-3 на чистом C/C++

Работает на Mac OS, GNU/Linux, Windows и Android (Termux)

🖥 Github

@cpluspluc
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥3
Media is too big
VIEW IN TELEGRAM
Глубокое погружение в технику диспетчеризации - Джонатан Мюллер - Meeting C++ 2022
Доклад на Eng💡

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

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

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

источник
6
👨🏻‍💻 Подборка полезных ссылок для изучения C++

💡 LearnCpp.com — это бесплатный веб-сайт, посвященный обучению вас программированию на C++. Независимо от того, был ли у вас какой-либо предыдущий опыт программирования или нет, учебные пособия на этом сайте помогут вам выполнить все шаги по написанию, компиляции и отладке ваших программ на C++, и все это с большим количеством примеров.

💡 ravesli.com — Здесь представлены более 240 бесплатных уроков, где с нуля рассматриваются основы и тонкости языка С++ и программирования в целом. Есть пошаговые создания игр на С++ с помощью библиотек MFC и SFML, и более 70 практических заданий для проверки ваших навыков программирования.

💡 metanit.com — данный сайт посвящен различным языкам и технологиям программирования, компьютерам, мобильным платформам и ИТ-технологиям. Здесь будут выкладываться различные руководства и учебные материалы, статьи и примеры.

💡 cppstudio.com/cat/274/ — Если вы новичок в C++, предлагаю Вам прочитать этот бесплатный учебник. Здесь собрано большое количество статей для начинающих программистов по С++. Условно все статьи разделены на группы, кратко характеризующие их содержание. После прочтения статьи, можно закрепить материал, написав несколько программ. Для проверки своих теоретических знаний можно пройти тестирование по С++. В таблице после теоретических статей идет подраздел практики, в котором вы можете пройти тестирование и написать программы.

💡 cplusplus.com/doc/tutorial/ — These tutorials explain the C++ language from its basics up to the newest features introduced by C++11. Chapters have a practical orientation, with example programs in all sections to start practicing what is being explained right away.

💡 devdocs.io/cpp/ — The interface of C++ standard library is defined by the following collection of headers.

💡 https://www.cpp.com.ru/ — C++ — чрезвычайно мощный язык, содержащий средства создания эффективных программ практически любого назначения, от низкоуровневых утилит и драйверов до сложных программных комплексов самого различного назначения. На данном сайте выложено несколько книг и статей по языкам С и С++, как для начинающих, так и для профессионалов.

💡 https://en.cppreference.com/w/cpp — ещё одна хорошая документация на английском. Постоянно обновляется.

💡 https://learnc.info/ — хороший сайт с лекциями по языку C. В качестве базового языка вам предстоит изучать C. Почему именно C, а не Pascal, Python, Ruby или PHP? Этот язык заставляет вас думать обо всём. Когда программируешь на си, начинаешь понимать, что компьютер - просто железяка. Необходимо самостоятельно выделять память под объекты, затем очищать эту память, заботиться о переполнении массивов, переполнении переменных, изменении знака переменных, приведении типов, правильном обращении к памяти и т.д.
👍82🔥1
Алгоритм includes

Используется для распознавания, существуют ли все числа тз одного контейнера в других контейнерах. Это помогает проверить, является ли набор подмножеством другого набора или нет, учитывая, что набор упорядочен. Ожидается, что элементы будут отсортированы по порядку.
🔥7👍41
Сетевое программирование C++. WinSock.

1- Как написать клиент, сервер. Как установить между ними связь. Как отправить сообщение с сервера клиенту.

2- Как реализовать подключение сразу нескольких клиентов к серверу.
Как написать простой сетевой чат.

3- В этом видео показано: Как отправлять сообщения любой величины.

4- В этом уроке показано: как реализовать отправку разных типов пакетов.

Source: https://github.com/xojld0/Lessons


источник

#cpp #programming
👍92🔥2👎1
Быстрая сортировка

Отсортируйте заданный массив с помощью быстрой сортировки.

Формат входных данных:
Первая строка входных данных содержит одно натуральное число nn (1 ≤ n ≤ 10^5) – количество элементов в массиве. В следующей строке находятся элементы массива – n целых чисел, не превосходящих по абсолютной величине 10^9.

Формат выходных данных:
Выведите элементы массива в порядке неубывания.
7
Алгоритм set_symmetric_difference

Строит отсортированную последовательность из элементов, которые встречаются только в первой последовательности [first1, last1) или только во второй - [first2, last2).
👍10🔥21