如何解决C / C ++ :. h / .hpp中的静态const与简单const
当与同事就在h / hpp文件中声明的数据使用 static 进行辩论时,我惊讶地发现:>
const float a[100] = {1};
如果头文件包含在不同的翻译单元中,则在h / hpp中声明的不会引发链接器错误。起初,我认为这是因为两者中均未使用 a 或由于某些链接程序优化,但是即使我使用 a 并构建了调试配置,仍然没有链接器错误。我不知道为什么,但是我确定在这种情况下省略static会引发链接器错误(我认为对标题中定义的数据使用 static 始终是一种好习惯,而甚至更好的做法,而不是首先不要在标头中定义大数据(例如数组),以避免内存浪费)。
我还记得这个错误吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。