C# - Erstellen einer 'var' array eine Feste Größe?

Ich versuche zu erstellen, die ein array vom Typ var mit einer festen Länge. Ich verwende es in eine var LinkedList-Klasse, die ich erstellt. Ich weiß die Größe des Arrays, die ich erzeugen wollte, nicht wissen, was ist die richtige syntax?

Hier der code:

public dynamic ToArray()
{
    int counter = 0;

    if (this.head == null)
        return null;
    else
        counter = 1;

    ListEntry i = this.head;
    while (i.Next != null)
    {
        counter++;
        i = i.Next;
    }

    var array = new[counter];

    i = this.head;
    for (int j = 0; j < array.Length; j++)
    {
        array[j] = i.Data;
        i = i.Next;
    }

    return array;
}

Dieser Teil funktioniert nicht:

var array = new[counter];

Hilfe?

EDIT: Danke für den input allerseits. Ich muss zugeben, dass ich nicht sehr kenntnisreich über die Terminologie der syntaktische Zucker, wenn ich gebucht. Es macht jetzt mehr Sinn.

Die Idee hinter diesem Beitrag war die Erstellung einer dynamischen verketteten Liste-Klasse, die konnte, Griff grundlegenden Wert-Typen.

  • Sie haben nicht gesagt, welche Art von array, das Sie wollen. Wenn Sie var array = new string[counter] oder sowas, es wird in Ordnung sein.
  • Es gibt keine solche Sache wie eine "Art var", es sei denn, dies ist ein benutzerdefinierter Typ definiert (das wäre eine verrückte schlechte Idee).
  • Ich glaube, er verkennt var (wegen der Aussage: "erstellen Sie ein array vom Typ var")...
  • Ah, stimmt - ich hatte übersehen, dass bit.
  • Irgendeinem Grund Sie nicht mit der LinkedList<T> das ist ein Teil des Rahmens? (und das hat ToArray() via IEnumberable)
  • und ReedCopsey ich muss zugeben, dass ich nicht haben ein sehr gutes Verständnis von var bedeutete und die Verwendung von syntaktischen Zucker in C#. Ich habe versucht, erstellen Sie eine vielseitige LinkedList-Klasse für verschiedene Arten. Vielen Dank für Ihre Eingabe.
  • Ich habe diese Klasse als Teil einer Aufgabe in der Schule. Es ist viel einfacher und einfach zu bedienen. Und ich bin mir nicht ganz sicher, wie die LInkedList<T> class richtig. Ich habe versucht, zu lernen es zu benutzen, war aber nicht sehr erfolgreich.

InformationsquelleAutor OYORF | 2014-02-24
Schreibe einen Kommentar