Ограничить загрязнение пространства имен в заголовке C ++ - PullRequest
0 голосов
/ 28 февраля 2019

В нашей команде мы хотим ограничить практику добавления «использования пространства имен» в заголовок в глобальном масштабе, поскольку это не очень хорошая практика и часто приводит к конфликту имен и загрязнению пространства имен.

Есть ли способgcc, мы можем ограничить эту практику добавления использования пространства имен в заголовке во время компиляции?

Я имею в виду получить какое-то предупреждение, когда компилятор видит в глобальной области видимости в заголовке "использование пространства имен".

Спасибо

Ответы [ 2 ]

0 голосов
/ 28 февраля 2019

Просто добавлю это, так как является очень жизнеспособной альтернативой в этом конкретном случае:

Через 10 минут вы, вероятно, сможете использовать любой скриптЯзык по вашему выбору напишите что-то, что пересекает ваше исходное дерево и сканирует заголовочные файлы для «использования пространства имен».Запустите этот сценарий автоматически для своей «ночной сборки» и завершите сборку, если будет найдено такое использование.

0 голосов
/ 28 февраля 2019

Вы можете использовать clang-tidy вместе с сборкой Google, используя проверку пространства имен , на которую следует жаловаться, используя директивы.

...