Как установить высоту CSS, сохраняя размер наследования (от горячей к высоте смещения)

Как первое замечание, я бы не назвал его ObjectArray, если это карта, а не массив.

В любом случае вы можете вставить объекты таким образом:

ObjectArray myMap;
myMap.insert(std::make_pair(0, std::unique_ptr(new Class1())));

Или следующим образом:

ObjectArray myMap;
myMap[0] = std::unique_ptr(new Class1());

Разница между двумя формами заключается в том, что первая , если ключ 0 уже присутствует на карте, а второй будет перезаписывать его значение новым.

В C ++ 14 вы можете использовать std::make_unique() вместо построения unique_ptr из выражения new. Например:

myMap[0] = std::make_unique();

0
задан SwiftNinjaPro 6 March 2019 в 16:31
поделиться