C/C++ Ready | Программирование
12.2K subscribers
713 photos
42 videos
339 links
Авторский канал по разработке на C и C++.
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!

Автор: @energy_it

Реклама на бирже: https://telega.in/c/cpp_ready
加入频道
👩‍💻 Интерфейсы и абстрактные классы: проектирование гибкой архитектуры

Интерфейсы и абстрактные классы в C++ позволяют создавать гибкие и масштабируемые архитектуры, отделяя реализацию от интерфейса.

Это позволяет различным классам использовать одни и те же методы, обеспечивая более высокую модульность и повторное использование кода.

📣 C++ Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥22🤝15👍5👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Poac — это менеджер пакетов и система сборки для пользователей C++, вдохновленная Cargo для Rust. Poac разработан как структурно-ориентированная система сборки, что означает, что, если вы следуете заданной структуре проекта Poac, вам почти не нужно конфигурировать проект, в отличие от CMake.

📌 Ссылочка: https://poac.dev/

📣 C++ Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍4🤝4
👩‍💻 Шаблон проектирования Singleton в C++ — управление уникальными экземплярами

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

Используя простой код, можно реализовать этот шаблон, чтобы сделать свой код более организованным и эффективным!

🔥 — если узнал новое
🤝 если уже пользовался

📣 C++ Ready | #собес
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥33🤝10👍8
Что будет в консоли?
Anonymous Quiz
51%
A
8%
B
16%
C
25%
D
👩‍💻 Шпаргалка по методам работы с контейнерами STL в C++

Контейнеры STL в C++ — это структуры данных, такие как vector, list, map, и set, которые позволяют эффективно хранить и управлять коллекциями элементов, предоставляя удобные методы для работы с ними.

📣 C++ Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24🔥9🤝3
🖥 Берегись неявного преобразования типов в C++

Неявное преобразование типов это автоматическое приведение одного типа к другому. Но эта "помощь" от компилятора может иногда подкинуть неприятных сюрпризов.

Рассмотрим пример:
void printStatus(bool status) {
if (status) {
std::cout << "Success\n";
} else {
std::cout << "Failure\n";
}
}
printStatus(5); // компилируется, но ожидаем ли мы это?


Код не вызовет ошибок компиляции, хотя функция ожидает тип bool, а передано целое число 5. Компилятор автоматически преобразует 5 в true. Таким образом у нас в коде может скрываться логическая ошибка, чего нужно избегать

Где можно потеряться?

1 — При перезагрузке функции преобразование типов может вызывать неоднозначности:
void func(int x);
void func(double x);
func(2.5f); // Какую функцию вызвать?


Компилятор может привести 2.5f к double или int. В зависимости от компилятора и флагов могут возникать неожиданные результаты.

2 — Конструкторы без explicit: Конструкторы, которые можно вызвать одним параметром, поддерживают неявное преобразование:
class Product {
public:
Product(int price) { }
};
void buy(const Product& p);
buy(99); // автоматически создается объект Product(99)


Такое поведение может привести к неожиданным последствиям. Чтобы избежать этого, стоит объявлять конструкторы с explicit:
explicit Product(int price) { }


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

Жми 🔥 если понравился пост

📣 C++ Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥30👍14🤝5👎1
📖 С / C++ в задачах и примерах

Книга помогает освоить языки C и C++ через практические задачи и решения, предоставляя реалистичные примеры кода и пошаговые объяснения.

Автор: Никита Культин
Год: 2019


⬇️ Скачать книгу

📣 C++ Ready | #книга
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥8👎1
🖥 Указатели на функции

В этом посте разобрали основы работы с указателями на функции, позволяя гибко управлять вызовами:

• Объявление указателя на функцию
• Передача указателя как параметра
• Переключение функций через указатель


Эти приемы делают код более универсальным и упрощают вызов функций в разных контекстах.

🔥 — если узнал новое
🤝 если уже пользовался

📣 C++ Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥44🤝27👍6👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Raptor — это инструмент анализа данных и визуализации, предоставляющий множество методов и визуальных средств для обработки и представления данных.

📌 Ссылочка: https://dma-neves.github.io/dma/raptor.html

📣 C++ Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍3👎1