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

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

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

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

#ifndef DO_THAT_H
#define DO_THAT_H

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

#ifndef doThat.h
#define doThat.h

2 ответа

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

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

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

Другие вопросы по тегам