Вопросы по теме 'c++14'
Как определить тип результата лямбды C++ (Closure Type)
Я пытаюсь написать функцию шаблона, которая работает либо с std::function , либо с лямбдой. Предположим, что шаблон apply выглядит примерно так:
template<typename F>
typename F::result_type apply(const F &f) {
return f();
}...
02.01.2024
продолжительность хранения базовых символьных данных с определяемым пользователем строковым литералом
Быстрая настройка: я хочу передавать строки в своей программе как указатель и размер. У меня есть класс String и пользовательский литерал для построения литеральных строк:
struct String { const char *ptr; size_t sz; };
inline constexpr String...
28.11.2023
статическая функция-член make_shared для shared_ptr
Используя libc++ , я обнаружил std::shared_ptr::make_shared() статическую функцию-член в общедоступном разделе. Это очень удобно, когда я уже определил псевдоним типа для специализации std::shared_ptr :
using T = int;
using P =...
27.12.2023
Почему параметр шаблона для компаратора в создании экземпляра Priorty_queue не запрашивается?
У меня есть следующий код, чтобы понять создание экземпляра объекта очереди с приоритетом.
#include <queue>
#include <functional>
int main(int argc, char *argv[])
{
std::priority_queue<int, std::vector<int>,...
15.11.2023
Маркер [dcl.init] / 7 (7.1)
Я понимаю, что [dcl.init] / 7 (7.1) был изменен в связь с C ++ 14 из-за DR 1630 . Но не должно ли выделенное предложение (см. Ниже), присутствующее в C ++ 14, продолжать существовать в C ++ 1z?
[dcl.init] / 7 (7.1):
Если T является...
14.12.2023
Неоднозначная перегрузка nlohmann json для оператора =
Я получаю эту ошибку компиляции со следующим кодом
#include <iostream>
#include <boost/optional.hpp>
#include "nlohmann_json.hpp"
namespace nlohmann {
template <typename T>
struct adl_serializer<boost::optional<T>>...
08.11.2023
Частичная специализация вложенного класса шаблона шаблона
В настоящее время я борюсь с частичной специализацией шаблона класса шаблона шаблона (template). Я знаю, что мы можем решить следующую проблему с наследованием, но цель состоит в том, чтобы использовать только шаблоны и специализацию шаблонов....
13.11.2023
Как узнать, равны ли две строки на основе появления одной конкретной буквы?
В этом проекте две строки считаются равными, если они обе имеют одинаковое количество вхождений символа «X» и если символ «X» находится в одной и той же позиции в каждой из строк. Обратите внимание, что это позволяет использовать строки разной длины,...
13.12.2023
Как написать универсальную оболочку, не являющуюся членом, вокруг произвольных функций-членов?
Проблема
Имейте шаблон, который генерирует оболочку для произвольной функции-члена, которая позволяет вызывать эту функцию для объекта, например:
Для заданного bool std::string::empty() создается оболочка bool wrapper(const std::string&...
22.11.2023
Всегда ли стоит разделять задачу между потоками?
Раньше я думал, что многопоточность наиболее эффективна, когда мы выполняем операции блокировки, и в течение этого времени мы можем продолжить выполнение других инструкций в других потоках.
Недавно я выполнил простой тест. Я создал вектор данных и...
13.12.2023
Новые материалы
Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..
Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально
Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..
Частный метод Python: улучшение инкапсуляции и безопасности
Введение
Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..
Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования
Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..
Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv)
Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..
Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..
Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..