14得票2回答
使用spdlog库进行日志记录

我正在尝试在一个涉及 Windows 库的项目中使用spdlog。我创建了两个记录器,一个用于应用程序,另一个用于库本身。库的记录器是从应用程序中创建的,但当库想要添加消息时它会崩溃。 以下是一个简化的示例: 该库 libclass.h #ifndef LIBCLASS_H #defi...

14得票1回答
使用CMake添加仅包含头文件的依赖项

我有一个简单的项目,需要三个仅包含头文件的库才能编译:websocketpp、spdlog 和 nlohmann/json。项目结构如下:└── src ├── app │   ├── CMakeLists.txt │   ├── src │   └── tes...

10得票3回答
如何在代码中启用/禁用spdlog日志记录?

我正在创建应用程序中的c++库模块。为了进行日志记录,我使用spdlog。但是在生产环境中,我不希望我的库模块进行任何日志记录。实现开关的一种方法是通过在代码中添加#ifdef条件编译指令... #ifdef logging // call the logger here. #endif...

9得票3回答
扩展spdlog以支持自定义类型

有没有一种方法可以通过使用 `{}` 格式来扩展 `spdlog` 来支持自定义结构体作为项目? 因此,当我拥有一个自定义结构体时,可以将其格式化为日志信息。 struct p { int x; int y; int z; }; p my_p; 我想要做什么 ...

8得票3回答
CMake如何包含头文件库

我希望将spdlog库包含在我的一个项目中。它是一个仅有头文件的库。我正在使用cmake构建这个项目。目前我正在使用: include_directories('src/logger/spdlog/') 在CMake中包含库的方式: #include <spdlog/spdlog...

7得票1回答
来自一个库的函数与另一个库中的模板匹配。

我正在开发一个使用两个不同库的C++项目:spdlog 用于记录日志,mutils-serialization 用于将对象序列化为字节(以便通过网络发送)。这两个库都正确地使用了命名空间,但当我尝试编写一个同时使用它们的程序时,我的编译器(g++ 6.2)会给出看似荒谬的错误,似乎表明它正在尝...