30.12.2016, 13:34
♥ Introduзгo
- Muitos de vocкs jб devem ter visto a declaraзгo de uma variбvel usando static e feito as seguintes perguntas. "Oque isso faz ?", "Qual a diferenзa de static para new?", "Й realmente mais rбpido usar static ao invйs de new?". Eu jб tive essas dъvidas, e vou ajudar vocк que tem essas dъvidas hoje.
-
PHP код:
/*
Pergunta: "Й realmente mais rбpido usar static ao invйs de new?"
Resposta: Pode atй ser, mas й uma via de mгos duplas.
*/
Quando declaramos uma variбvel static ela nгo vai ser destruнda quando a chave for fechada.
PHP код:static i;
for(i; i < 100; ++i)
{
// ...
}
Quando o bloco de cуdigo acima for chamado novamente, a variбvel vai iniciar contendo o valor 100, isso pq ela nгo foi destruнda jб que foi definida como static, mesmo com o fechamento das chaves.
Como a variбvel nгo vai precisar ser recriada, isso vai torna-lб um pouco mais veloz, jб que vai pular uma pequena etapa de alocaзгo.
-
PHP код:
/*
Pergunta: "Entгo usar static seria a melhor opзгo?"
Resposta: Nгo necessariamente, e vou explicar o pq.
*/
PHP код:// static
{
static i; // O programa aloca um valor X de memуria no sistema na primeira vez que б variбvel й criada.
for(i; i < 100; ++i)
{
//...
}
// Como a variбvel nгo vai ser deletada aqui, a memуria continua alocada.
}
PHP код:// new
{
new i; // O programa aloca um valor de memуria X.
for(i; i < 100; ++i)
{
//...
}
// A memуria usada vai ser devolvida para o sistema e a variбvel consequentemente deletada.
}
Vocк pode sim usar static quando quiser, mas lembre-se de que a memуria (RAM) do computador nгo й infinita. Vocк deve usar com sabedoria.
-
♪ Foi uma explicaзгo bem simples, mas procurei ser bem objetivo e claro.
♪ Nгo procurei escrever de forma muito formal e provavelmente haverб erros de escrita, mas os que forem reportados vou corrigir.
♪ Qualquer dъvida estarei respondendo.