【问题标题】:Do vectors of CComPtr still need CAdapt?CComPtr 的向量还需要 CAdapt 吗?
【发布时间】:2014-06-18 22:43:31
【问题描述】:

STL 有std::addressof,即使它重载operator &,它也会获取对象的真实地址。将CComPtrs 存储在std::vectors 中时,需要ATL::CAdapt 来解决此问题。

无论如何,我想知道,对于 C++11,std::vector 是否能够在不需要 CAdapt 的情况下直接处理包含 CComPtr 的问题?

更具体地说,我使用的是 VS 2013。如果没有 CAdapt,那会支持 vector 吗?

【问题讨论】:

  • AFAIK 不,在 VS2013 中他们不需要 vector,但是出于兼容性原因,您可能希望继续使用 CAdapt

标签: c++ c++11 stl atl


【解决方案1】:

引用自MSDN

这对于 C++ 标准库容器来说是最常用的 在支持 C++11 标准之前,但 C++11 标准库 容器自动处理已重载的类型 运算符&()。

这看起来就像您不再需要 CAdapt,因为 Visual Studio 2013 带有 C++11 STL。

【讨论】:

    猜你喜欢
    • 2014-05-13
    • 1970-01-01
    • 2021-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-27
    • 2021-01-12
    • 2017-07-04
    相关资源
    最近更新 更多