000
10.06.2017, 18:36 Uhr
C-Laie
|
Hallo C++ - Esperten!
Unter
http://sortierkino.bplaced.net/Benchmarking.zip
biete ich ein kleines C++ - Projekt an, das mit Visual Studio 2005 problemlos compiliert und auch ausgeführt wird. Um dieses Projekt geht es.
Ich muß im Überwachungsfenster des Debuggers des Visual Studios 2005 nur "init_values" und/oder "values" eingeben, automatisch kann ich beim Debuggen in der Main-Prozedur daraufhin den Vektor mit der richtigen Länge (3 Elemente) aufklappen, die Werte erscheinen.
Wenn ich jedoch in die Sortierprozedur
C++: |
gfx::timsort(values.begin(), values.end(), std::less<int>());
|
eintauche, gehen in der aufgerufenen direkt untergeordneten, hineingetauchten Sortierprozedur
C++: |
inline void timsort(RandomAccessIterator const first, RandomAccessIterator const last, LessFunction compare) {TimSort<RandomAccessIterator, LessFunction>::sort(first, last, compare);}
|
die Debugger-Anzeigeprobleme los. "init_values" und "values" sind nicht mehr verfügbar (verständlich). Doch wie an den Inhalt des Vektors gelangen? Gebe ich "first" in die Liste der überwachten Ausdrücke ein, gelange ich über eine verschachtelte Struktur über "_Myptr" nur an den ersten Wert des Arrays. Nun habe ich mir bei ähnlichen Datenstrukturen (einfachen Arrays?) teilweise so zu helfen gewußt:
,
usw., doch das führt hier leider nicht zum Erfolg.
Mit
,
usw. funktioniert es auch nicht (nur beim 1. Wert, also bei frist[0]).
Kurzum, ist es irgendwie möglich, die Nachfolgewerte von "first", also das Array bzw. den Vektor vom Debugger zu erfahren?
Danke für Eure Geduld und Gruß
C-Laie Dieser Post wurde am 10.06.2017 um 18:38 Uhr von C-Laie editiert. |