Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/147.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ qt在使用Eigen时内存不足_C++_Qt_Out Of Memory_Eigen - Fatal编程技术网

C++ qt在使用Eigen时内存不足

C++ qt在使用Eigen时内存不足,c++,qt,out-of-memory,eigen,C++,Qt,Out Of Memory,Eigen,我创建了一个类: class MyMatrix { public: MyMatrix(); MyMatrix(const cv::Mat& m); MyMatrix operator -(const MyMatrix mm); MatrixXf* operator [] (int n ) const; int getChannel () ; MatrixXf* getChannelElem(int channel)const;

我创建了一个类:

class MyMatrix
{
public:
    MyMatrix();
    MyMatrix(const cv::Mat& m);
    MyMatrix operator -(const MyMatrix mm);
    MatrixXf* operator []  (int n ) const;

    int getChannel () ;
    MatrixXf* getChannelElem(int channel)const;
    cv::Mat convertToMat()const;
    ~MyMatrix();
private :
    MatrixXf* image[MAXCHANNEL];
    int channelOfImage;
};

但编译器报告内存不足,无法分配168729字节。系统为windows 7 64位,qt版本为qt 5.2.1,eigen版本为Eigen3.2.1。有人知道原因吗?谢谢

那么是什么耗尽了内存,编译器还是你的程序?有了这些信息,你的问题就很难回答了。编译器内存不足。我在没有这个类的情况下测试了程序,没有出现任何问题。我用这个类存储图像数据。图像的几个通道存储在MatrixXf*image[MAXCHANNEL]中。我已经注释了该类的所有实现,但编译器的内存仍然不足。我通过删除#include的头文件解决了这个问题。但我还是不知道原因。