Ich bin neu in C#. Ich habe schon versucht, diese mit out-Parametern in C#Out-Parameter in C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
class First
{
public void fun(out int m)
{
m *= 10;
Console.WriteLine("value of m = " + m);
}
}
class Program
{
static void Main(string[] args)
{
First f = new First();
int x = 30;
f.fun(out x);
}
}
aber ich erhalte einige Fehler wie "Verwendung von nicht zugeordneten out-Parameter 'm'" und
Der out-Parameter 'm' muss vor zugewiesen werden Kontrolle verlässt die aktuelle Methode.
Also, was ist der Sinn dieser Fehler und warum ist es obligatorisch, zuweisen ‚m‘, wenn ich bereits einen Wert x zugewiesen bin.
Du verwechselst 'Bereich führt zum Parameter mit' ref' Parameter eingeführt. 'fun()' hat keinen Zugriff auf den vorherigen Wert dessen, auf den 'm' zeigt, und kann daher nicht multiplizieren. Diese Unterscheidung ist beabsichtigt, Out-Parameter sollen Ihnen mehrere Rückgabewerte geben. Es ist, als ob Sie versuchen würden, eine Funktion zu erstellen, die den Wert der Variablen multipliziert, deren Ergebnis zugewiesen wird. – millimoose