gpt4 book ai didi

c++ - 如何使用静态记录器设置不同的日志位置

转载 作者:行者123 更新时间:2023-11-28 07:31:32 25 4
gpt4 key购买 nike

我有一个从另一个程序调用的 MFC C++ 库。本质上,我的库只是 OPOS 设备的一个大类。我的 OPOS 类有许多其他类调用静态记录器。记录器要么输出到文件,要么输出到控制台(取决于注册表设置)好吧,前几天有人制作了该类的 2 个实例,并将实例 1 的日志记录设置为 log1.log,将实例 2 的日志记录设置为 log2.log

因为我的日志记录是记录到 log1 的实例 1 的静态部分。当创建实例 2 时,实例 1 和实例 2 现在都写入 log2。我被问到是否可以修复。我开始思考它,但我想不出我该怎么做。我已经使用 C++ 大约一年了,所以我不是很精通它,只是想不出解决方案。有什么建议吗?

关于我所做尝试的一点是,我检查了 CurrentThread、CurrentProcess、传入的 DispatchID,它们始终相同。还有其他建议吗?

虽然我不喜欢如果我必须将我的日志记录从静态更改为非静态它会做的工作量的想法,但我想如果这是唯一的方法我会这样做。

最佳答案

我认为您在静态日志记录类中维护日志文件/控制台句柄,您需要使日志记录非静态或让日志打开返回一个句柄,调用例程随后将其传递给日志-编写方法。

关于c++ - 如何使用静态记录器设置不同的日志位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17598228/

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