Я только что портировал большой проект из старой версии Visual С++ на VS2008 и замечаю, что представление класса смешивает кучу моих классов. Рассматривая представление решения, файлы заголовков, объявляющие эти классы, присутствуют, поэтому я ожидаю увидеть их в представлении класса. Любая причина, по которой определенные классы будут исключены, или есть способ обновить представление класса, чтобы включить все классы в решение?
Просмотр классов классов Visual Studio 2008
Ответ 1
Попробовал Ханса взглянуть на то, что было похоже на заголовочный файл с отсутствующим классом, и заметил следующее
myheader.h
#ifndef MYHEADER_INCLUDED
#define MYHEADER_INCLUDED
class MyClass
{
'
'
};
#endif
Теперь все после того, как #ifdef был выделен серым цветом в редакторе, который предположил, что среда IDE уже определена. Источник также содержит достаточное количество условного включения в файлы заголовков, например.
#ifndef MYHEADER_INCLUDED
#include "myheader.h"
#endif
Изменение заголовка на
myheader.h
#pragma once
class MyClass
{
'
'
};
похоже, разрешает проблему с представлением класса, хотя я не знаю, как это повлияет на время компиляции.
Изменить Только что закончил и сделал пересоздание, никаких значительных изменений во время компиляции.
Ответ 2
Вы пытались удалить .ncb и .pch, и все файлы .o, а затем полную перестройку? Я нахожу, что это часто устраняет мои проблемы с intellisense, и это может быть связано.