Ich habe eine Frage: ist es möglich, den Eintrag der Funktion zu bearbeiten, ohne einen Wert zurück zu geben, und diese Einträge werden bearbeitet?Bearbeiten von injizierten Parameter ohne Rückgabewert C#
Idee:
void AddGreeting(string value)
{
value = "Hi " +value;
}
und diese Funktion wie folgt aufrufen:
string test = "John";
AddGreeting(test);
//and here the test will be "Hi John"
ist das möglich? und wie es geht, wenn es ist?
void AddGreeting(ref string value){}
und dies würde tun, was Sie wollen:
void AddGreeting(ref string value)
{
value = "Hi " +value;
}
string test = "John";
AddGreeting(ref test);
Alternativ können Sie einen String zurückgeben, die ich ordentlicheres in Betracht ziehen würden und
[Ref - C# -Referenz] (https://msdn.microsoft.com/en-us/library/14akc2c7.aspx) – Igor
Beachten Sie, dass als Strings unveränderlich sind Sie nicht * tatsächlich * Wert ändern , eher assig ning es zu einem * neuen * String. – BradleyDotNET