在 Win32 API 中,DPA_Destroy 函数用于销毁动态指针数组(Dynamic Pointer Array,DPA),释放它占用的内存。以下是一个简单的示例:
#include <windows.h>
#include <commctrl.h>

int main() {
    // 初始化 Common Controls 库
    INITCOMMONCONTROLSEX icex;
    icex.dwSize = sizeof(INITCOMMONCONTROLSEX);
    icex.dwICC = ICC_LISTVIEW_CLASSES;
    InitCommonControlsEx(&icex);

    // 创建动态指针数组
    HDPA hDpa = DPA_Create(10);
    if (hDpa == NULL) {
        // 处理错误
        return 1;
    }

    // 向数组中添加指针
    int* pData1 = new int(42);
    DPA_AppendPtr(hDpa, pData1);

    // 向数组中添加另一个指针
    int* pData2 = new int(99);
    DPA_AppendPtr(hDpa, pData2);

    // 在不再需要时销毁动态指针数组
    DPA_Destroy(hDpa);

    return 0;
}

在这个例子中,DPA_Destroy 函数被用来销毁创建的动态指针数组 hDpa,并释放它所占用的内存。请注意,使用 DPA_Destroy 会同时销毁数组中的所有指针,并且在调用该函数后,不要再使用 hDpa。




转载请注明出处:http://www.zyzy.cn/article/detail/27253/Win32 API/Dpa_dsa.h/DPA_Destroy