以下の内容はhttps://blog.systemjp.net/entry/2018/09/15/231348より取得しました。


MFCのCArray を qsort する

CArray の GetData メソッドで中身がまるまるもらえて、しかも中身書き換えてOKなのです。

struct StructHoge
{
    int number;
};

...

CArray <StructHoge, StructHoge> arrayHoge;

...

// ソート関数
int compareHoge(void* context, const void* a1, const void* a2)
{
    StructHoge* p1 = (StructHoge*)a1;
    StructHoge* p2 = (StructHoge*)a2;

    if (p1->number != p2->number)
    {
        return p1->number - p2->number;
    }

    return 0;
}

...

// ソート
StructHoge* pHoge = arrayHoge.GetData();
qsort_s((LPVOID)pHoge, arrayHoge.GetCount(), sizeof(StructHoge), compareHoge, NULL);



以上の内容はhttps://blog.systemjp.net/entry/2018/09/15/231348より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14