Скажем, у меня есть два разных файла cpp. Оба объявляют классы с одним и тем же именем, но, возможно, с совершенно другой структурой (или, возможно, с той же структурой, с другой реализацией). Классы не отображаются в файлах заголовков. (В качестве примера предположим, что это классы узлов для разных классов списков.)
Я видел конфликт этих классов. Ожидается ли это стандартом? Какие есть решения этой проблемы?
ОБНОВЛЕНИЕ:
Как подсказывают ответы / комментарии, я искал анонимные пространства имен.