В Visual Studio 2008 отсутствует представление классов - PullRequest
2 голосов
/ 02 февраля 2011

Я только что портировал большой проект из более старой версии Visual C ++ в VS2008 и заметил, что представление классов мешает куче моих классов. Глядя на представление решения, присутствуют заголовочные файлы, объявляющие эти классы, поэтому я ожидаю увидеть их в представлении классов. Любая причина, по которой определенные классы будут исключены, или есть ли способ обновить представление классов, чтобы включить все классы в решение?

Ответы [ 2 ]

5 голосов
/ 02 февраля 2011

Вы пытались удалить файлы .ncb и .pch, а также все файлы .o, а затем выполнить полную перестройку? Я обнаружил, что это часто исправляет мои проблемы с интеллигентностью, и это может быть связано.

4 голосов
/ 02 февраля 2011

Попробовал предложение Ханса посмотреть, что отличает файл заголовка с отсутствующим классом, и заметил следующее

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 
{ 
'
'
};

, кажется, решает проблему представления класса, хотя я не знаю, как это повлияет на время компиляции.

Редактировать Только что закончил и сделал перестроение, без существенных изменений во времени компиляции.

...