Metacall – библиотека которая позволяет вызывать функции, методы, процедуры между разными языками
🖥 Github
#C #Cpp
@cpluspluc
#C #Cpp
@cpluspluc
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤1🔥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
Наверняка, изучая С++, вы сталкивались с исключениями. С помощью исключений можно передать сведения об ошибках в стек вызовов. Однако, несмотря на полученную информацию, не всегда легко определить, что вызвало исключение.
Чтобы лучше понять механику обработки ошибок с помощью операторов и особенности исключений в С++, собрали самое важное в этой статье:
https://tprg.ru/IHiS
#c
👍4
Развитие лямбда-выражений в C++14, C++17 и C++20.
https://www.fluentcpp.com/2021/12/13/the-evolutions-of-lambdas-in-c14-c17-and-c20/
https://www.fluentcpp.com/2021/12/13/the-evolutions-of-lambdas-in-c14-c17-and-c20/
Fluent C++
The Evolutions of Lambdas in C++14, C++17 and C++20
Expressive code in C++
👍6❤1🔥1
Бесплатные курсы по программированию на языке C++
Хотите изучить язык C++? На Stepik доступны бесплатные русскоязычные курсы с кучей практики, которые помогут освоить все тонкости C++.
Перед изучением C++ рекомендуется знать хотя бы один язык программирования, поскольку в курсах опущены основы программирования:
1. Программирование на языке C++
Вы узнаете о том, как компилируются и выполняются программы на C++, а также усвоите основной синтаксис языка, структуры и классы, ООП и шаблоны.
2. Программирование на языке C++ (продолжение)
Дополнение к предыдущему курсу, где рассмотрены продвинутые возможности C++, нововведения современных стандартов языка, стандартная библиотека шаблонов, обработка ошибок и программирование многопоточных приложений.
#cpp #курсы
Хотите изучить язык 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
Работает на Mac OS, GNU/Linux, Windows и Android (Termux)
@cpluspluc
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥3
Язык С++ (для новичков)
Приятного просмотра 😉
Смотреть на Youtube:
https://www.youtube.com/watch?v=yxMNtIpmScg&list=PLBOPkQsFLCR2KSJlLE7E1S_WDq-_bUnHB&index=1
Приятного просмотра 😉
Смотреть на Youtube:
https://www.youtube.com/watch?v=yxMNtIpmScg&list=PLBOPkQsFLCR2KSJlLE7E1S_WDq-_bUnHB&index=1
YouTube
Язык С++ - Урок 01 - Первая программа, вывод на экран, пространство имен.
Это видео для тех, кто уже знаком с языком Си, но не знает С++.
Если вы никогда не программировали, то сначала пройдите курс по языку Си для новичков:
► Уроки по Си для новичков - https://www.youtube.com/watch?v=0bL_Va_4lB4&list=PLBOPkQsFLCR2DWRY74L03FmbRtz_Yy73_…
Если вы никогда не программировали, то сначала пройдите курс по языку Си для новичков:
► Уроки по Си для новичков - https://www.youtube.com/watch?v=0bL_Va_4lB4&list=PLBOPkQsFLCR2DWRY74L03FmbRtz_Yy73_…
👍8🔥3
Сайт на чистом C++, nginx и FastCGI
В этом видео мы создадим сервер, развернем простейший сайт на nginx и начнем работать с FastCGI, чтобы обрабатывать HTTP запросы в своем коде на C++.
Смотреть видео
@cpluspluc
В этом видео мы создадим сервер, развернем простейший сайт на nginx и начнем работать с FastCGI, чтобы обрабатывать HTTP запросы в своем коде на C++.
Смотреть видео
@cpluspluc
YouTube
#1 Сайт на чистом C++, nginx и FastCGI. New Project
Появилась идея разработать минималистичную систему управления блогом на чистом C++. Сегодня мы создадим сервер, развернем простейший сайт на nginx и начнем работать с FastCGI, чтобы обрабатывать HTTP запросы в своем коде на C++.
Репозиторий проекта: http…
Репозиторий проекта: http…
❤4
Языковой стандарт C++ 23 объявлен полнофункциональным.
https://www.infoworld.com/article/3688923/c-23-language-standard-declared-feature-complete.html
https://www.infoworld.com/article/3688923/c-23-language-standard-declared-feature-complete.html
InfoWorld
C++ 23 language standard declared feature-complete
Forthcoming update of C++ will include a standard library module named std. Attention of the ISO C++ Committee now turns to C++ 26.
🔥5
Media is too big
VIEW IN TELEGRAM
Глубокое погружение в технику диспетчеризации - Джонатан Мюллер - Meeting C++ 2022
Доклад на Eng💡
В основе интерпретатора лежит цикл, который итерирует инструкции и выполняет их по порядку. Это требует диспетчеризации: исходя из текущей инструкции, он должен выбирать различный код. Быстрый интерпретатор требует быстрого диспетчера инструкций, как и все остальное, что должно переключаться между фиксированным набором различных вариантов.
В этом докладе рассматриваются различные техники диспетчеризации, начиная с виртуальных функций, простых операторов переключения и заканчивая таблицами переходов. Мы рассмотрим инструменты анализа производительности, эталоны и много-много ассемблерного кода, чтобы узнать, как обмануть компилятор и заставить его генерировать тот ассемблерный код, который нам на самом деле нужен.
Даже если вам не нужно писать интерпретатор или другой диспетчер, вы узнаете много нового об оптимизации.
источник
Доклад на 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? Этот язык заставляет вас думать обо всём. Когда программируешь на си, начинаешь понимать, что компьютер - просто железяка. Необходимо самостоятельно выделять память под объекты, затем очищать эту память, заботиться о переполнении массивов, переполнении переменных, изменении знака переменных, приведении типов, правильном обращении к памяти и т.д.
💡 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? Этот язык заставляет вас думать обо всём. Когда программируешь на си, начинаешь понимать, что компьютер - просто железяка. Необходимо самостоятельно выделять память под объекты, затем очищать эту память, заботиться о переполнении массивов, переполнении переменных, изменении знака переменных, приведении типов, правильном обращении к памяти и т.д.
👍8❤2🔥1
Сравнение библиотек параллелизма Rust и C++.
https://blog.m-ou.se/rust-cpp-concurrency/
https://t.me/cpluspluc
https://blog.m-ou.se/rust-cpp-concurrency/
https://t.me/cpluspluc
blog.m-ou.se
Comparing Rust's and C++'s Concurrency Library
The concurrency features that are included in the Rust standard library
are quite similar to what was available in C++11: threads, atomics, mutexes, condition variables, and so on.
In the past few years, however, C++ has gained quite a few new concurrency…
are quite similar to what was available in C++11: threads, atomics, mutexes, condition variables, and so on.
In the past few years, however, C++ has gained quite a few new concurrency…
🔥4👍2❤🔥1❤1
Сетевое программирование C++. WinSock.
1- Как написать клиент, сервер. Как установить между ними связь. Как отправить сообщение с сервера клиенту.
2- Как реализовать подключение сразу нескольких клиентов к серверу.
Как написать простой сетевой чат.
3- В этом видео показано: Как отправлять сообщения любой величины.
4- В этом уроке показано: как реализовать отправку разных типов пакетов.
Source: https://github.com/xojld0/Lessons
источник
#cpp #programming
1- Как написать клиент, сервер. Как установить между ними связь. Как отправить сообщение с сервера клиенту.
2- Как реализовать подключение сразу нескольких клиентов к серверу.
Как написать простой сетевой чат.
3- В этом видео показано: Как отправлять сообщения любой величины.
4- В этом уроке показано: как реализовать отправку разных типов пакетов.
Source: https://github.com/xojld0/Lessons
источник
#cpp #programming
👍9❤2🔥2👎1
Быстрая сортировка
Отсортируйте заданный массив с помощью быстрой сортировки.
Формат входных данных:
Первая строка входных данных содержит одно натуральное число nn (1 ≤ n ≤ 10^5) – количество элементов в массиве. В следующей строке находятся элементы массива – n целых чисел, не превосходящих по абсолютной величине 10^9.
Формат выходных данных:
Выведите элементы массива в порядке неубывания.
Отсортируйте заданный массив с помощью быстрой сортировки.
Формат входных данных:
Первая строка входных данных содержит одно натуральное число nn (1 ≤ n ≤ 10^5) – количество элементов в массиве. В следующей строке находятся элементы массива – n целых чисел, не превосходящих по абсолютной величине 10^9.
Формат выходных данных:
Выведите элементы массива в порядке неубывания.
❤7