嗨 我在C++學習模板,所以我決定寫一個模板類的矩陣類。在Matrix.h文件我寫C++模板 - 矩陣類
#pragma once
#include "stdafx.h"
#include <vector>
using namespace std;
template<class T>
class Matrix
{
public:
Matrix();
~Matrix();
GetDataVector();
SetDataVector(vector<vector<T>> dataVector);
bool operator == (Matrix* matrix);
bool operator < (Matrix* matrix);
bool operator <= (Matrix* matrix);
bool operator > (Matrix* matrix);
bool operator >= (Matrix* matrix);
Matrix* operator + (Matrix* matrix);
Matrix* operator - (Matrix* matrix);
Matrix* operator * (Matrix* matrix);
private:
vector<vector<T>> datavector;
int columns,rows;
};
矩陣CPP視覺Stuio程序自動生成的代碼默認構造
#include "StdAfx.h"
#include "Matrix.h"
Matrix::Matrix()
{
}
Matrix::~Matrix()
{
}
但是如果我想編譯這個我得到一個錯誤
「矩陣':使用類模板 需要模板參數列表 錯誤在默認構造函數中的文件Matrix.cpp中 可能是什麼問題?
你想`布爾運算符==(常量矩陣&矩陣)const;`而不是`bool運算符==(矩陣*矩陣);`。另外,不需要析構函數,因爲std :: vector會自行清理。 – fredoverflow 2011-02-06 15:24:57
您還可以查看犰狳(http://arma.sourceforge.net/download.html)的源代碼。來源很清楚,圖書館很棒。順便說一句,它是唯一積極維護的像樣的C++線性代數庫。 – 2011-02-06 15:55:21