Ontem estava programando e tive a necessidade de gerar uma sequencia de numeros aleatorios. Logo pensei no srand ou entao em criar minha propria funcao para isso. Para nao re-inventar a roda resolvi dar uma pesquisada sobre a existencia da funcao rand para Symbian e a encontrei na biblioteca de funcoes matematicas E32Math.h (inclusive vale a pena checar o documento sobre as funcoes dessa biblioteca Link aqui!), de fato encontrei outra funcao rand, na verdade as dos padroes C , mas preferi fazer uso da biblioteca matematica.Para quem ja utilizou essa funcao no C/C++ sabe que a melhor forma de se gerar um numero aleatorio e baseado na hora do sistema, em Symbian nao sera diferente. Iremos utilizar a classe TTime para pegar a hora do sistema, essa hora sera convertida para um inteiro64 e entao passada como argumento na funcao Math::Rand(TInt64& aSeed); Para gerar varios numeros aleatorios basta fazer varias chamadas a essa funcao e passando como argumento sempre o mesmo Seed. Voce nao deve mudar isto! Vamos ao exemplo:== MinhaApliacacaoAppView.h ==class CMinhaAplicacaoAppView : public CCoeControl{ private: //inteiro que sera utilizado para gerar os numeros aleatorios TInt64 iSeed; public: TInt GerarNumeroAleatorio();};== MinhaApliacacaoAppView.cpp==#include "MinhaApliacacaoAppView.h"#include E32Math.h //(OBS: adicione < > entre E32Math.h , o blog nao me permite fazer isto) void CMinhaApliacaoAppView::ConstructL(){ //instancia da classe TTime TTime tempo; //Recebendo a hora do sistema tempo.HomeTime(); //Convertendo para inteiro iSeed = tempo.Int64();}TInt CMinhaApliacacaoAppView::GerarNumeroAleatorio(){ //Gerando numero aleatorio de 0 a 100 TInt numeroAleatorio = Math::Rand(iSeed)%101; return numeroAleatorio;}Ehhhhhh, ok esta sem identacao mas e que nao existe um padrao para postar codigo de programacao aqui! (pelo menos nao que eu conheca) Bem, seria meio redundante eu postar os mesmos artigos que ja postei na Nokia Wiki aqui. Entao para evitar isto e para criar o costume de se utilizar a Wiki resolvi fazer algumas referencias aqui a artigos encontrados la. Como o sistema de busca dele nao e um dos melhores as vezes voce nao encontra tudo que procura, talvez isso possa ajudar.O post de hoje sera em relacao a gerencia de memoria e recursos. Quando se programa para um dispositivo que possui tantos recursos limitados como um celular e preciso ter cuidado para nao disperdicar nada. A um tempo atras os celulares eram reduzidos apenas a capacidade de realizar e receber chamadas. Hoje celulares como o N93, N95, N800 apresentam recursos como aceleracao 3D e processadores mais robustos como o ARM11 que opera a 300MHZ mas mesmo assim ainda sao muito limitados.Comecando por este artigo onde e arbodado os conceitos basicos de stack , heap, excecoes (abandonos ou leaves em Symbian), pilha de limpeza entre outros. Gostaria de dar enfase para a construcao em duas fases e para pilha de limpeza.Pilha de limpeza e Construcao em duas fases sao melhores abordados nesses links.Para finalizar, algumas regras na gestao de recursos que procuram minimizar estes desperdicios podem ser encontras neste link Ao ocorrer um erro durante a execucao de uma aplicacao e exibido o porque deste erro ter acontecido. Podemos chamar isto de "Codigos de erros" e conhece-los e importante para soluciona-los. Escrevi este artigo para o