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

98
std :: string para flutuar ou dobrar

Estou tentando converter std::stringpara float/double. Eu tentei: std::string num = "0.6"; double temp = (double)atof(num.c_str()); Mas sempre retorna zero. Quaisquer outras

98
Devo herdar de std :: exception?

Eu vi pelo menos uma fonte confiável (uma classe C ++ que eu fiz) recomendar que as classes de exceção específicas do aplicativo em C ++ devem herdar de std::exception. Não estou certo sobre os benefícios dessa abordagem. Em C #, as razões para herdar de ApplicationExceptionsão claras: você obtém...

98
(Como) posso contar os itens em um enum?

Esta questão veio à minha mente, quando eu tinha algo como enum Folders {FA, FB, FC}; e queria criar uma matriz de contêineres para cada pasta: ContainerClass*m_containers[3]; .... m_containers[FA] = ...; // etc. (Usar mapas é muito mais elegante de usar: std::map<Folders,...

98
Como escrever base de log (2) em c / c ++

Existe alguma maneira de escrever a função de log (base 2)? A linguagem C tem 2 funções integradas - >> 1. logque é a base e. 2. log10base 10; Mas preciso da função log da base 2. Como calcular

98
C ++ Tupla vs Struct

Existe alguma diferença entre usar a std::tuplee somente dados struct? typedef std::tuple<int, double, bool> foo_t; struct bar_t { int id; double value; bool dirty; } Pelo que descobri online, descobri que existem duas diferenças principais: o structé mais legível, enquanto o...

98
Qual é a resposta correta para cout << a ++ << a ;?

Recentemente, em uma entrevista, houve o seguinte tipo de questão objetiva. int a = 0; cout << a++ << a; Respostas: uma. 10 b. 01 c. comportamento indefinido Respondi a opção b, ou seja, a saída seria "01". Mas, para minha surpresa, mais tarde, um entrevistador me disse que a...

98
como converter de int para char *?

A única maneira que sei é: #include <sstream> #include <string.h> using namespace std; int main() { int number=33; stringstream strs; strs << number; string temp_str = strs.str(); char* char_type = (char*) temp_str.c_str(); } Mas existe algum método com menos...