Анонимное пространство имен - это единственное, что не позволяет объявлению класса загрязнять глобальную область видимости. Очень полезно при определении класса в файле .cpp.

ользовалstatic ключевое слово долгое время для определения внутренней связи. Позже я переключился на стиль C ++, заключающийся в размещении локальных вещей в анонимных пространствах имен.

Однако теперь, когда я несколько лет работал с анонимными пространствами имен, я начинаю думать, чтоstatic с ключевым словом намного проще работать!

Общая проблема заключается в том, что у меня есть этот шаблон:

namespace {
    // ...five pages of code...
}  // namespace

Чтобы увидеть, имеет ли определенная функция внутреннюю или внешнюю связь, мне нужно много прокрутить, в отличие от старого стиля C, где я мог просто проверить, была ли функция / объектstatic перед ней.

Я знаю, что есть вещи, которые делают анонимные пространства именstatic не могу - скрыть typedefs - но лично мне это не очень интересно, во всяком случае.

Что вы думаете об этом? Является ли победа анонимных пространств имен настолько большой, что она гарантирует снижение читабельности? Или я не прав?

Ответы на вопрос(0)

Ваш ответ на вопрос