Ausbeute in VB.NET

C# hat das Stichwort genannt Rendite. VB.NET fehlt dieses Schlüsselwort. Wie haben sich die Visual-Basic-Programmierer bekommen, um den Mangel von diesem Schlagwort? Tun Sie, implementieren Sie eigene iterator-Klasse? Oder wollen Sie versuchen, code zu vermeiden, dass ein iterator?

Den Rendite Schlüsselwort zwingt den compiler, einige Codierung zu tun hinter den kulissen. Die Implementierung von Iteratoren in C# und seine Folgen (Teil 1) ist ein gutes Beispiel.

Kommentar zu dem Problem
"VB.NET fehlt dieses Schlüsselwort." - jetzt nicht mehr. Für alle Googler suchen von dieser Seite, schauen Sie sich die Microsoft Async-framework. msdn.microsoft.com/en-us/vstudio/gg316360 und msdn.microsoft.com/en-us/vstudio/gg497937 Kommentarautor: mattmc3
@mattmc3: beachten Sie, dass erfordert, 2012, und funktioniert nicht in VS.2010 Kommentarautor: jmoreno
@mattmc3: das Async-framework (dein Erster link) scheint ein schwereres (und komplexere) Lösung als Ertrag (dein zweiter link)? Nicht, dass es darauf ankommt, da die Ausbeute zeigte sich in VB in der gleichen Zeit. Die wollen nur wissen, die ins und outs der verschiedenen Ansätze. msdn.microsoft.com/en-us/magazine/hh456402.aspx beschreibt Async/Await. MIT erwarten ist einfach genug. Aber die Umsetzung die andere Seite, aus welchen Quellen der Strom der Objekte, sieht aus wie eine Menge mehr Arbeit, als einfach zu sagen "Ausbeute". Kommentarautor: ToolmakerSteve
FYI, in VS2010 ich war in der Lage, um verwenden von Linq für bestimmte Situationen zu vermeiden, die Schaffung große zwischen Listen. Where und Select. Ex: Dim zsEnum Als IEnumerable(Of Double) = (From p In Punkte, in Denen p.Y > 0 Select p.Z), Für Jedes z Als Double In zsEnum .... Da Linq schafft ein IEnumerable statt einer konkreten Liste, die oben nicht verbrauchen erhebliche zusätzliche Speicher. Wichtig für die riesige Liste, in 32-bit .Net 3.5 Prozess, um zu vermeiden Zersplitterung der Erinnerung weiter. Kommentarautor: ToolmakerSteve

InformationsquelleAutor der Frage MagicKat | 2008-09-18

Schreibe einen Kommentar