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

C ++ é uma linguagem de programação de uso geral. Foi originalmente projetado como uma extensão para C e tem uma sintaxe semelhante, mas agora é uma linguagem completamente diferente. Use esta tag para perguntas sobre o código (a ser) compilado com um compilador C ++. Use uma tag específica da versão para perguntas relacionadas a uma revisão padrão específica [C ++ 11], [C ++ 14], [C ++ 17] ou [C ++ 20] etc.



6
O operador til em C
Eu vi o operador til usado no algoritmo de hashing ELF e estou curioso para saber o que ele faz. (O código é de Eternally Confused .) unsigned elf_hash ( void *key, int len ) { unsigned char *p = key; unsigned h = 0, g; int i; for ( …
95 c++  c  operators 


3
O que é um “pisar na memória”?
Acabei de encontrar uma postagem de blog que menciona “memória marcante”: um programa C ++ que é facilmente capaz de controlar a memória (algo do qual você provavelmente nunca ouviu falar se nasceu em um mundo de código gerenciado). E na verdade nunca ouvi falar disso! Então, o que é …

3
<cstdint> vs <stdint.h>
Qual é a diferença entre stdint.he cstdint? Ambos estão disponíveis em MSVC (Visual Studio 2010) e gcc-4.5.1. Além disso, ambos definem os tipos intX_t/ uintX_t(onde Xé o tamanho em bytes do tipo). Se a lógica em ambos os cabeçalhos for a mesma (tipos portáteis), que decisões devo tomar para decidir …
95 c++  stdint  cstdint 


3
Como verificar corretamente se std :: function está vazio em C ++ 11?
Eu queria saber como verificar corretamente se um std::functionestá vazio. Considere este exemplo: class Test { std::function&lt;void(int a)&gt; eventFunc; void registerEvent(std::function&lt;void(int a)&gt; e) { eventFunc = e; } void doSomething() { ... eventFunc(42); } }; Este código compila perfeitamente no MSVC, mas se eu chamar doSomething()sem inicializar eventFunco código obviamente …

1
Qual é o significado do termo “função livre” em C ++?
Ao ler a documentação de boost :: test, me deparei com o termo "função livre". O que eu entendo é que uma função livre é qualquer função que não retorna nada (seu tipo de retorno é nulo). Mas depois de ler mais, parece que as funções livres também não aceitam …
95 c++ 

8
vector :: at vs. vector :: operator []
Eu sei que at()é mais lento do que []por causa de sua verificação de limite, que também é discutida em questões semelhantes como C ++ Vector at / [] operator speed ou :: std :: vector :: at () vs operator [] &lt;&lt; resultados surpreendentes !! 5 a 10 vezes …
95 c++  stl  stdvector 

4
Qual cabeçalho devo incluir para `size_t`?
De acordo com cppreference.com size_t é definido em vários cabeçalhos, nomeadamente &lt;cstddef&gt; &lt;cstdio&gt; &lt;cstring&gt; &lt;ctime&gt; E, desde C ++ 11, também em &lt;cstdlib&gt; &lt;cwchar&gt; Em primeiro lugar, me pergunto por que isso acontece. Isso não está em contradição com o princípio DRY ? No entanto, minha pergunta é: Qual dos …
95 c++  typedef 

4
Como verificar o tipo de parâmetro de modelo?
Suponha que eu tenha uma função de modelo e duas classes class animal { } class person { } template&lt;class T&gt; void foo() { if (T is animal) { kill(); } } Como faço para verificar se é animal? Não quero ter algo que verifique durante o tempo de execução. …
95 c++  templates 




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.