fa
Feedback

فریب کلاهبرداران را نخورید! تل‌متریو این کانال‌ها را شناسایی و برچسب‌گذاری می‌کند 👉 برای مشاهده برچسب، اشتراک تهیه کنید

C++ geek

C++ geek

رفتن به کانال در Telegram

Учим C/C++ на примерах

نمایش بیشتر
3 504
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-27 روز
-2630 روز
آرشیو پست ها
Удаление всех вхождений элемента в массив В этом методе сдвиньте нецелевой элемент в левую сторону. • Проверьте, является ли
Удаление всех вхождений элемента в массив В этом методе сдвиньте нецелевой элемент в левую сторону. • Проверьте, является ли текущий элемент целевым элементом или нет. • Если это целевой элемент, увеличьте переменную cnt. • После этого элемента все нецелевые элементы сдвинутся влево с промежутком (n-cnt). Временная сложность: O(n) Сложность пространства: O(1) На картинке приведена программа на C ++ для удаления всех вхождений элемента из массива с использованием оптимизированного подхода. ➡️ @cpp_geek

Как проверить скорость выполнения кода на C++? Ответ на картинке. ➡️ @cpp_geek
Как проверить скорость выполнения кода на C++? Ответ на картинке. ➡️ @cpp_geek

Чтение и отображение изображения в OpenCV с использованием C ++ Как мы видим нам потребовалось включить пространства имен cv,
Чтение и отображение изображения в OpenCV с использованием C ++ Как мы видим нам потребовалось включить пространства имен cv, которое содержит все функции, классы и структуры данных OpenCV. ➡️ @cpp_geek

Обмен значений двух переменных с помощью XOR Этот метод является быстрым и не требует использования 3-й переменной. ➡️ @cpp_g
Обмен значений двух переменных с помощью XOR Этот метод является быстрым и не требует использования 3-й переменной. ➡️ @cpp_geek

Текущая дата и время Предположим, вы хотите получить текущую системную дату и время, либо в качестве локального времени, либо
Текущая дата и время Предположим, вы хотите получить текущую системную дату и время, либо в качестве локального времени, либо в качестве скоординированного универсального времени (UTC). Выше приведен пример для достижения обоих целей. ➡️ @cpp_geek

Чем перегрузка функций отличается от перегрузки оператора? Перегрузка функций позволяет двум или более функциям с разными типами и количеством параметров иметь одно и то же имя. С другой стороны, перегрузка оператора позволяет переопределить способ работы оператора для пользовательских типов. ➡️ @cpp_geek

Алгоритм partial_sort Используется для сортировки не всего диапазона, а только его части. Он переставляет элементы в диапазон
Алгоритм partial_sort Используется для сортировки не всего диапазона, а только его части. Он переставляет элементы в диапазоне [first, last) таким образом, что элементы до середины сортируются в порядке возрастания, тогда как элементы после середины остаются без какого-либо определенного порядка. ➡️ @cpp_geek

Алгоритм move_backward Перемещает элементы одного итератора в другой. Перемещение начинается с последнего элементом в указанн
Алгоритм move_backward Перемещает элементы одного итератора в другой. Перемещение начинается с последнего элементом в указанном диапазоне и завершается первым элементом в этом диапазоне. ➡️ @cpp_geek

Что быстрее постфиксные инкрементные операторы или префиксные? Чем отличается их сигнатура? Префиксные операторы быстрее. В п
Что быстрее постфиксные инкрементные операторы или префиксные? Чем отличается их сигнатура? Префиксные операторы быстрее. В постфиксных операторах производится дополнительная операция сохранения предыдущего состояния объекта, а затем только увеличение на 1, а в префиксном операторе после инкрементирования объекта, сразу возвращается ссылка объект. Сигнатура их отличается фиктивным параметром int у постфиксного оператора. ➡️ @cpp_geek

Что такое ссылка? Как можно инициализировать ссылку одной или другой переменной в зависимости от условия? Ответ: Это другое и
Что такое ссылка? Как можно инициализировать ссылку одной или другой переменной в зависимости от условия? Ответ: Это другое имя для переменной. Ссылку необходимо инициализировать при объявлении и изменять уже нельзя. С помощью тернарного оператора или с помощью лямбда-функции. ➡️ @cpp_geek

Определение новых исключений Вы можете определить свои собственные исключения, наследуя и переопределяя функциональные возмож
Определение новых исключений Вы можете определить свои собственные исключения, наследуя и переопределяя функциональные возможности класса исключений . Ниже приведен пример, который показывает, как вы можете использовать класс std :: exception для реализации своего собственного исключения стандартным способом Это приведет к следующему результату - MyException caught C++ Exception Здесь what() - это открытый метод, предоставляемый классом исключений, и он был переопределен всеми дочерними классами исключений. Это возвращает причину исключения. ➡️ @cpp_geek

