Em esta resposta da mina , eu usei _t
no final de tipos, que terminou na melhor das hipóteses, controversa. Essa é a prática que uso nos meus projetos atuais.
typedef struct {
int x;
int y;
} point_t;
O objetivo era ser consistente com os tipos C de stddef.h
like size_t
ou ptrdiff_t
. No entanto, de acordo com certos comentários nas minhas perguntas, o _t
postfix parece estar reservado para o POSIX. O que devo usar em vez de _t
? Ou devo continuar usando _t
assim mesmo?
Esta pergunta é para C e C ++. Se esses idiomas tiverem convenções diferentes, fique à vontade para responder.
_t
) stackoverflow.com/a/228797/14065Respostas:
Não há consenso nas comunidades C e C ++ em relação aos tipos de nomeação.
Embora o
_t
sufixo seja de fato reservado pelo POSIX , alguns defenderão o uso do_t
sufixo para seus próprios tipos, enquanto outros argumentarão igualmente que você não deve tentar o destino, arriscando nomes duplicados com o POSIX.Convenções de nomenclatura alternativas sugerem o uso de um prefixo para tipos como
C
ouT
.fonte
Acho os sufixos bastante feios e, portanto, evito
_t
etc. Uma boa alternativa é usar uma letra maiúscula para iniciar nomes de tipos, comoPoint
no exemplo acima.fonte
Depende de você. A menos que haja um conflito com as palavras reservadas que você deve seguir. No entanto, considere um cenário em que você está trabalhando em uma empresa e várias pessoas estão acessando a mesma base de código, e seu código chega a uma pessoa que não está ciente de seu hábito. Ele pode assumir que é um tipo reservado, especialmente se você escreve algo como point_t. Portanto, mantenha-o mais simples, por exemplo, point é mais simples que point_t. E se você quiser acrescentar algo a ele, acrescente o nome das iniciais.
fonte