Warum verwendete Variable zum void verwenden

8

Ich schaue mir gerade die OpenCV-Implementierung von FAST an und stolperte über einige Variablen, die in void umgewandelt wurden. Ich verstehe, dass dies verwendet wird, um Lint / Compiler-Warnungen zum Schweigen zu bringen, wenn eine Variable nicht verwendet wird. In diesem Fall werden die Variablen verwendet. Es könnte mit SSE verwandt sein, da es nur in diesen Codeteilen passiert.

%Vor%

Spätere Verwendungen ( bearbeiten ):

%Vor%

Siehe auch: vollständige fast.cpp im OpenCV- Repository (der Code, den ich eingefügt habe, stammt aus Zeile 71)

Also, wofür ist es gut und warum nur für SSE-bezogene Variablen?

    
Mene 18.03.2014, 19:26
quelle

2 Antworten

3

Wenn Sie sich die Schuld für diese Zeilen ansehen, wurden sie in diesem Commit hinzugefügt, mit Commit-Meldung " Warnungen unter Windows ".

Sie könnten den Committer fragen, Ссылка , aber ich vermute, dass es nur auf einen Fehler in MSVC ankommt.

    
ecatmur 18.03.2014, 20:14
quelle
3

Obwohl es compilerabhängig ist, wird es normalerweise verwendet, um "unbenutzte variable" Nachrichten zu unterdrücken.

Ich bevorzuge das Makro UNUSED(var) , da es die Absicht deutlich zeigt und an verschiedene Compiler-Umgebungen angepasst werden kann.

    
Karoly Horvath 18.03.2014 19:28
quelle

Tags und Links