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

Perguntas sobre C ++, uma linguagem de programação de propósito geral, compilada estaticamente, de formato livre, com vários paradigmas.


13
É razoável anular a guarda de cada ponteiro não referenciado?
Em um novo emprego, tenho sido sinalizado em revisões de código para códigos como este: PowerManager::PowerManager(IMsgSender* msgSender) : msgSender_(msgSender) { } void PowerManager::SignalShutdown() { msgSender_->sendMsg("shutdown()"); } Disseram-me que o último método deveria ser: void PowerManager::SignalShutdown() { if (msgSender_) { msgSender_->sendMsg("shutdown()"); } } ou seja, I deve colocar um NULLguarda em …

3
Por que precisamos colocar membros privados em cabeçalhos?
Variáveis ​​privadas são uma maneira de ocultar detalhes de complexidade e implementação para o usuário de uma classe. Este é um recurso bastante interessante. Mas eu não entendo porque no c ++ precisamos colocá-los no cabeçalho de uma classe. Vejo duas desvantagens irritantes para isso: Desordena o cabeçalho do usuário …
62 c++  headers 



10
É melhor Show () + Hide () ou SetVisible (bool visível)?
O que é melhor e por quê? (Do ponto de vista do design da interface): a) Ter dois Show()e Hide()funções b) Ter uma SetVisible(bool visible)função EDIT: Por exemplo, algum objeto tem estado de visibilidade e esta função é usada para alterá-lo. c) ter todos os três Show(), Hide(), SetVisible(bool visible)funções
59 java  c++  interfaces 

9
std :: shared_ptr como último recurso?
Eu estava apenas assistindo as transmissões "Going Native 2012" e notei a discussão sobre std::shared_ptr. Fiquei um pouco surpreso ao ouvir a visão um tanto negativa de Bjarne std::shared_ptre seu comentário de que ele deveria ser usado como "último recurso" quando a vida de um objeto é incerta (o que …

13
Filosofia por trás do comportamento indefinido
As especificações C \ C ++ deixam de fora um grande número de comportamentos em aberto para os compiladores implementarem de sua própria maneira. Há várias perguntas que sempre são feitas aqui sobre o mesmo e temos excelentes postagens sobre isso: https://stackoverflow.com/questions/367633/what-are-all-the-common-undefined-behaviour-that-ac-programmer-should-know-abo https://stackoverflow.com/questions/4105120/what-is-undefined-behavior https://stackoverflow.com/questions/4176328/undefined-behavior-and-sequence-points Minha pergunta não é sobre o …


11
Uma revisão moderna do Java [fechado]
Estou programando há alguns anos e comecei em Java, e no meu tempo encontrei muitas fontes diferentes alegando que o Java era uma linguagem inferior de uma maneira ou de outra. Estou ciente de que cada linguagem tem seus pontos fortes e fracos, mas muitas coisas que li sobre Java …

9
Legibilidade versus capacidade de manutenção, caso especial de gravação de chamadas de função aninhadas
Meu estilo de codificação para chamadas de função aninhadas é o seguinte: var result_h1 = H1(b1); var result_h2 = H2(b2); var result_g1 = G1(result_h1, result_h2); var result_g2 = G2(c1); var a = F(result_g1, result_g2); Recentemente, mudei para um departamento em que o seguinte estilo de codificação é muito utilizado: var …

7
Por que não existe uma construção 'finalmente' em C ++?
O tratamento de exceções em C ++ é limitado a tentativa / lançamento / captura. Diferentemente do Object Pascal, Java, C # e Python, mesmo no C ++ 11, a finallyconstrução não foi implementada. Tenho visto muita literatura C ++ discutindo "código de exceção seguro". Lippman escreve que o código …
57 c++  exceptions 

7
Por que existem tantas classes de strings em face de std :: string?
Parece-me que muitas bibliotecas C ++ maiores acabam criando seu próprio tipo de string. No código do cliente você tem que usar o que a partir da biblioteca ( QString, CString, fbstringetc., tenho certeza que qualquer um pode citar alguns) ou manter a conversão entre o tipo padrão e aquela …
56 c++ 

3
O que é um lambda e por que seria útil? [fechadas]
Até agora eu ouvi sobre: Cálculo lambda Programação Lambda Expressões lambda Funções Lambda Tudo isso parece estar relacionado à programação funcional ... Aparentemente, ele será integrado ao C ++ 1x, para que eu possa entender melhor agora: http://en.wikipedia.org/wiki/C%2B%2B0x#Lambda_functions_and_expressions Alguém pode definir brevemente o que são coisas lambdas e indicar onde …

15
Por que temos incremento de postfix?
Disclaimer : Conheço perfeitamente a semântica do incremento de prefixo e postfix. Então, por favor, não me explique como eles funcionam. Lendo perguntas sobre estouro de pilha, não posso deixar de notar que os programadores ficam confusos com o operador de incremento do postfix repetidas vezes. A partir disso, surge …
55 c++  c  postfix 

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.