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

113
lançar novo std :: exception vs lançar std :: exception

enquanto olhava para algum código que encontrei: throw /*-->*/new std::exception ("//... e sempre pensei que você não precisa / não deveria usar newaqui. Qual é a forma correta, ambas estão OK, em caso afirmativo, há alguma diferença? BTW pelo que eu posso ver enquanto "grepping" com...

113
Existe inferência automática de tipo em Java?

Existe um autotipo de variável em Java como você tem em C ++? Um exemplo: for ( auto var : object_array) std::cout << var << std::endl; for( auto var : object_array) var.do_something_that_only_this_particular_obj_can_do(); Eu sei que existe um loop for aprimorado em Java, mas...

113
É 'int main;' um programa C / C ++ válido?

Eu pergunto porque meu compilador parece pensar assim, embora eu não. echo 'int main;' | cc -x c - -Wall echo 'int main;' | c++ -x c++ - -Wall O Clang não emite nenhum aviso ou erro com isso, e o gcc emite apenas o aviso manso:, 'main' is usually a function [-Wmain]mas apenas quando compilado...

112
#ifdef vs #if - o que é melhor / mais seguro como método para habilitar / desabilitar a compilação de seções específicas do código?

Isso pode ser uma questão de estilo, mas há um pouco de divisão em nossa equipe de desenvolvimento e eu me pergunto se mais alguém tem alguma idéia sobre o assunto ... Basicamente, temos algumas instruções de impressão de depuração que desativamos durante o desenvolvimento normal. Pessoalmente,...

112
Por que lançar valores de retorno não utilizados para nulos?

int fn(); void whatever() { (void) fn(); } Existe alguma razão para lançar um valor de retorno não utilizado para o vazio, ou estou certo em pensar que é uma completa perda de tempo? Acompanhamento: Bem, isso parece muito abrangente. Suponho que seja melhor do que comentar um valor de...

112
abortar, encerrar ou sair?

Qual é a diferença entre esses três, e como devo encerrar o programa em caso de exceção que não consigo tratar

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
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...