Ir para conteúdo
Fórum Script Brasil
  • 0

Duvidas básicas de otimização em c++


ded3

Pergunta

Eu comecei a estudar C++ recentemente e encontrei algumas dúvidas com relação ao que seria melhor usar em um código...

Duvida 1:

Qual é a diferença entre usar:

int FuncA() {
...
}
ou usar:
int FuncA(void) {
...
}
Duvida 2: Existe alguma diferença no peso do #define e no uso de const? Alguma diferença na aplicação de ambas? Duvida 3: É melhor usar:
using namespace std;

cout << "oi" << endl;
ou é melhor usar:
std::cout << "oi" << std::endl;
(foi só um exemplo de uso de std, mas a duvida mesmo é no geral, pra todas as funções que usem ele) Duvida 4: Gostaria de saber se exite alguma diferença no processamento de strings nesses 2 casos:
cout << string1 << string2 << endl;
E:
cout << string1 + string2 << endl;
Duvida 5: Gostaria de saber qual desses 2 códigos seria mais leve:
if(x != 100){
  if(x < 10) func;
  else if(x < 30) func2;
  else if(x < 80) func3;
  else func4;
}
Ou:
if(x == 100);
else if(x < 10) func;
else if(x < 30) func2;
else if(x < 80) func3;
else func4;
Duvida 6: Existe alguma diferença no peso da operação, quando os valores são mais altos? por exemplo:
x = x*900/1000;
E:
x = x*9/10;
Duvida 7: O uso de conversões pesa mais do que operações matemáticas a mais? por exemplo:
x = (int)(y/2. + z/5.);
Ou:
x = (5*y + 2*z)/10;
Qual desses dois seria melhor? Duvida 8: Existe alguma diferença no peso de uma multiplicação e de uma divisão no caso de double/floats? por exemplo:
x = (y/2. + z/5.);
Ou
x = 0.5*y + 0.2*z;

Duvida 9:

Qual tipo de variável é mais vantajoso usar? Por exemplo, temos um valor que não ultrapassa o valor máximo de um int16, mas eu estou usando um sistema de 32 bits. Uma vez eu li que se um processador de 32 bits roda um int16, ele faz todo o processo em int32 para depois converter em int16, tornando a execução mais lenta, isso realmente ocorre? nesse caso, seria mais vantajoso usar o int16 por usar menos memória, ou o int32 por ser executado mais rapidamente pelo processador?

Desculpe o tanto de perguntas, mas são dúvidas que eu tenho já há algum tempo x.x

Editado por ded3
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Acredito que estes códigos não resultam em diferenca nenhuma em questão de otimizacao... Provavelmente o desempenho será o mesmo, é mais questõa que preferencia ao programar(questao de gosto).

Muitos códigos são otimizados diretamente pelo compilador, e até mesmo pelo processador.

Espero ter ajudado

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...