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.



13
Retirando o resultado de std :: type_info :: name
Atualmente estou trabalhando em algum código de registro que supostamente - entre outras coisas - imprime informações sobre a função de chamada. Isso deve ser relativamente fácil, o C ++ padrão tem uma type_infoclasse. Contém o nome da classe / função / etc. mas está mutilado. Não é muito útil. …
93 c++  gcc  name-mangling 




7
Por que as pessoas usam tanto __ (sublinhado duplo) em C ++
Eu estava dando uma olhada em alguns códigos C ++ de código aberto e percebi que muitas pontuações duplas eram usadas no código, principalmente no início dos nomes de variáveis. return __CYGWIN__; Apenas me perguntando se há uma razão para isso ou são apenas alguns estilos de código de pessoas? …

2
Qual é o resultado de + = em C e C ++?
Eu tenho o seguinte código: #include <stdio.h> int main(int argc, char **argv) { int i = 0; (i+=10)+=10; printf("i = %d\n", i); return 0; } Se eu tentar compilá-lo como uma fonte C usando gcc, recebo um erro: error: lvalue required as left operand of assignment Mas se eu compilá-lo …
93 c++  c 

6
O que extern inline faz?
Eu entendo que inlinepor si só é uma sugestão para o compilador e, a seu critério, ele pode ou não embutir a função e também produzir código de objeto vinculável. Acho que static inlinefaz o mesmo (pode ou não embutir), mas não produzirá código de objeto vinculável quando embutido (já …

2
O que significa [=] em C ++?
Eu quero saber o que [=]faz? Aqui está um pequeno exemplo template <typename T> std::function<T (T)> makeConverter(T factor, T offset) { return [=] (T input) -> T { return (offset + input) * factor; }; } auto milesToKm = makeConverter(1.60936, 0.0); Como o código funcionaria em []vez de [=]? Eu …
93 c++  c++11  lambda 

9
Como você desativa os avisos de variáveis ​​não utilizadas provenientes do gcc no código de terceiros que não desejo editar?
Gostaria de saber que opção você passa para o compilador gcc para desligar os avisos de variáveis ​​não utilizadas. Estou recebendo erros do boost no windows e não quero mexer no código do boost: C:\boost_1_52_0/boost/system/error_code.hpp: At global scope: C:\boost_1_52_0/boost/system/error_code.hpp:214:36: error: 'boost::system::posix_category' defined but not used [-Werror=unused-variable] C:\boost_1_52_0/boost/system/error_code.hpp:215:36: error: 'boost::system::errno_ecat' defined …

14
Convertendo bool em texto em C ++
Talvez esta seja uma pergunta idiota, mas há alguma maneira de converter um valor booleano em uma string de forma que 1 se transforme em "verdadeiro" e 0 em "falso"? Eu poderia apenas usar uma instrução if, mas seria bom saber se existe uma maneira de fazer isso com a …
93 c++  string  boolean 

5
O uso de assert () é uma má prática em C ++?
Eu tendo a adicionar muitas asserções ao meu código C ++ para tornar a depuração mais fácil sem afetar o desempenho das compilações. Agora,assert é uma macro C pura projetada sem mecanismos C ++ em mente. Por outro lado std::logic_error, C ++ define , que deve ser lançado nos casos …


4
Parâmetros de modelo sem tipo
Eu entendo que o parâmetro de modelo sem tipo deve ser uma expressão integral constante. Alguém pode esclarecer o porquê disso? template <std::string temp> void foo() { // ... } error C2993: 'std::string' : illegal type for non-type template parameter 'temp'. Eu entendo o que é uma expressão integral constante. …
93 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.