Я работал с VS19 (на Win 10) над моим проектом C ++, в то время как внезапно каждая ссылка на пространство имен подчеркивалась сообщением Namespace X has no member Y
. Поведение очень противоречиво: у
- std ссылок внутри моего пространства имен перед моим пространством имен стоит перед ними, так что, например, std :: vector фактически ищется в
MyNamespace::std::vector
(который я могу смягчить использование extra :: впереди, но не разрешает неправильные ссылки в других местах + это явно ненужно в обычном случае) - Ссылки на мое пространство имен вне моего пространства имен не находят ссылочные классы, но если я добавляю имя пространства имен перед он находит его еще раз (например,
MyNamespace::Mynamespace::MyClass
) - Некоторые ссылочные классы из пространства имен даже рассматриваются как классы, и я могу щелкнуть и go в классе, но он все равно подчеркнут с ошибкой
- Я получаю кучу ошибок типа ошибок в различных типах ситуаций, ссылаясь на экземпляры классов из своего пользовательского пространства имен (но, как ни странно, не каждый раз)
Я пытался (в соответствии с различными советами здесь, в стеке и на inte rnet):
- Отменить код изменения, которые могли бы вызвать его.
- Перезапустить VS.
- Очистить и перестроить решение.
- Удалить папку ipch, а также .suo.
Самое странное, что это только что произошло, но опять же, не впервые VS потерпел неудачу без веской причины.