Хардварный проброс
Оказывается пробрасывать можно не только сетевые порты, а еще и регистры периферии микроконтроллера(МК). Идея та же самая - открыть периферию для использования вне микроконтроллера. Для наглядности давайте сравним более детально.
https://habr.com/ru/articles/768460/
#cpp #programming
👉 @cpp_lib
Оказывается пробрасывать можно не только сетевые порты, а еще и регистры периферии микроконтроллера(МК). Идея та же самая - открыть периферию для использования вне микроконтроллера. Для наглядности давайте сравним более детально.
https://habr.com/ru/articles/768460/
#cpp #programming
👉 @cpp_lib
👍4
Shared, TO, PLOT: друзья или враги
В прошлой заметке я остановился на вопросе о том, действительно ли указатели функций и виртуальные вызовы являются медленными. Я опубликовал статью в социальных сетях, и меня завалили ерундовыми комментариями. Однако среди этих обломков нашлось несколько хороших идей.
Некоторые пользователи попытались воспроизвести мои результаты и, поскольку им это не удалось, попросили у меня источник, который я с радостью предоставил в своем репозитории RedditHelp, который я использую для публикации ответов на вопросы в социальных сетях. В ходе этого общения были сделаны и приняты к сведению хорошие замечания:
https://lucisqr.substack.com/p/shared-lto-plt-friends-or-foes
#cpp #programming
👉 @cpp_lib
В прошлой заметке я остановился на вопросе о том, действительно ли указатели функций и виртуальные вызовы являются медленными. Я опубликовал статью в социальных сетях, и меня завалили ерундовыми комментариями. Однако среди этих обломков нашлось несколько хороших идей.
Некоторые пользователи попытались воспроизвести мои результаты и, поскольку им это не удалось, попросили у меня источник, который я с радостью предоставил в своем репозитории RedditHelp, который я использую для публикации ответов на вопросы в социальных сетях. В ходе этого общения были сделаны и приняты к сведению хорошие замечания:
https://lucisqr.substack.com/p/shared-lto-plt-friends-or-foes
#cpp #programming
👉 @cpp_lib
🔥5👍2
О дебаггинге в С/С++.
https://pspdfkit.com/blog/2021/time-travel-debugging-for-c/
#cpp #programming
👉 @cpp_lib
https://pspdfkit.com/blog/2021/time-travel-debugging-for-c/
#cpp #programming
👉 @cpp_lib
👍1
Создание HTTP-запросов на C++
В этой статье я покажу вам, как создавать HTTP-запросы к REST-серверу с помощью библиотеки C++ Request, написанной Ху Нгуеном. При её написании мистер Нгуен во многом ориентировался на принципы проектирования из Python Requests, поэтому для тех, кто использовал или знаком с Python Requests, C++ Requests окажется вполне понятна.
https://www.codeproject.com/Articles/1244632/Making-HTTP-REST-Request-in-Cplusplus
#cpp #programming
👉 @cpp_lib
В этой статье я покажу вам, как создавать HTTP-запросы к REST-серверу с помощью библиотеки C++ Request, написанной Ху Нгуеном. При её написании мистер Нгуен во многом ориентировался на принципы проектирования из Python Requests, поэтому для тех, кто использовал или знаком с Python Requests, C++ Requests окажется вполне понятна.
https://www.codeproject.com/Articles/1244632/Making-HTTP-REST-Request-in-Cplusplus
#cpp #programming
👉 @cpp_lib
❤4👍3
Инженерный калькулятор на C++. Часть 2: Алгоритм сортировочной станции
Всем маткульт-привет! В этой статье мы продолжаем и заканчиваем написание консольного инженерного калькулятора. Для понимания происходящего настоятельно рекомендую сначала ознакомиться с первой частью.
Введение
В прошлой части мы научились разбивать исходное математическое выражение формата (log2(18)/3.14)*sqrt(0.11^(-3)/0.02)на токены. На выходе мы получаем массив токенов, каждый их которых содержит информацию о типе (оператор, скобка, число, ...) и об ассоциативности, если он таковую имеет.
Теперь мы хотим привести выражение к виду обратной польской записи (RPN), чтобы затем удобно его посчитать. Это нам позволяет сделать изобретенный Эдсгером Дейкстрой алгоритм сортировочной станции.
https://habr.com/ru/articles/777368/
#cpp #programming
👉 @cpp_lib
Всем маткульт-привет! В этой статье мы продолжаем и заканчиваем написание консольного инженерного калькулятора. Для понимания происходящего настоятельно рекомендую сначала ознакомиться с первой частью.
Введение
В прошлой части мы научились разбивать исходное математическое выражение формата (log2(18)/3.14)*sqrt(0.11^(-3)/0.02)на токены. На выходе мы получаем массив токенов, каждый их которых содержит информацию о типе (оператор, скобка, число, ...) и об ассоциативности, если он таковую имеет.
Теперь мы хотим привести выражение к виду обратной польской записи (RPN), чтобы затем удобно его посчитать. Это нам позволяет сделать изобретенный Эдсгером Дейкстрой алгоритм сортировочной станции.
https://habr.com/ru/articles/777368/
#cpp #programming
👉 @cpp_lib
👍2
Сложность C++ - Что делает C++ сложным для вас?
Вопрос о том, является ли C++ сложным языком, конечно, субъективен, но мало кто будет спорить с этим утверждением.
Вопрос о том, что делает C++ сложным для вас, конечно, также субъективен, но это интересный вопрос с потенциальными последствиями. Мы можем сделать вывод:
Есть функции, которые нам нужно учить лучше.
Есть области, которые нуждаются в улучшении через процесс ISO
Есть области, которые могут выиграть от улучшения инструментов
https://www.incredibuild.com/blog/c-complexity-what-makes-c-complex-for-you
#cpp #programming
👉 @cpp_lib
Вопрос о том, является ли C++ сложным языком, конечно, субъективен, но мало кто будет спорить с этим утверждением.
Вопрос о том, что делает C++ сложным для вас, конечно, также субъективен, но это интересный вопрос с потенциальными последствиями. Мы можем сделать вывод:
Есть функции, которые нам нужно учить лучше.
Есть области, которые нуждаются в улучшении через процесс ISO
Есть области, которые могут выиграть от улучшения инструментов
https://www.incredibuild.com/blog/c-complexity-what-makes-c-complex-for-you
#cpp #programming
👉 @cpp_lib
👍3
The Observer Design Pattern in C++
Part 1 of n - A simple implementation
Part 2 of n - Extensibility and Abstraction
Part 3 of n - Registration and Lifetime
Part 4 of n - Notify Specific System
Part 5 of 5 - Review and Next Steps
источник
#cpp #programming
👉 @cpp_lib
Part 1 of n - A simple implementation
Part 2 of n - Extensibility and Abstraction
Part 3 of n - Registration and Lifetime
Part 4 of n - Notify Specific System
Part 5 of 5 - Review and Next Steps
источник
#cpp #programming
👉 @cpp_lib
🥰3👍2👏2
Кроссплатформенный многопоточный TCP/IP сервер на C++
Решил задаться целью написать простой в использовании и при этом быстрый многопоточного TCP/IP сервера на C++ и при этом кроссплатформенный — как минимум чтобы работал на платформах Windows и Linux без требования как-либо изменять код за пределами самописной библиотеки. Ранее, на чистом C++ без библиотек вроде Qt, сетевым программировнием не занимался, и предвещал себе долгое время мучений с платформо-зависимостью. Но как оказалось всё гораздо проще чем казалось на первый взгляд, ведь в основном интерфейсы сокетов обоих систем похожи как две капли воды и различаются лишь в мелких деталях.
https://habr.com/ru/articles/503432/
#cpp #programming
👉 @cpp_lib
Решил задаться целью написать простой в использовании и при этом быстрый многопоточного TCP/IP сервера на C++ и при этом кроссплатформенный — как минимум чтобы работал на платформах Windows и Linux без требования как-либо изменять код за пределами самописной библиотеки. Ранее, на чистом C++ без библиотек вроде Qt, сетевым программировнием не занимался, и предвещал себе долгое время мучений с платформо-зависимостью. Но как оказалось всё гораздо проще чем казалось на первый взгляд, ведь в основном интерфейсы сокетов обоих систем похожи как две капли воды и различаются лишь в мелких деталях.
https://habr.com/ru/articles/503432/
#cpp #programming
👉 @cpp_lib
Хабр
Кроссплатформенный многопоточный TCP/IP сервер на C++
Решил задаться целью написать простой в использовании и при этом быстрый многопоточного TCP/IP сервера на C++ и при этом кроссплатформенный — как минимум чтобы работал на платформах Windows и Linux...
👍6🎉2
C++ Software Design and Design Patterns
Command Pattern Explanation and Implementation in C++
Singleton Pattern | Explanation and Implementation in C++
Factory Method Pattern Explanation and Implementation in C++
Factory Method Pattern Adding More Power to Count Allocated Objects in C++
The Extensible Factory Pattern in C++ | Register Objects at Runtime
Iterator Pattern Explanation and usage with STL in C++
источник
#cpp #programming
👉 @cpp_lib
Command Pattern Explanation and Implementation in C++
Singleton Pattern | Explanation and Implementation in C++
Factory Method Pattern Explanation and Implementation in C++
Factory Method Pattern Adding More Power to Count Allocated Objects in C++
The Extensible Factory Pattern in C++ | Register Objects at Runtime
Iterator Pattern Explanation and usage with STL in C++
источник
#cpp #programming
👉 @cpp_lib
👍1🍓1
Media is too big
VIEW IN TELEGRAM
Курс по ООП в С++: шаблоны и метапрограммирование
00:00 - Введение
02:12 - Внутреннее устройство шаблонов
03:55 - Явная специализация
06:25 - Частичная специализация
08:04 - Перегрузка и шаблоны
09:02 - Статический полиморфизм (CRTP)
12:40 - Шиблонный синглтон (CRTP)
17:57 - Основы метапрограммирования
22:17 - Заключение
источник
#cpp #programming
👉 @cpp_lib
00:00 - Введение
02:12 - Внутреннее устройство шаблонов
03:55 - Явная специализация
06:25 - Частичная специализация
08:04 - Перегрузка и шаблоны
09:02 - Статический полиморфизм (CRTP)
12:40 - Шиблонный синглтон (CRTP)
17:57 - Основы метапрограммирования
22:17 - Заключение
источник
#cpp #programming
👉 @cpp_lib
👍7
Пол Дрейк: Использование шаблонов переменных для решения крошечной проблемы
В этом докладе Пол демонстрирует, как шаблоны переменных, появившиеся в C++14, могут быть использованы для улучшения читаемости небольшой задачи, с которой он столкнулся в своей повседневной работе.
https://www.youtube.com/watch?v=LTzpqF6wAzc
#cpp #programming
👉 @cpp_lib
В этом докладе Пол демонстрирует, как шаблоны переменных, появившиеся в C++14, могут быть использованы для улучшения читаемости небольшой задачи, с которой он столкнулся в своей повседневной работе.
https://www.youtube.com/watch?v=LTzpqF6wAzc
#cpp #programming
👉 @cpp_lib
YouTube
Paul Dreik: Using variable templates on a tiny problem
In this talk, Paul demonstrates how variable templates introduced in C++14 can be used to enhance readability of a tiny problem encountered in his day job.
Recorded at StockholmCpp 0x29:
https://www.meetup.com/stockholmcpp/events/295294785/
The event was…
Recorded at StockholmCpp 0x29:
https://www.meetup.com/stockholmcpp/events/295294785/
The event was…
👍4
Структурированная диагностика в новом окне сведений о проблеме
Многочисленные ошибки компилятора, в которых, кажется, невозможно разобраться, - бич многих разработчиков C++. Инструменты должны предоставлять лучший опыт, чтобы помочь вам понять диагностику и понять, как исправить корень проблемы.
https://devblogs.microsoft.com/cppblog/structured-diagnostics-in-the-new-problem-details-window/
#cpp #programming
👉 @cpp_lib
Многочисленные ошибки компилятора, в которых, кажется, невозможно разобраться, - бич многих разработчиков C++. Инструменты должны предоставлять лучший опыт, чтобы помочь вам понять диагностику и понять, как исправить корень проблемы.
https://devblogs.microsoft.com/cppblog/structured-diagnostics-in-the-new-problem-details-window/
#cpp #programming
👉 @cpp_lib
🔥4👍1