Mapy kodu dla projektów C++
Jeśli chcesz utworzyć bardziej kompletne mapy dla projektów języka C++, ustaw opcję kompilatora informacji przeglądania (/FR) dla tych projektów. W przeciwnym razie pojawi się komunikat i monit o ustawienie tej opcji. Jeśli wybierzesz przycisk OK, spowoduje to ustawienie opcji tylko dla bieżącej mapy. Możesz ukryć komunikat dla wszystkich późniejszych map.
Po otwarciu rozwiązania, które zawiera projekty Visual C++, aktualizacja bazy danych w technologii IntelliSense może zająć trochę czasu. W tym czasie może nie być możliwe utworzenie map kodu dla plików nagłówka (h lub #include
) do momentu zakończenia aktualizacji bazy danych IntelliSense. Można monitorować postęp uaktualnienia na pasku stanu programu Visual Studio.
Aby wyświetlić zależności między wszystkimi plikami źródłowymi i plikami nagłówków w rozwiązaniu, wybierz pozycję Architektura>Generuj graf dołączania plików.
Aby wyświetlić zależności między aktualnie otwartym plikiem i powiązanymi plikami źródłowymi i plikami nagłówka, otwórz plik źródłowy lub plik nagłówkowy. Otwórz menu skrótów do pliku w dowolnym miejscu w pliku. Wybierz pozycję Generuj graf dołączania plików.
Rozwiązywanie problemów z mapami kodu dla kodu C i C++
Te elementy nie są obsługiwane w kodzie C i C++:
Typy podstawowe nie są wyświetlane na mapach zawierających hierarchię nadrzędną.
Większość elementów menu Pokaż nie jest dostępna dla kodu C i C++.
Te problemy mogą wystąpić podczas tworzenia map kodu dla kodu C i C++:
Problem | Możliwa przyczyna | Rozwiązanie |
---|---|---|
Nie można wygenerować mapy kodu. | Żadne projekty w rozwiązaniu nie zostały pomyślnie skompilowane. | Napraw błędy kompilacji, które wystąpiły, a następnie ponownie wygeneruj mapę. |
Program Visual Studio przestaje odpowiadać podczas próby wygenerowania mapy kodu z menu Architektura . | Plik bazy danych programu (.pdb) może być uszkodzony. Plik .pdb przechowuje informacje debugowania, takie jak typ, metoda i informacje o pliku źródłowym. |
Kompiluj rozwiązanie ponownie, a następnie spróbuj jeszcze raz. |
Niektóre ustawienia dla bazy danych przeglądania IntelliSense są wyłączone. | Niektóre ustawienia funkcji IntelliSense mogą być wyłączone w oknie dialogowym Opcje programu Visual Studio. | Włącz te ustawienia. Zobacz Opcje, Edytor tekstu, C/C++, Zaawansowane. |
Komunikat Nieznane metody jest wyświetlany w węźle metody. Ten problem występuje, ponieważ nie można rozpoznać nazwy metody. |
Plik binarny może nie mieć podstawowej tabeli relokacji. | Włącz opcję /FIXED:NO w konsolidatorze. |
Plik bazy danych programu (.pdb) może nie być skompilowany. Plik .pdb przechowuje informacje debugowania, takie jak typ, metoda i informacje o pliku źródłowym. |
Włącz opcję /DEBUG w konsolidatorze. | |
Nie można otworzyć lub znaleźć pliku .pdb w oczekiwanych lokalizacjach. | Upewnij się, że plik .pdb istnieje w oczekiwanych lokalizacjach. | |
Informacje o debugowaniu pochodzą z pliku .pdb. | Jeśli /PDBSTRIPPED opcja została użyta w konsolidatorze, dołącz kompletny plik .pdb zamiast. | |
Obiekt wywołujący nie jest funkcją i jest albo osadzony w pliku binarnym, albo stanowi wskaźnik w sekcji danych. | Gdy rozmówca jest thunk, spróbuj użyć _declspec(dllimport) , aby uniknąć thunk. |