Resultados da pesquisa a pedido "smart-pointers"

2 a resposta

recebendo um ptr normal de shared_ptr?

Eu tenho algo comoshared_ptr<Type> t(makeSomething(), mem_fun(&Type::deleteMe)) Agora preciso chamar a função estilo C que requer um ponteiro paraType. Como faço para obtê-loshared_ptr?

3 a resposta

Diferenças entre std :: make_unique e std :: unique_ptr com new

Fazstd::make_unique tem benefícios de eficiência comostd::makes_shared? Comparado à construção manualstd::unique_ptr: std::make_unique<int>(1); // vs std::unique_ptr<int>(new int(1));

4 a resposta

Usando std :: shared_ptr <void> para apontar para qualquer coisa

Estou usando umstd::shared_ptr<void> na minha aplicação, para fazer um ponteiro inteligente que possa apontar para muitos tipos diferentes de estruturas de dados, como estruturas, vetores, matrizes ... basicamente qualquer coisa. O que estou ...

3 a resposta

Injeção de dependência no C ++ 11 sem ponteiros brutos

Costumo usar o padrão "injeção de dependência" em meus projetos. No C ++, é mais fácil de implementar passando ponteiros brutos, mas agora com o C ++ 11, tudo no código de alto nível deve ser possível com ponteiros inteligentes. Mas qual é ...

3 a resposta

Por que não há boost :: copy_on_write_ptr?

eu acabei de veresta [http://en.wikibooks.org/wiki/More_C%2B%2B_Idioms/Copy-on-write]legaisponteiro de cópia na gravaçãoimplementação. Parece bastante genérico e útil, então minha pergunta é: Essa classe está contida em algum dos kits de ...

1 a resposta

Tipo incompleto para std :: vector

O compilador GCC reclama (veja abaixo) quando tento o seguinte.class Face precisa estar incompleto porque contém ponteiro paraclass Element que também contém ponteiro paraclass Face. Em outras palavras, há uma dependência circular entre as ...

2 a resposta

Existe uma implementação para observer_ptr agora?

Eu gostaria de usarobserver_ptr no meu projeto, mas opapel [http://open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3840.pdf]define apenas a interface, não a implementação completa. Existe uma implementação de código aberto agora, ou eu tenho que ...

8 a resposta

Qual é a melhor assinatura para clone () em C ++?

Como Scott Myers escreveu, você pode aproveitar um relaxamento no sistema de tipos do C ++ para declarar clone () para retornar um ponteiro para o tipo real que está sendo declarado: class Base { virtual Base* clone() const = 0; }; class Derived ...

1 a resposta

Benefícios do uso de BOOST shared_array sobre shared_ptr

Eu quero usarPonteiro BOOST Smartpara gerenciamento de memória no meu aplicativo. Mas não tenho certeza de qual ponteiro inteligente devo usar para a matriz alocada dinamicamenteshared_ptr oushared_array. De acordo comBOOST docA partir da versão ...

7 a resposta

Substituindo auto_ptr no VC ++ 8

std::auto_ptr está quebrado no VC ++ 8 (que é o que usamos no trabalho). Minha principal reclamação é que ele permiteauto_ptr<T> x = new T();, o que obviamente leva a falhas horríveis, sendo simples por engano. De ...