Почему названия заглавных букв c ++ пишутся с заглавной буквы и с подчеркиванием?

Я заметил, что .h файлы имеют заглавные буквы и используют подчеркивание для защиты заголовков …. почему это так?

например взять «doThat.h»

защита заголовка будет:

#ifndef DO_THAT_H
#define DO_THAT_H

почему это так пишется с заглавной буквы? даже если в main.cpp вы только печатаете #include "doThat.h" использовать файл ?? Есть какая-то реальная причина программирования? почему бы просто не набрать:

#ifndef doThat.h
#define doThat.h

1

Решение

Определения препроцессора должны использовать допустимые идентификаторы. Точки не действительны в идентификаторах.

Существует также соглашение, согласно которому определения препроцессора (особенно макросы препроцессора) используют имена в верхнем регистре, чтобы отличать их от непроцессорных идентификаторов. (Однако это не жесткое правило; например, errno обычно это макрос, но он не в верхнем регистре.)

5

Другие решения

Это просто соглашение об именах, а не жесткое правило. Это не редкость, чтобы увидеть DOTHAT_H или же DOTHATH или же DoThatH вместо этого, например. Важно то, что #define используйте уникальный идентификатор, который не конфликтует с другими файлами. Немного Вариант имени вызывающего файла обычно используется.

2