私は C++ プロジェクトに取り組んでおり、いくつかの異なるコンパイラでコンパイルできることを確認する必要があります。私は VC++ を使用しており、Visual コンパイラを使用していますが、正常にコンパイルされます。しかし、LLVM を使用すると、次のエラーが発生します。
EXEC : error : Global non-const variable found '_ZN7complex1iE. This is not permitted.'
それが何を意味するのかわかりません。複素数データ型を作成するインクルードがあるので、エラーは、コードのどこかで、const または非グローバルのいずれかである必要がある複素変数を参照していることを意味していると想定しています。メイン関数では、複雑な var を 1 つだけ作成し、メイン関数自体で初期化します。これは、それがローカル var であることを意味していましたが、その 1 つの var がグローバルとしてどのように表示されているかわかりません。何らかの用途がある場合に備えて、次の1行を示します。
complex *signal = new complex[100];
そして、これが私が使用している複素数インクルードです:
ヘッダーファイル: http://www.librow.com/articles/article-10/appendix-b-1
実装: http://www.librow.com/articles/第10条/付録b-2
複素数変数の問題であるという間違った道を歩んでいますか? エラーをグーグルで検索しましたが、一致するように見えるものは何も表示されません。
どんなアイデアでも大歓迎です。
ありがとう!