Mudança de paradigma

Hoje, lendo uma mensagem da QT-Interest foi repassado um link para um artigo no site de Herb Sutter, Guru Of The Week, explicado as razões pelas quais é desnecessário checar por uma falha do “new” na maioria dos casos.
Embora seja um artigo interessante ele tem uma pequena falha ao afirmar que a alocação de memória no Linux sempre tem sucesso. A alocação de memória no Linux pode falhar se você tentar alocar uma quantidade de memória que for igual ou maior a quantidade de memória disponível menos a quantidade de memória usada pelo kernel para mapear a memória do processo.
Embora eu concorde com o autor de que a checagem no new é, certas vezes desnecessária, é importante checar quando você está tentando alocar uma quantidade razoável de memória, já que isso pode lhe permitir alocar uma quantidade menor ou liberar alguns recursos e seguir adiante.

Navegando pelas tags XML usando a QT

Uma dica que, talvez, seja simples para os iniciados na QT, mas que me fez perder algum tempo raciocinando a respeito da solução …

O problema: navegar entre itens irmãos em um arquivo Xml, usando um objeto QDomElement. Por exemplo, você tem um arquivo Xml parecido com isto:

Continue reading “Navegando pelas tags XML usando a QT”

Verificando a senha do usuário no sistema

Bem diz o ditado que a necessidade é a mãe da invenção do conhecimento … Hoje, precisei fazer um programinha que, fornecido um usuário e senha, este retornava “OK.” se a senha estivesse correta ou “ERR.” caso ela estivesse errada (semelhante ao ncsa_auth, porém autenticando no shadow ao invés de um arquivo próprio). Para isso usei a funcão crypt(3). Como ela é um pouco “estranha” para usar e não contém nenhum exemplo decente, vou demonstrar rápidamente a sua utilização

Continue reading “Verificando a senha do usuário no sistema”

Usando a QT OpenSource no Visual Studio

Embora eu não programe com muita frequência no Windows, quando o faço prefiro usar o Visual Studio do que as outras alternativas disponíveis. Além de ser um ambiente mais confortável para programar, o Visual Studio conta com algumas caracteristicas bem interessantes, além de estar disponível gratuitamente no site da Microsoft.

O fato de a QT Open Source somente suportar o Mingw me deixou um pouco frustado até que eu topei com um port da Qt para Windows que resolvia exatamente esse problema. Entretanto, o site oficial do projeto somente detalha os procedimentos para compilar e instalar a versão 3. A página de downloads do projeto, porém, contém o patch para a versão 4. Uma vez que você tenha baixado e descompactado os fontes, será necessário aplicar o patch e recompilar a QT. Em breve, detalho o procedimento.