c++ - 返回迭代器是 DLL 安全的吗?

标签 c++ dll vector

我指的是,如果该类来自具有自己的堆的 DLL,并且它有一个私有(private) vector ,那么使用将迭代器返回到该 vector 的公共(public)函数是否安全?

谢谢

最佳答案

是的。一个警告:使用 DLL 时,使用 C++ 运行时 DLL,而不是静态链接。

您在两种情况下使用静态链接:开发独立的 EXE(运行时 DLL 将是第一个也是唯一的 DLL)和开发没有 C++ 接口(interface)(即 C 接口(interface)或 COM 接口(interface))的可重用 DLL 时.这些情况都不适用于此处。您必须具有 C++ 接口(interface)才能返回迭代器。

通过 C++ 运行时的动态链接,只有一个运行时。

关于c++ - 返回迭代器是 DLL 安全的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4653846/

相关文章:

c++ - 加快链接速度/Linux 上的快速链接

c++ - 在 3d 棋盘中查找水量的提示

c++ - 3dsmax SDK c++ bonesdef.h

powershell - Powershell加载什么版本的dll文件?

c# - 卸载 AppDomain 后删除 dll 文件

C++ 检查 double 是否为整数在某些情况下不起作用

c# - 从正在运行的进程中获取 DLL 名称,可能吗?

vector - Julia .重新标记向量

c++ - 如何为 std::vector<std::vector<int>> 数据类型分配内存?

C++ iStream、If-Else 和 vector