Что нужно дописать, чтобы при вызове конструктора перемещения член класса действительно "переместился"? Нужно дописать std::m
Что нужно дописать, чтобы при вызове конструктора перемещения член класса действительно "переместился"? Нужно дописать std::move в списке инициализации перемещающего конструктора: A(A&& oth) : str(std::move(oth.str)){ } Но это гарантирует "перемещение" только в том случае, если у этого объекта, в свою очередь, есть перемещающий конструктор (в данном случае, у std::string он есть). ➡️ @cpp_geek

Алгоритм prev_permutation Алгоритм переставляет элементы так, чтобы получилась предыдущая в лексикографическом порядке перест
Алгоритм prev_permutation Алгоритм переставляет элементы так, чтобы получилась предыдущая в лексикографическом порядке перестановка. Можно применять не только к векторам, но и к строкам (как и многие другие алгоритмы). Метод возвращает true, если удалось построить предыдущую в лексикографическом порядке перестановку. Если же первоначальная перестановка уже была минимальной в лексикографическом порядке, то метод генерирует максимальную в лексикографическом порядке перестановку и возвращает false. ➡️ @cpp_geek

Опишите выделение памяти и их отличия? • Статическое выделение памяти - выделяется редактором связей и существует, пока выполняется программа; • Память в стеке - автоматическая память. Выделяется при вызове функции для хранения локальных объектов и очищается автоматически после выхода этих объектов из зоны видимости, то есть после возвращения управления из функции; • Память в куче - динамическая память. Объекты создаются с помощью оператора new и должны быть уничтожены с помощью вызова оператора delete самим программистом. ➡️ @cpp_geek

Как сравнивают bool, int, float, указатели со значением и с нулем? Ответ на картинке. ➡️ @cpp_geek
Как сравнивают bool, int, float, указатели со значением и с нулем? Ответ на картинке. ➡️ @cpp_geek

Бывает такое, что оператор new не выделяет память? Ответ: Да, бывает, когда new передаётся указатель на уже выделенную память
Бывает такое, что оператор new не выделяет память? Ответ: Да, бывает, когда new передаётся указатель на уже выделенную память (например, с помощью malloc). Это называется placement new. И оператор new без изменения возвращает второй параметр - указатель (void* operator new(std::size_t, void*)). Это используется для создания объектов в выделенном "хранилище" или после malloc. Важно! В этом случае деструктор нужно вызывать самостоятельно! ➡️ @cpp_geek

Сколько раз будут выполняться циклы внутри программы? Ответ: Ответ: в первом случае цикл не выполнится никогда, а во втором с
Сколько раз будут выполняться циклы внутри программы? Ответ: Ответ: в первом случае цикл не выполнится никогда, а во втором случае будет выполняться бесконечно. Объяснение: В первом цикле условие прекращения цикла имеет тип беззнакового char, значит, у нас присвоение n 256 вызовет переполнение и n станет равным 0. Цикл превратится в for(unsigned char i = 0; i < 0; ++i), а, значит, условие цикла не выполняется, и мы даже не войдём в тело цикла. Во втором цикле другая ситуация, он превращается в for(unsigned char i = 0; i < 256; ++i), и так как i не может быть больше, чем 255, то условие цикла будет выполняться всегда. ➡️ @cpp_geek

Алгоритм distance Возвращает расстояние до желаемой позиции от первого итератора. Эта функция очень полезна при поиске нужног
Алгоритм distance Возвращает расстояние до желаемой позиции от первого итератора. Эта функция очень полезна при поиске нужного нам индекса. ➡️ @cpp_geek

Объявление классов и функций В init части цикла for можно объявлять не одни лишь переменные. Здесь также можно разместить кла
Объявление классов и функций В init части цикла for можно объявлять не одни лишь переменные. Здесь также можно разместить классы и функции. Благодаря этому можно использовать множество переменных с разными типами. ➡️ @cpp_geek

Функция map::at() Map - это контейнер в STL, который используется для хранения элементов в виде пары ключ-значение. Внутренне
Функция map::at() Map - это контейнер в STL, который используется для хранения элементов в виде пары ключ-значение. Внутренне элементы map всегда сортируются по ее ключу. Карты в основном реализованы в виде бинарных деревьев поиска. Функция map::at() используется для возврата ссылки на элемент, связанный с ключом k. ➡️ @cpp_geek