【问题标题】:Allocate memory in Windows [duplicate]在 Windows 中分配内存 [重复]
【发布时间】:2012-10-14 02:44:55
【问题描述】:

可能重复:
malloc() vs. HeapAlloc()

我知道我们可以在 C 中使用 malloc/free 来分配/释放堆内存,并在 C++ 中使用 new/delete 来做类似的事情。

至于Windows,我偶尔看到有人用HeapAlloc等API来分配内存,这和C/C++对应的有什么区别?

在堆上分配wchar_t 缓冲区并将用作某些Windows API 的输入的最佳方法是什么?

【问题讨论】:

  • 如果非要问,请不要使用HeapAlloc。您不是该功能的受众。
  • 最好的方法很可能是std::wstringstd::vector<wchar_t>

标签: c++ c windows memory


【解决方案1】:

malloc/new 都是使用 HeapAlloc 实现的,所以实际差别很小。当然存在实现差异; malloc 将在失败时返回 null,new 将抛出等。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-08
    • 2011-06-23
    • 2015-11-17
    • 1970-01-01
    • 2012-12-23
    • 2017-02-20
    • 1970-01-01
    相关资源
    最近更新 更多