LINUX.ORG.RU

История изменений

Исправление technic93, (текущая версия) :

С вектором это просто.

Ну это не inplace по сути. Я вообще не вижу отличие между таким подходом и push. Этот пример нужен только если объект создается опционально, типа vec.push_if_empty(|| Bar::new()).

inplace имеется ввиду как placement new, когда мы аллоцируем память сразу в векторе и уже работаем с инициализацией объекта обращаясь к полям которые уже физически лежат в векторе.

Исправление technic93, :

С вектором это просто.

Ну это не inplace по сути. Я вообще не вижу отличие между таким подходом и push. Этот пример нужен только если объект создается опционально, типа vec.push_if_empty(|| Bar::new()).

inplace имеется ввиду как placement new, когда мы аллоцируем память сразу в векторе и уже с работаем с инициализацией объекта обращаясь к полям которые уже физически лежат в векторе.

Исходная версия technic93, :

С вектором это просто.

Ну это не inplace по сути. Я вообще не вижу отличие между таким подходом и push. Этот пример нужно только если объект создается опционально, типа vec.push_if_empty(|| Bar::new()).

inplace имеется ввиду как placement new, когда мы аллоцируем память сразу в векторе и уже с работаем с инициализацией объекта обращаясь к полям которые уже физически лежат в векторе.