我写一个COM,只在进程内运行。它为客户程序分配内存时可不可以直接用new而不是CoTaskMemAlloc?

解决方案 »

  1.   

    COM 分配程序(或 CoTaskMemAlloc / CoTaskMemFree):函数使用每个进程的默认堆。自动化程序使用“组件对象模型 (COM)”的分配程序,而申请的程序使用每个进程堆。C/C++ 运行时 (CRT) 分配程序:提() 和 f供了 mallocree() 以及 new 和 delete 操作符。如 Microsoft Visual Basic 和 Java 等语言也提供了新的操作符并使用垃圾收集来代替堆。CRT 创建自己的私有堆,驻留在 Win32 堆的顶部