我正在开发一个 C++ 项目,并且必须确保它可以在几个不同的编译器上编译。我正在使用 VC++ 并使用 Visual 编译器,它编译得很好。但是使用 LLVM,我收到了这个错误:
EXEC : error : Global non-const variable found '_ZN7complex1iE. This is not permitted.'
我不知道那是什么意思。我确实有一个创建复数数据类型的包含,所以我假设错误意味着在我的代码中的某个地方我引用了一个应该是 const 或非全局的复杂变量。在我的 main 函数中,我只创建了一个复杂的 var,它在 main func 本身中初始化,虽然我的意思是它是一个本地 var,所以,我不明白这个 var 是如何被视为全局的。如果它有任何用处,这里是一行:
complex *signal = new complex[100];
这是我正在使用的复数:
头文件:http
://www.librow.com/articles/article-10/appendix-b-1
实现:http ://www.librow.com/articles/第 10 条/附录-b-2
我是否走错了路,因为它是复数变量的问题?我用谷歌搜索了这个错误,我没有看到任何似乎匹配的东西。
任何想法,将不胜感激。
谢谢!