gpt4 book ai didi

c++ - 在 C++ 中的多个 Dll 之间共享变量

转载 作者:行者123 更新时间:2023-11-28 08:00:58 25 4
gpt4 key购买 nike

我需要在 2 个 C++ Dll 之间共享一个变量 (1000s)。我该怎么做?

MyVariables.Dll 包含:

int a = 0;

ModifyMyVariables.Dll 包含:

extern int a;    
a++;
// do more stuff with a;

我应该在以下文件中写入什么?

myvariables.h
myvariables.cpp
ModifyMyVariables.h
ModifyMyVariables.cpp

最佳答案

您可以使用几种基 native 制在图像(EXE、DLL...)之间共享数据(使用 extern 不能共享数据 - 它只指示链接器而不指示加载器!)

  1. 使用导入/导出符号(使用标准的导入地址表/导出表)
  2. 使用static sections包含您的数据
  3. 使用dynamic sections包含您的数据

在您的情况下,我会使用这些部分。这很好用。当然,从两侧访问(写入)这些数据时,您必须注意同步。

关于c++ - 在 C++ 中的多个 Dll 之间共享变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11485523/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com