В этом ответе я использовал _t
в конце типы, которые в лучшем случае закончились противоречиво. Это практика, которую я использую в своих текущих проектах.
typedef struct {
int x;
int y;
} point_t;
Предполагалось, что это будет соответствовать типам C из stddef.h
like size_t
или ptrdiff_t
. Однако, согласно некоторым комментариям в моих вопросах, _t
postfix зарезервирован для POSIX. Что я должен использовать вместо _t
? Или я _t
все равно должен продолжать использовать ?
Этот вопрос для C и C ++. Если у этих языков разные соглашения, смело отвечайте.
_t
) stackoverflow.com/a/228797/14065Ответы:
В сообществах C и C ++ нет единого мнения относительно типов именования.
Хотя
_t
суффикс действительно зарезервирован POSIX , некоторые будут рекомендовать использовать_t
суффикс и для ваших собственных типов, в то время как другие также будут категорически утверждать, что вы не должны испытывать судьбу, рискуя дублирующимися именами с POSIX.Альтернативные соглашения об именах предлагают использовать префикс для типов, таких как
C
илиT
.источник
Я нахожу суффиксы довольно некрасивыми и поэтому избегаю их
_t
. Хорошей альтернативой является использование заглавной буквы для начала имен типов, какPoint
в вашем примере выше.источник
Это зависит от тебя. Если нет конфликта с зарезервированными словами, вы готовы идти. Однако рассмотрим сценарий, когда вы работаете в компании, и несколько человек получают доступ к одной и той же кодовой базе, и ваш код попадает к человеку, который не знает о вашей привычке. Затем он / она может предположить, что это зарезервированный тип, особенно если ты пишешь что-то вроде point_t. Так что держите это проще, например, точка проще, чем point_t. И если вы хотите что-то добавить к нему, добавьте свои инициалы имени.
источник