Ich schreibe eine C ++ - Anwendung in Visual Studio 2008. Es hat viele definierte Strukturen in mehreren Header-Dateien, wie zum Beispiel:
%Vor%In einer Quelldatei werden diese definierten Strukturen als solche verwendet:
%Vor% Obwohl es erfolgreich mit 0 Fehlern und 0 Warnungen kompiliert wurde, gibt es manchmal einen Fehler, wenn ich mit der rechten Maustaste auf einen benutzerdefinierten Datentyp klicke (wie in MyFunc
):
Das Symbol 'myStruct_t' ist nicht definiert.
Dann klicke ich auf OK, um das Dialogfeld zu schließen, und drücke Strg + Alt + F7 , um die Lösung neu zu erstellen. Es wird ohne Fehler oder Warnungen erstellt, daher weiß ich, dass es beim Kompilieren die Definition von myStruct_t
findet, aber es kann nicht gefunden werden, wenn ich versuche, die Funktion Zur Definition zu verwenden. Die einzige Sache, die mir auffällt, ist, dass diese Anwendung viele definierte Strukturen hat, Single-Byte-Alignment, aber das sollte keinen Unterschied machen. Weiß jemand, wie man das repariert?
Schließen Sie Ihre Lösung, und löschen Sie dann die * .sdf-Datei. Wenn Sie Ihre Lösung erneut öffnen, wird Intellisense gezwungen sein, seine Datenbank neu zu erstellen, und das könnte Ihr Problem lösen.
Bearbeiten: Fehler behoben
Bearbeiten 2: Wenn Sie Visual Studio 2008 oder älter verwenden, sollten Sie alle * .ncb-Dateien löschen.
Tags und Links c++ visual-studio-2008