除了跨平台,交叉编译器的兼容性,Microsoft Visual C++(C++ Component Extensions)句柄与对象操作符(^)和C++ 11 std :: shared_ptr之间的显着区别是什么?Visual Studio的帽子操作符和C++ shared_ptr之间存在什么显着的内存和GC差异?
似乎都通过使用引用计数的支持自动垃圾收集和我会假设需要一些额外的内存来跟踪此信息。这种额外的内存开销是否显着,这两种实现之间有很大不同?
此外,在那里管理方式时无用单元收集无论是在MS C++组件扩展或C++ 11个环境中会出现,以防止在不适当的时间拖延?
MSDN文档: Handle to Object Operator (^) (C++ Component Extensions)
C++ 11 smart_ptr:std::shared_ptr
这东西都是正交的。没有办法给出简洁和正确的答案。 –
我不明白你使用正交。每个实现的内存开销应该是一个理解的组件,但我无法找到任何有关每个指针涉及多少或哪些内容的文档。另外,如果有控制GC在每个环境中发生的方法,那么控制程序的性能将会很有用。 – CodeWriter
你真的更喜欢将MS CLI和标准C++作为两种完全不同的语言;打算在两个完全不同的环境中运行。恕我直言...... – paulsm4