关于c++不同模块引用同一依赖项的不同版本

如模块A是自己写的程序,模块B是第三方的Dll,而A和B均引用了第三方库模块C(另一个DLL),但版本不一样且无法兼容。此时将哪一个版本的模块C引入至运行路径,均会导致程序无法正常运行。

DLL地狱问题,C++ two libraries depend on same lib but different versions?

最简单的解决办法是让模块A和模块B均基于同一版本的模块C,但实践中有难度

一种可能的办法(未验证):设法延迟模块B的加载时机,在其加载前将模块A的运行路径从系统路径中剔除,并添加模块B的路径

相关推荐
爱吃喵的鲤鱼9 分钟前
linux进程的状态之环境变量
linux·运维·服务器·开发语言·c++
7年老菜鸡37 分钟前
策略模式(C++)三分钟读懂
c++·qt·策略模式
Ni-Guvara1 小时前
函数对象笔记
c++·算法
似霰1 小时前
安卓智能指针sp、wp、RefBase浅析
android·c++·binder
芊寻(嵌入式)1 小时前
C转C++学习笔记--基础知识摘录总结
开发语言·c++·笔记·学习
獨枭1 小时前
C++ 项目中使用 .dll 和 .def 文件的操作指南
c++
霁月风1 小时前
设计模式——观察者模式
c++·观察者模式·设计模式
橘色的喵1 小时前
C++编程:避免因编译优化引发的多线程死锁问题
c++·多线程·memory·死锁·内存屏障·内存栅栏·memory barrier
何曾参静谧2 小时前
「C/C++」C/C++ 之 变量作用域详解
c语言·开发语言·c++
AI街潜水的八角2 小时前
基于C++的决策树C4.5机器学习算法(不调包)
c++·算法·决策树·机器学习