Вопросы по теме 'emplace'

Как set::emplace обрабатывает объекты, которые уже находятся в наборе?
У меня есть набор объектов, и я хочу использовать emplace для добавления объектов в набор. Если эквивалентный объект еще не существует в наборе, set::emplace создает объект и помещает его в набор. Если в наборе уже есть эквивалентный объект,...
346 просмотров
schedule 01.01.2023

std::map emplace gcc 4.8.2
Я пытаюсь использовать функцию emplace из std::map, но кажется, что она не реализована (но я читал, что она была реализована в 4.8) Следующий код: std::map<std::string, double> maps; maps.emplace("Test", 1.0); приводит к: class...
7859 просмотров
schedule 11.12.2023

Как поместить объект без аргументов конструктора в контейнер STL?
Предположим, у меня есть класс, конструктор которого не принимает аргументов, и контейнер STL его объектов: list<Object> lst; Есть ли способ вставить новый объект на место? Я знаю, что что-то вроде lst.push_back(Object()); будет работать...
481 просмотров
schedule 11.06.2022

Как реализовать простой контейнер с функциями размещения new и emplace?
Мне нужно реализовать контейнер для хранения некоторого количества элементов, и по какой-то причине он должен работать без выделения кучи. Другое требование состоит в том, что элементы контейнера нельзя копировать или перемещать каким-либо образом....
6589 просмотров
schedule 20.07.2023

Есть ли в C # аналог функций emplace / emplace_back в C ++ 11?
Начиная с C ++ 11, можно написать что-то вроде #include <vector> #include <string> struct S { S(int x, const std::string& s) : x(x) , s(s) { } int x; std::string s; }; // ......
1731 просмотров
schedule 09.04.2022

Лучший способ использовать emplace_back, чтобы избежать вызова конструктора перемещения?
Я только что узнал о гарантированном копировании в C++17 . Согласно ответу на этот вопрос: Когда вы делаете return T(); , это инициализирует возвращаемое значение функции через prvalue . Поскольку эта функция возвращает T, временное не...
1455 просмотров
schedule 19.01.2023

emplace и конструкторы по умолчанию
Учитывая следующий код, я был удивлен, что try_emplace не смог использовать конструктор по умолчанию, продемонстрированный в первой строке основной функции, вместо этого жалуясь на отсутствие соответствующего вызова функции для...
828 просмотров
schedule 06.02.2023

Почему векторный конструктор принимает только последнее значение параметра при использовании в emplace unordered_map?
Я пытаюсь реализовать unordered_map> с помощью unordered_map::emplace #include <iostream> #include <vector> #include <unordered_map> using namespace std; int main () { unordered_map<char,vector<int>> amap;...
47 просмотров
schedule 14.06.2023

Как отключить создание/копирование объектов вне фабричного метода?
У меня есть класс с очень большой полезной нагрузкой, поэтому очень дорого создавать/копировать/перемещать экземпляр этого класса. Поскольку они не изменятся после завершения инициализации приложения, нет необходимости создавать временные объекты...
119 просмотров

Как вставить объект на карту, чтобы карта стала владельцем? установить?
Я хочу, чтобы карта содержала объект и отвечала за его удаление либо когда карта выходит за пределы области действия, либо явно, когда для одного из ее объектов-членов вызывается «стирание». using std::court; struct A { int x; char y;...
25 просмотров
schedule 14.10.2022

C++11: наиболее эффективный способ добавления POD к вектору‹›
Скажем, у меня есть небольшая структура с int , double и std:string . У меня есть vector этих структур. Эффективным решением C было бы выделить массив, затем выполнить цикл и установить значения поля. Каждое значение вычисляется только один...
78 просмотров
schedule 30.09.2022