Resultados da pesquisa a pedido "c++11"
C ++: otimizando a chamada de destruidor
Há um pequeno exemplo de código aqui: struct Data { }; struct Init { Data *m_data; Init() : m_data(new Data) { } ~Init() { delete m_data; } }; class Object { private: int m_initType; Data *m_data; public: Object(const Init &init) : ...
O ponteiro é aritmético no membro inativo de uma união UB?
Vamos considerar este código de exemplo: struct sso { union { struct { char* ptr; char size_r[8]; } large_str; char short_str[16]; }; const char* get_tag_ptr() const { return short_str+15; } };No[basic.expr] ...
O boost-1.55 boost :: property_tree :: ptree é compilado com c ++ 11?
Estou tentando compilar o seguinte código fonte #include <boost/property_tree/ptree.hpp> int main() { boost::property_tree::ptree b; b.push_back(std::make_pair("a", "b")); return 9; }usando o seguinte compilador e instruções: $ g++ ./source.cpp ...
Como const auto e auto const se aplicam a ponteiros?
Eu estava tentando algum código e estou me perguntando como oconst qualificador em C ++ se aplica a tipos de ponteiros ao usarauto. int main() { int foo = 1; int bar = 2; //Expected: const int * ptr_to_const_int = &foo; const auto ...
Por que nenhuma atribuição de movimento / construtor de movimento padrão?
Eu sou um programador simples. As variáveis dos membros da minha classe geralmente consistem em tipos de POD e contêineres STL. Por causa disso, raramente preciso escrever operadores de atribuição ou copiar construtores, pois eles são ...
O que acontece se 'throw' falhar ao alocar memória para o objeto de exceção?
Do padrão C ++ 11 (15.1.p4): A memória para o objeto de exceção é alocada de maneira não especificada, exceto conforme observado em 3.7.4.1 E se a alocação falhar - será lançadastd::bad_alloc em vez de? Ligarstd::terminate? Não especificado?
Quando a adição de um construtor de movimento e um operador de atribuição de movimento realmente fará diferença?
Considerando a alta qualidade dos compiladores atuais em relação à otimização do valor de retorno (RVO e NRVO), fiquei pensando em que complexidade de classe é realmente significativo começar a adicionar construtores de movimento e operadores de ...
Método e classe interna com o mesmo nome (erro:… entra em conflito com uma declaração anterior)
Pretendo ter uma classe que tenha uma classe interna e um método com nomes semelhantes. O código deexample1.cpp compila sem nenhum problema, mesmo que eu tenha uma classe interna e um método com o mesmo nomeB. Enquantoexample2.cpp não vai ...
Descontinuação da palavra-chave estática ... não mais?
Em C ++, é possível usar ostatic palavra-chave em uma unidade de tradução para afetar a visibilidade de um símbolo (declaração de variável ou função). No n3092, isso foi preterido: Anexo D.2[estático] O uso da palavra-chave estática é ...
Passando rvalues através de std :: bind
Eu quero passar um rvalue porstd::bind para uma função que leva uma referência rvalue em C ++ 0x. Não consigo descobrir como fazê-lo. Por exemplo: #include <utility> #include <functional> template<class Type> void foo(Type &&value) { Type ...