如何创建库代码可以使用且用户可以设置的变量
How to create a variable that library code can use and a user can set?
1) 我想在我的库代码(在 Windows 和 Linux 上以共享库形式分发)在多个.cpp
文件中使用变量n_threads
。
2)我想让库用户来设置它。
如何在C++做这样的事情?
- 我尝试了带有
static
变量的全局文件 - 它导致每个.cpp
文件都有其副本; - 我试图将其保留在一个命名空间中,这导致变量已经在其他翻译单元中定义,因此库无法编译
- 我已经尝试了
external
(它适用于带有.so
的Linux并在Windows MSVC14上编译),这导致库由于未解析的外部而无法编译。
如何使多个库.cpp
文件中使用的全局变量可以从外部(从库用户代码)设置?
即使在 Windows 中,共享库也可以导出变量。但是,最好将变量保留为内部单例,并提供导出函数来设置它。
相关文章:
- 如何设置默认参数以防用户不输入另一个参数
- 错误:调用'strcmp'没有匹配函数(尝试设置显示用户信息功能)
- 如何为用户设置仅输入 4 位代码的限制?
- 在 C++ 中设置的用户定义数据类型
- 有没有办法根据用户参数设置函数指针?
- 如何打印其值和尺寸由用户设置的数组
- 如何将用户输入数组值移动到数组末尾并将其设置为 0
- 将 c++ 代码中的当前用户环境变量设置为对其他进程(如 cmds)可见
- 如何基于用户设置的初始变量设置一组常数值
- C++获取用户首选的编码或区域设置编码
- 使用 C 在 Linux 中设置用户的补充组 ID
- 如何创建库代码可以使用且用户可以设置的变量
- 具有C++设置错误的用户对象
- Win32 中是否有一条消息或通知来检测用户何时更改区域设置?
- 如何为Qwidget设置用户数据
- 如何使用C/C++将用户设置完全内部存储在exe中
- 单击按钮时,将当前位置/订单保存在QTabWidget中 - 用户设置
- 如何在跨平台应用程序中存储首选项(和用户设置)
- 以编程方式为所有用户设置注册表软件策略键
- QT与.net用户设置有什么相似之处,在使用上是否相似?