2016-07-12 7 views
1

So habe ich eine verschachtelte Tabelleungültige Sortierfunktion beim zweiten Aufruf?

t = { a={},b={},c={},d={}} 

..etc

Jedes Element von t einen Wert hat darin F(integer) (a.F, b.F etc)

Mit lua table.sort() auf t einmal mit meiner Art Funktion mit dem Namen:

local function sort(a,b) 
    return a.F < b.F 
end 

Der Aufruf der Sortierung ist in Ordnung, aber wenn sie erneut aufgerufen wird, wird ungültige Reihenfolge ausgelöst zum Sortieren.

Ich bin mir nicht sicher, warum das so ist und was ich tun muss, um zu beheben.

Info:

Die Werte und sortierten Elemente sind nicht nil (i assert() beforehand to make sure)

+1

Können Sie ein funktionierendes Beispiel schreiben? – pschulz

+0

gelöst, war es aufgrund einiger Verweis auf andere Elemente in Tabelle t und Änderungen an Werten in Tabelle t in der Sortierfunktion. Es hat nicht gefallen, den Tabelleninhalt innerhalb der Funktion zu ändern. –

Antwort

0

gelöst, war es auf andere Elemente in der Tabelle t und Modifikationen auf Werte in der Tabelle t in der Sortierfunktion bis zu einem gewissen Referenz durch . Es hat nicht gefallen, den Tabelleninhalt innerhalb der Funktion zu ändern.

Verwandte Themen