Articles of c ++ c ++ faq

Por que meus guardas de inclusão não estão impedindo a inclusão recursiva e várias definições de símbolos?

Duas perguntas comuns sobre incluem guardas : PRIMEIRA PERGUNTA: Por que os protetores não estão protegendo meus arquivos de header da inclusão mútua e recursiva ? Eu continuo recebendo erros sobre símbolos inexistentes que estão obviamente lá ou até mesmo erros de syntax mais estranhos toda vez que eu escrevo algo como o seguinte: “ah” […]

Função com o mesmo nome mas assinatura diferente na class derivada

Eu tenho uma function com o mesmo nome, mas com assinatura diferente em uma base e classs derivadas. Quando estou tentando usar a function da class base em outra class que herda da derivada, recebo um erro. Veja o seguinte código: class A { public: void foo(string s){}; }; class B : public A { […]

O que as seguintes frases significam em C ++: zero, padrão e boot de valor?

O que as seguintes frases significam em C ++: boot zero, boot padrão e boot de valor O que um desenvolvedor de C ++ deve saber sobre eles?

Diferença entre inheritance privada, pública e protegida

Qual é a diferença entre inheritance public , private e protected em C ++? Todas as questões que encontrei no SO lidam com casos específicos.

Como funciona o processo de compilation / vinculação?

Como funciona o processo de compilation e vinculação? (Nota: Esta é uma input para o C ++ FAQ do Stack Overflow . Se você quiser criticar a idéia de fornecer um FAQ neste formulário, então o post no meta que iniciou tudo isso seria o lugar para fazer isso. essa questão é monitorada na sala […]

O que são rvalues, lvalues, xvalues, glvalues ​​e prvalues?

Em C ++ 03, uma expressão é um rvalue ou um lvalue . Em C ++ 11, uma expressão pode ser: valor lvalue xvalue glvalue valor Duas categorias se tornaram cinco categorias. Quais são essas novas categorias de expressões? Como essas novas categorias se relacionam com as categorias de valor e valor existentes? As categorias […]

O que são elisão de cópia e otimização de valor de retorno?

O que é cópia elision? O que é (nomeado) otimização de valor de retorno? O que eles implicam? Em que situações eles podem ocorrer? Quais são as limitações? Se você foi referenciado a essa pergunta, provavelmente está procurando pela introdução . Para uma visão geral técnica, consulte a referência padrão . Veja casos comuns aqui […]

O que é object fatiar?

Alguém mencionou isso no IRC, mas o Google não tem uma boa resposta.

O que é essa estranha syntax de membro de dois-pontos (“:”) no construtor?

Recentemente eu vi um exemplo como o seguinte: #include class Foo { public: int bar; Foo(int num): bar(num) {}; }; int main(void) { std::cout << Foo(42).bar << std::endl; return 0; } O que isso estranho : bar(num) significa? De alguma forma parece inicializar a variável membro, mas eu nunca vi essa syntax antes. Parece uma […]