Resultados da pesquisa a pedido "c++"

1 a resposta

Um destruidor virtual padrão impede operações de movimentação geradas pelo compilador?

Inspirado no postPor que o destruidor desativa a geração de métodos de movimentação implícitos? [https://stackoverflow.com/questions/33932824/why-destructor-disabling-the-generation-of-implicit-move-functions] , Fiquei pensando se o mesmo se ...

3 a resposta

Conversão de tipo no argumento de não tipo de modelo sem constexpr

Considere o seguinte código: struct A { constexpr operator int() { return 42; } }; template <int> void foo() {} void bar(A a) { foo<a>(); } int main() { foo<A{}>(); const int i = 42; foo<i>(); // (1) A a{}; static_assert(i == a, ""); bar(a); ...

11 a resposta

Como acelerar o tempo de compilação do g ++ (ao usar muitos modelos)

Talvez essa pergunta seja estranha, mas como posso acelerar o tempo de compilação do g ++? Meu código C ++ usa intensamente impulso e modelos. Eu já mudei o máximo possível dos arquivos de cabeçalho e use a opção -j, mas ainda demora um pouco ...

3 a resposta

Como criar uma janela simples com um botão usando apenas o OpenCV HighGui?

Estou trabalhando em um projeto de jogo usando OpenCV. Agora eu tenho que criar uma GUI simples: uma janela com um botão, usando apenas o HighGui. Não tenho certeza, mas acho que devo usar algo assim: cvNamedWindow( "NameWindow" , ...

1 a resposta

função de membro qualificado const-reference

O exemplo de estoque de uma função de membro qualificado por referência parece ser algo como isto: #include <stdio.h> #include <stdexcept> #include <string> // Easy access to literals using namespace std::literals; // File wrapper class File { ...

1 a resposta

Prioridade de inicialização de lista de objeto do mesmo tipo

#include <iostream> #include <initializer_list> using namespace std; struct CL { CL(){} CL (std::initializer_list<CL>){cout<<1;} CL (const CL&){cout<<2;} }; int main() { CL cl1; CL cl2 {cl1}; //prints 21 }Aqui estáCL struct com construtor ...

4 a resposta

Por que o destruidor desativa a geração de métodos de movimentação implícitos?

Eu estava tentando entender o que a regra do zero diz lendoeste blog [https://rmf.io/cxx11/rule-of-zero/]. Na IMO, ele diz que se você declarar seu próprio destruidor, não esqueça de fazer o construtor de movimentação e a atribuição de ...

1 a resposta

Problemas com a rotação de arquivos após adicionar sinalizador de acréscimo no Boost 1.59 log v2

Após adicionar o sinalizador de acréscimo "keywords :: open_mode = std :: ios_base :: app"para afundar arquivo, a rotação normal do arquivo não está acontecendo quando o arquivo atinge o tamanho máximo, conforme especificado no código ...

3 a resposta

Programa C ++ Pass by Reference

A IBM explica a passagem do C ++ por referência no exemplo abaixo (fonte incluída). Se eu mudassevoid swapnum... paravoid swapnum(int i, int j), passaria por valor? // pass by reference example // author - ibm #include <stdio.h> void ...

3 a resposta

Por que dois ponteiros brutos para o objeto gerenciado são necessários na implementação std :: shared_ptr?

Aqui está uma citação da seção de notas de implementação da cppreference emstd::shared_ptr, que menciona que existem dois ponteiros diferentes (como mostrado em negrito): aquele que pode ser retornado porget()e aquele que mantém os dados reais ...