1

私は次のものを持っています:

#include <vector>
#include <complex>    

using namespace std;

vector<vector<complex> > matrix;

これは、複素数値を持つ2Dベクトルであることを意味します。構造体のサイズはコンパイル時にわからないので、ベクトルが妥当な選択だと思いますか?

Qtを使用しています。検索でマトリックスクラスが見つかりませんでした。使用すべき代替手段はありますか?2Dベクトルが良い選択であると仮定します。ビルドでこれが発生するのはなぜですか?

次のエラーが発生します。

error: type/value mismatch at argument 1 in template parameter list for 
       'template<class _Tp, class _Alloc> class std::vector'
error:   expected a type, got 'complex'

どうもありがとう。

4

1 に答える 1

3

complexはテンプレート化されたクラスであるため、特殊化する必要があります。私はあなたがどちらかが欲しいと思いますfloatまたはdouble

vector<vector<complex<double> > > matrix;
于 2012-12-08T20:42:34.753 に答える