Const und Value sind quasi gleicharbeitend mit dem Unterschied das Const nicht geändert werden darf.
In beiden Fällen wird ein Variable (bereits im Compiler generiert) vor der Übergabe gefüllt.
Options(*trim) ist ganz nett sollte aber nicht grundsätzlich verwendet werden:
a) zusätzliche Laufzeit (@D*B: ja im Nanobereich)
b) kommt halt auf die Anwendung an
Leerzeichen (vor allem am Anfang) sind schon manchmal erforderlich.
Was die Performance angeht so sollte die Runtime so intelligent sein nur die benötigte Länge zu übertragen und nicht immer mit Leerzeichen auffüllen.
Aber das bleibt auszuprobieren.