Click here to Skip to main content
15,922,650 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: What to do to get rid from this error "Dll Function call crashed"? Pin
Daed17-Jan-02 2:51
Daed17-Jan-02 2:51 
GeneralRe: What to do to get rid from this error "Dll Function call crashed"? Pin
Joaquín M López Muñoz17-Jan-02 3:09
Joaquín M López Muñoz17-Jan-02 3:09 
Generalabout Flat-ToolBar Pin
16-Jan-02 4:09
suss16-Jan-02 4:09 
GeneralSelecting Printer in CWebBrowser2 Ctrl Pin
jerry0davis16-Jan-02 4:08
jerry0davis16-Jan-02 4:08 
GeneralwaveOutGetNumDevs Pin
Mark Donkers16-Jan-02 3:36
Mark Donkers16-Jan-02 3:36 
GeneralRe: waveOutGetNumDevs Pin
Bernhard16-Jan-02 4:05
Bernhard16-Jan-02 4:05 
GeneralRe: waveOutGetNumDevs Pin
Ernest Laurentin16-Jan-02 4:16
Ernest Laurentin16-Jan-02 4:16 
GeneralRe: waveOutGetNumDevs Pin
Mark Donkers16-Jan-02 5:04
Mark Donkers16-Jan-02 5:04 
GeneralCommunication between classes and some graphics Pin
16-Jan-02 3:30
suss16-Jan-02 3:30 
GeneralRe: Communication between classes and some graphics Pin
567890123416-Jan-02 4:16
567890123416-Jan-02 4:16 
Generalpassing an argument to an executable file Pin
JCY16-Jan-02 3:24
JCY16-Jan-02 3:24 
GeneralRe: passing an argument to an executable file Pin
Chris Losinger16-Jan-02 3:28
professionalChris Losinger16-Jan-02 3:28 
GeneralRe: passing an argument to an executable file Pin
JCY16-Jan-02 3:39
JCY16-Jan-02 3:39 
GeneralRe: passing an argument to an executable file Pin
Rick Crone16-Jan-02 4:39
Rick Crone16-Jan-02 4:39 
GeneralRe: passing an argument to an executable file Pin
JCY16-Jan-02 4:54
JCY16-Jan-02 4:54 
GeneralEnumerating Network Servers Pin
Giles16-Jan-02 2:59
Giles16-Jan-02 2:59 
GeneralRe: Enumerating Network Servers Pin
Carlos Antollini16-Jan-02 3:08
Carlos Antollini16-Jan-02 3:08 
GeneralCDialog printer resolution Pin
Jonnie White16-Jan-02 2:35
Jonnie White16-Jan-02 2:35 
GeneralRe: CDialog printer resolution Pin
567890123416-Jan-02 4:23
567890123416-Jan-02 4:23 
GeneralRe: CDialog printer resolution Pin
Jonnie White16-Jan-02 4:52
Jonnie White16-Jan-02 4:52 
Generalqsort and CArray Pin
Gavin Jerman16-Jan-02 2:28
Gavin Jerman16-Jan-02 2:28 
GeneralRe: qsort and CArray Pin
Giles16-Jan-02 3:11
Giles16-Jan-02 3:11 
GeneralRe: qsort and CArray Pin
Joaquín M López Muñoz16-Jan-02 3:44
Joaquín M López Muñoz16-Jan-02 3:44 
I know I should probably be using the STL, but I don't want to bring it into the app for this 'simple' sort.

You really should, there's nothing wrong with bringing STL to an app however small that app is. Note also that STL sort algorithm will work with your CFundDataPtrArrays, no need to switch to std::vectors.
Anyway, your problem with how you're using qsort is that you need an extra layer of indirection. Do not pass pointers to qsort, pass it pointers to pointers. Here's how:
void SortFundData(CFundDataPtrArray& arrayFundData)
{
if (arrayFundData.GetSize() > 0)
{
qsort((void*)&arrayFundData[0], //note extra '&'
(size_t)arrayFundData.GetSize(), sizeof(CFundData**), // note extra *
(QSORT_FUNC_T)CompareFundData);
}
}

int CompareFundData(const void* elem1, const void* elem2)
{
CFundData** pFD1 = (CFundData**)elem1;
CFundData** pFD2 = (CFundData**)elem2;

return (*pFD1)->m_sFundName.Compare((*pFD2)->m_sFundName);
}
Again, this would be greatly simplified by using STL sort, which is a generic soultion that will pay off in the long term.



Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
GeneralRe: qsort and CArray Pin
Gavin Jerman16-Jan-02 4:35
Gavin Jerman16-Jan-02 4:35 
GeneralRe: qsort and CArray Pin
Joaquín M López Muñoz16-Jan-02 6:08
Joaquín M López Muñoz16-Jan-02 6:08 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.