当我的 C++ 跨平台(Windows、Linux、Mac)OpenGL 应用程序无法初始化时,我想显示一条错误消息,让用户知道出了什么问题。
到目前为止我的想法:
- 将错误写入 std::cerr
- 问题:不从 Linux 运行时,Shell 不显示在 Linux 上
- 问题:控制台始终显示在 Windows 上,即使不需要(如果编译为控制台应用程序)
- 使用 GUI 库
- 问题:矫枉过正,因为其他所有内容都将使用 OpenGL 显示。我使用GLFW获取窗口/上下文。
- 特定于平台的实现和#ifdef
- 问题:我不想弄乱原生 API 并且可能不得不在以后扩展支持
你会如何解决这个问题?