variable _ in lua hat eine spezielle Bedeutung?
Ich bin ein Neuling auf lua /Fackel. Ich merke, dass die variable _ verwendet wird, eine Menge, besonders in Iteratoren. Beispiel:
for _, node in ipairs(protos.rnn.forwardnodes) do
a, b = whatever(a,b)
end
diese "variable naming convention' (sozusagen) ist in anderen Umständen, wie auch in:
local _,loss = optimizer(feval,params, optim_state)
Tut _ haben eine Besondere Bedeutung oder ist es nur noch eine variable Namen, unter den vielen möglichen Namen?
- Einige IDEs wird Ihnen eine Warnung, wenn Sie eine variable deklarieren und verwenden Sie es nicht, oder weisen Sie ihm einen neuen Wert, ohne über den vorherigen Wert. Achtung der herkömmliche Einsatz von
_
als Wegwerf-variable, Sie natürlich gar nicht tun, dass für_
auch wenn es nur eine gewöhnliche variable.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist in der Regel als eine " Wegwerf-variable. Es hat keine "realen" Besondere Bedeutung, sondern wird verwendet, um zu bestätigen, dass der angegebene Wert ist nicht wichtig.
Lesen Sie mehr hier (unter der Benennung Teil).
Den Einsatz von _ wird in der Regel für Werte zurückgegeben werden, die Sie nicht möchten, dass von einer Funktion. Was Sinn macht, es sieht aus wie ein leer. Der Grund, es ist allgemein verwendet, wenn der Iteration ist, weil die meisten Iteratoren return-Taste,Wert-Paaren, und Sie nur müssen Sie den Wert.
Jedoch, _ kann auch verwendet werden, für die genaue Gegenteil. Wenn Sie sich hinter einer variable, wie
_G
oder_VERSION
, es bedeutet, es ist wichtig und sollte nicht geändert werden.Und schließlich der doppelten Unterstrich. Ich habe immer nur verwendet diese für metamethods, wie
__index
oder__add
, so dass, wenn Sie eine Funktion oder API oder was auch immer, der überprüft, ob eine benutzerdefinierte metamethod, stellen Sie sicher, konsequent zu sein, und mit einem doppelten Unterstrich.Also in das Ende, es ist einfach eine Namenskonvention, und ist Total rechthaberisch und optional.