Visual Studio 2010 #include Automatisch verwalten

Marius Heil

Erfahrenes Mitglied
Hallo,

für ein Projekt bin ich gerade dabei mich in C / C++ einzulernen und muss jetzt auf Visual Studio anstatt auf - wie bisher - Eclipse setzen. Immerhin gibts das als Student kostenlos.
Con Eclipse war ich es bisher immer so gewohn, dass die import Anweisungen bei Java automatisch hinzugefügt wurden sobald ich eine Klasse benutzt habe.
Visual Studio scheint in der Hinsicht gar nichts zu machen. Was muss ich tun, damit ich die #include Zeilen nicht von Hand schreiben muss? Das wäre ein erheblicher Aufwand, weil die Dateien in zig Ordnern verteilt sind und ich meist auch nicht weiß in welcher Datei welche Funktion ist.
Interessanterweise kann ich mit F12 die Funktion verfolgen und sie wird in der richtigen Datei gefunden, da muss es doch eine Möglichkeit geben die #include Zeile automatisch schreiben zu lassen, oder?

Schöne Grüße
 
Hi

nicht das ich wüsste.

Das Funtkionen in bereits inkludierten Dateien gefunden werden, liegt einfach daran, dass die im Bedarfsfall durchsucht werden. VS kann aber nicht im Voraus jede .h-Datei auf deiner Festplatte überprüfen und indizieren. Performancekatastrophe...

Mit der Zeit bekommt man Übung darin, die richtige .h-Datei auswenig zu wissen :)

Gruß
 
Visual Studio bietet die Möglichkeit Add-Ins zu schreiben. Du könntest ein kleines Tool schreiben, welches häufig verwendete Packete (zum Beispiel Sockets, I/O, WMI, ...) verwaltet und dann auch entsprechend die #includes erledigt. Wäre das allenfalls was?
 
Das hätte ich nicht gedacht, dass man so eine wichtige Funktion ausgelassen hat. Mit Visual Assist X hat man scheinbar immerhin die Möglichkeit eine Datei zu includen wenn man über ne Funktion geht die unbekannt ist.
Ein Performancekiller wäre das nicht. Visual studio müsste lediglich die headerdateien im includepfad durchgehen und wenn es zu viel wird eventuell einmal ein Index erstellen und den immer auf dem aktuellen Stand halten. Eclipse macht in der Hinsicht eine super Figur, auch was die Autocompletion, Snippets und Refactoring, etc angeht.

Danke euch beiden!
Ein Addin zu entwickeln lohnt sich für mich wohl für mein Projekt erstmal nicht.
 
Na ja, man kann nicht wirklich sagen, dass das eine wichtige Funktion in C++ ist. In Java kann ich das bestätigen, da bin ich auch sehr froh, wenn das so funktioniert, aber in C++ nicht wirklich. Meine Includepfade haben insgesamt knapp 2500 Dateien das gibt hunderttausende von Funktionen und Objekten. Das alles in die Suche einzubeziehen wäre etwas überdimensioniert bedenkt man auch, dass ich momentan nicht sehr viele SDKs aktiv habe. Und es ist ja in der Regel auch so, dass man nicht eine Funktion kennt aber ihren Header noch nie gesehen hat. Für die Ausnahme der Regel bietet einem dann in der Regel Google in Sekundenschnelle Hilfe.

Und zum Thema Addin:
Bei mir entstehen Projekte meist aus Projekten heraus :D
 
Bei Java und C# kann immerhin im Binärformat gesucht werden, deswegen gehts vergleichsweise schnell.
Das ganze ist vom Prinzip her schon anders aufgebaut wie C/C++.
Bei C/C++ müsste jede Datei zuerst geparst werden.

Zur Onlinedoku: Natürlich gibt es die. Nicht nur eine.
Für Windows findet man zB. alles in der MSDN.
 

Neue Beiträge

Zurück