Perguntas com a marcação «unique-ptr»

std :: unique_ptr é um ponteiro inteligente que retém a propriedade exclusiva de um objeto por meio de um ponteiro. unique_ptr não pode ser copiado ou atribuído por cópia, duas instâncias de unique_ptr não podem gerenciar o mesmo objeto.

367
Retornando unique_ptr das funções

unique_ptr<T>não permite a construção da cópia, mas suporta a semântica de movimentação. No entanto, posso retornar a unique_ptr<T>de uma função e atribuir o valor retornado a uma variável. #include <iostream> #include <memory> using namespace std; unique_ptr<int>...

185
std :: auto_ptr para std :: unique_ptr

Com a chegada do novo padrão (e peças já disponíveis em alguns compiladores), o novo tipo std::unique_ptrdeve ser um substituto std::auto_ptr. O uso deles se sobrepõe exatamente (para que eu possa localizar / substituir globalmente no meu código (não que eu faria isso, mas se o fizesse)) ou devo...

96
Por que usar std :: make_unique em C ++ 17?

Pelo que entendi, C ++ 14 foi introduzido std::make_uniqueporque, como resultado da ordem de avaliação dos parâmetros não ser especificada, isso não era seguro: f(std::unique_ptr<MyClass>(new MyClass(param)), g()); // Syntax A (Explicação: se a avaliação primeiro alocar a memória para o...

94
Como declarar std :: unique_ptr e para que serve?

Procuro entender como std::unique_ptrfunciona e para isso encontrei este documento. O autor parte do seguinte exemplo: #include <utility> //declarations of unique_ptr using std::unique_ptr; // default construction unique_ptr<int> up; //creates an empty object // initialize with an...