Was beduetet __in usw. vor Variablendeklaration
-
Hallo !
Ich habe eine kurze Frage, wie der Titel schon sagt, frage ich mich, was diese __in usw. vor der Variablendeklaration bedeutet, wozu sind die gut, und wie nennt man diese ?? Ich habe schon Google und die MSDN Suche mit verschiedenen Eingaben gefüttert, aber ich finde einfach keine Antwort auf diese Frage.
-
Das nennt sich "SAL Annotations" und dient der sog. statischen Codeanalyse in den teureren Editionen von VS:
http://msdn2.microsoft.com/en-us/library/ms235402.aspx
http://blogs.msdn.com/michael_howard/archive/2006/05/19/602077.aspx
-
Ah also dann ist es eh uninteressant so lang ich mir keine teure VS IDE kaufe.
Vielen dank !!
-
Das ist durchaus auch so ganz nützlich. Du kannst daran direkt in der Headerdatei ablesen, wofür ein bestimmter Parameter gedacht ist (__in oder __out), ob er optional ist (*_opt) etc.
-
audacia schrieb:
Das nennt sich "SAL Annotations" und dient der sog. statischen Codeanalyse in den teureren Editionen von VS:
http://msdn2.microsoft.com/en-us/library/ms235402.aspx
http://blogs.msdn.com/michael_howard/archive/2006/05/19/602077.aspxDas wäre jetzt wirklich ein Argument für die Developer Version. Schade, dass die so extrem teurer ist.
-
Vielleicht ringt sich ein Konkurrent ja mal durch, das zumindest teilweise zu implementieren

Ansonsten kann man größtenteils auch mit Tools wie CodeGuard (bei C++Builder) behelfen, die Zeigergültigkeiten, Speicherzugriffe zur Laufzeit etc. prüfen. Auch wenn das natürlich nicht so schön und sicher wie eine statische Analyse ist.
-
Tip: besorgt euch das Vista SDK. Der Compiler der da mitkommt (VC 2005) kann static code analysis.
Stellt dazu bei euch im Studio einfach bloss den Binary-Suchpfad um (so dass der SDK Compiler genommen wird), und schreibt den Switch "/analyze" in den Projekteinstellungen dazu.