Perguntas com a marcação «c++11»

117
Como eu habilito o C ++ 11 no gcc?

Eu uso o gcc 4.8.1 de http://hpc.sourceforge.net no Mac OSX Mountain Lion. Estou tentando compilar um programa C ++ que usa a to_stringfunção em <string>. Preciso usar a bandeira -std=c++11todas as vezes: g++ -std=c++11 -o testcode1 code1.cpp Existe uma maneira de incluir este sinalizador...

117
inicializar um vetor para zeros C ++ / C ++ 11

Eu sei que em C ++ 11 eles adicionaram o recurso para inicializar uma variável para zero como tal double number = {}; // number = 0 int data{}; // data = 0 Existe uma maneira semelhante de inicializar um std::vectorde comprimento fixo para todos os

116
usando modelo externo (C ++ 11)

Figura 1: modelos de função TemplHeader.h template<typename T> void f(); TemplCpp.cpp template<typename T> void f(){ //... } //explicit instantation template void f<T>(); Main.cpp #include "TemplHeader.h" extern template void f<T>(); //is this correct? int main() {...

112
O cout é sincronizado / thread-safe?

Em geral, presumo que os fluxos não estão sincronizados, cabe ao usuário fazer o bloqueio apropriado. No entanto, coisas como coutreceber tratamento especial na biblioteca padrão? Ou seja, se vários threads estiverem gravando, couteles podem corromper o coutobjeto? Eu entendo que, mesmo se...

112
Por que podemos usar `std :: move` em um objeto` const`?

Em C ++ 11, podemos escrever este código: struct Cat { Cat(){} }; const Cat cat; std::move(cat); //this is valid in C++11 quando eu chamo std::move, significa que quero mover o objeto, ou seja, vou mudar o objeto. Mover um constobjeto não é razoável, então por que std::movenão restringe esse...

112
Uma classe enum pode ser convertida no tipo subjacente?

Existe uma maneira de converter um enum classcampo para o tipo subjacente? Achei que seria automático, mas aparentemente não. enum class my_fields : unsigned { field = 1 }; unsigned a = my_fields::field; Essa atribuição está sendo rejeitada pelo GCC. error: cannot convert 'my_fields' to...

111
Impondo a ordem das instruções em C ++

Suponha que eu tenha várias instruções que desejo executar em uma ordem fixa. Quero usar o g ++ com o nível de otimização 2, portanto, algumas instruções podem ser reordenadas. Quais ferramentas são necessárias para impor uma certa ordem de declarações? Considere o seguinte exemplo. using Clock =...