C/C++ arbeitet nicht mit "Befehlen". Wenn für dich alles ein Befehlt ist verstehst du die Zusammenhänge schwieriger
Für sowas gibt es Zeiger und Referenzen. Wenn du das mitten im Programm ändern willst nimmt man Zeiger. Referenzen kann man nur einmal beim Initialisieren zuweisen.
Man kann das auch für Funktions-Parameter verwenden und jeweils ein anderes Serial Objekt übergeben:
void setup ()
{
Serial.begin(9600);
println(Serial, "Test");
println(Serial, 100);
println(Serial, 10.5, 2);
}
void loop ()
{
}
template<typename... Types>
inline void println(Stream& stream, Types... args)
{
stream.println(args...);
}