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

Classe de ponteiro inteligente contado de referência que implementa propriedade compartilhada

276
Diferença no make_shared e shared_ptr normal em C ++

std::shared_ptr<Object> p1 = std::make_shared<Object>("foo"); std::shared_ptr<Object> p2(new Object("foo")); Muitas postagens do google e do stackoverflow existem sobre isso, mas não consigo entender por que make_sharedé mais eficiente do que usar diretamente shared_ptr. Alguém...

172
shared_ptr para uma matriz: deve ser usada?

Apenas uma pequena consulta sobre shared_ptr. É uma boa prática usar shared_ptrapontar para uma matriz? Por exemplo, shared_ptr<int> sp(new int[10]); Se não, então por que não? Uma razão pela qual eu já estou ciente é que não é possível aumentar / diminuir o shared_ptr. Portanto, ele não...

129
Por que o std :: shared_ptr <void> funciona

Encontrei algum código usando std :: shared_ptr para executar uma limpeza arbitrária no desligamento. No começo, achei que esse código não funcionaria, mas tentei o seguinte: #include <memory> #include <iostream> #include <vector> class test { public: test() { std::cout...

106
std :: shared_ptr thread safety explicada

Estou lendo http://gcc.gnu.org/onlinedocs/libstdc++/manual/shared_ptr.html e alguns problemas de segurança de thread ainda não estão claros para mim: Padrão garante que a contagem de referência seja tratada com segurança de thread e seja independente de plataforma, certo? Problema semelhante - o...

103
Onde está shared_ptr?

Estou muito frustrado agora, depois de várias horas tentando descobrir onde shared_ptr está localizado. Nenhum dos exemplos que vejo mostra código completo para incluir os cabeçalhos para shared_ptr(e funcionando). Simplesmente afirmando std, tr1e <memory>não está ajudando em nada! Eu baixei...

101
std :: shared_ptr deste

Atualmente, estou tentando aprender como usar ponteiros inteligentes. No entanto, ao fazer alguns experimentos, descobri a seguinte situação para a qual não consegui encontrar uma solução satisfatória: Imagine que você tenha um objeto da classe A sendo pai de um objeto da classe B (o filho), mas...