我正在开发一个用std=c++17and编译的 C++ 项目-Wall标志编译的 C++ 项目。我通常需要清除警告。
我尝试过包含xpm使用在线工具从 png 文件生成的图像,并收到以下警告:
warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
最糟糕的是,此消息一遍又一遍地重复,以至于我的控制台不再保留错误消息。
有什么方法可以在保留两个标志的同时抑制此警告吗?我可以对 xpm 文件进行任何修改吗?
您用来创建 XPM 文件的工具可能只考虑了 C 语言(或准标准 C++),其中缺少const并不是一个错误。然而,在 C++ 中,字符串文字是const并且语言强制执行的。你无法改变这件事,所以 achar*对它来说没有意义,应该是 a const char*。
最简单的解决方案是简单地编辑 xpm 文件并添加const.
| 归档时间: |
|
| 查看次数: |
748 次 |
| 最近记录: |