¿Cómo debo marcar los tipos en los programas C y C ++?

12

En esta respuesta mía , utilicé _t al final de los tipos, que terminó como mucho polémico. Esta es la práctica que uso en mis proyectos actuales.

typedef struct {
    int x;
    int y;
} point_t;

Se pretendía que esto fuera coherente con los tipos C de stddef.h like size_t o ptrdiff_t . Sin embargo, de acuerdo con ciertos comentarios en mis preguntas, _t postfix parece estar reservado para POSIX. ¿Qué debo usar en lugar de _t ? ¿O debería seguir usando _t de todos modos?

Esta pregunta es para C y C ++. Si estos idiomas tienen convenciones diferentes, no dude en responder así.

    
pregunta Konrad Borowski 07.01.2014 - 07:34

3 respuestas

16

No hay consenso dentro de las comunidades C y C ++ con respecto a los tipos de nombres.

Aunque el sufijo _t es de hecho reservado por POSIX , algunos lo defenderán también usa el sufijo _t para tus propios tipos, mientras que otros argumentarán igualmente que no debes tentar al destino arriesgando nombres duplicados con POSIX.

Las convenciones de nomenclatura alternativas sugieren el uso de un prefijo para tipos, como C o T .

    
respondido por el Bart van Ingen Schenau 07.01.2014 - 12:44
16

Encuentro los sufijos bastante feos y así evito _t etc. Una buena alternativa es usar una letra mayúscula para comenzar los nombres de tipo, así que Point en tu ejemplo anterior.

    
respondido por el William Morris 07.01.2014 - 13:28
1

Depende de ti. A menos que haya un conflicto con las palabras reservadas, es bueno ir. Sin embargo, considere un escenario en el que está trabajando en una empresa y varias personas acceden al mismo código base, y su código llega a una persona que no está al tanto de su hábito. Él / ella puede asumir que es un tipo reservado, especialmente si Escribes algo como point_t. Así que, hazlo más simple, por ejemplo. punto es más simple que point_t. Y si desea agregarle algo, añada sus iniciales de nombre.

    
respondido por el kamran 07.01.2014 - 15:04

Lea otras preguntas en las etiquetas