?invisible
sagtWann verschwindet das von unsichtbare() zurückgegebene Objekt nicht mehr?
Return a (temporarily) invisible copy of an object.
Das klammert bedeutet, dass die Unsichtbarkeit nicht ewig dauern wird, aber ich kann nichts finden, dass, wenn es geht weg erklärt. Ich frage mich besonders über Konstrukte wie diese (von this old answer of mine):
printf <- function(...) invisible(print(sprintf(...)))
, wo der äußere invisible
wahrscheinlich unnötig ist (weil print
bereits markiert den Rückgabewert unsichtbar). withVisible()
meldet, dass der Rückgabewert dieser Funktion in beiden Fällen nicht sichtbar ist, aber ich weiß nicht, ob dies durch die Sprache oder die Art und Weise garantiert wird, wie sie in der aktuellen Implementierung funktioniert.
es sieht der C-Code einfach sein Argument zurückgibt. Also, wenn es temporär ist, kann es bedeuten, dass alles, was vom "unsichtbaren" Aufruf zurückkommt, nicht gedruckt wird, sondern etwas wie "printf" - function (...) + invisible (1); printf (1) 'wird immer noch' 1' drucken, während 'printf <- function (...) unsichtbar ist (1); printf (1) 'wont – jenesaisquoi