Solved

Can I jump to prior position on a CList ?

Posted on 2011-03-06
2
356 Views
Last Modified: 2012-05-11
Greetings,
I have a scenario where I have an outer look , where I iterate through information a result set of A CRecordset open operation and an inner loop, called multiple times per iteration of the outer loop, that also uses a sub-set of this information. In the current implementation I had a different CRecorset object in the function within the inner loop, performing database request for the sub-set of results it required.
 For a smart approach I want to perform only the outer query, stuff all the results in an object I can iterate on, and within the loop iterate through the same data set.
 However my worry is that after leaving the inner loop I want to have the iterator at the same position as when I entered it. Any suggestions? E.g. saving the POSITION object, returned in the GetNextPos and use the setAt funtion to put the iterator back into it's hold position?

Cheers,
r
0
Comment
Question by:rjorge
2 Comments
 
LVL 86

Accepted Solution

by:
jkr earned 500 total points
ID: 35046927
A POSITION is basically a 'CNode' with that being a
struct CNode
	{
		CNode* pNext;
		CNode* pPrev;
		TYPE data;
	};

Open in new window


So, if you store the POSITION you want to use further at a scope where is remains valid (i.e. outside both loop's bodies) you should be able to use it with 'CList::GetPrev()' to move to a prior position. That of course assumes the CList object is not altered during that process.
0
 

Author Closing Comment

by:rjorge
ID: 35047112
Quick and correct. Great info.
0

Featured Post

Salesforce Made Easy to Use

On-screen guidance at the moment of need enables you & your employees to focus on the core, you can now boost your adoption rates swiftly and simply with one easy tool.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
best sources to up-to-date in C++? 8 91
Safe conversion? 4 72
gdb doesn't stop on breakpoint 2 98
Why  my code (program) build with old compiler? 11 79
IntroductionThis article is the second in a three part article series on the Visual Studio 2008 Debugger.  It provides tips in setting and using breakpoints. If not familiar with this debugger, you can find a basic introduction in the EE article loc…
For most people, the WrapPanel seems like a magic when they switch from WinForms to WPF. Most of us will think that the code that is used to write a control like that would be difficult. However, most of the work is done by the WPF engine, and the W…
The viewer will learn how to user default arguments when defining functions. This method of defining functions will be contrasted with the non-default-argument of defining functions.
The viewer will learn how to clear a vector as well as how to detect empty vectors in C++.

820 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question