下例中定義了乙個向量類,並對向量定義了一系列操作:
檔案結構:
; //定義兩種模式,一種為直角座標,一種為極座標,狀態成員
private:
double x;
double y; //直角座標系的橫縱座標
double distance;
double angle; //極座標的角度及距離
mode mode; //
void setx();
void sety();
void setdis();
void setangle();
public:
vector();
vector(double n1, double n2, mode mode = rect);
~vector();
double xval() const
double yval() const
double distanceval() const
double angleval() const
void setrect(); // set mode to rect
void setpolar(); // set mode to polar
vector operator+(const vector & v); //reload +
vector operator-(const vector & v);
vector operator*(const double n);
friend vector operator*(double n, vector & v);
friend std::ostream & operator<
};#endif // vector_h_included
vector.cpp**:
#include #include #include "vector.h"
using namespace std;
void vector::setx() //set the value of x
void vector::sety()
void vector::setdis() //set the value of distance
void vector::setangle()
vector::vector() //預設建構函式
vector::vector(double n1, double n2, mode form) //建構函式
else if(form == polar)
else
}vector::~vector() //析構函式
void vector::setrect() // set mode to rect
void vector::setpolar() // set mode to polar
vector vector::operator+(const vector & v) //reload +
vector vector::operator-(const vector & v) //reload +
vector vector::operator*(const double n)
vector operator*(double n, vector & v)
std::ostream & operator<
main.cpp**:
#include #include "vector.h"
using namespace std;
int main()
C 實現矩陣類和向量類
c 期末作業內容,寫完之後覺得過於臃腫,又重新搞了個新的。新的當作業交,舊的拿來給同學參考。問題描述 請仿照複數類,設計乙個矩陣類,設計矩陣類的構成元素 1.編寫建構函式完成初始化 2.編寫成員函式,讀入乙個矩陣,輸出乙個矩陣 3.編寫成員函式,計算兩個矩陣相加 相減 點乘 4.編寫成員函式,利用運...
定義向量類
定義向量類 class vector vector 使用兩個頂點拉初始化乙個向量 vector vertex o,vertex d 獲取向量的角度 double angle vertex tovertex double radian double value sin y length double ...
向量模板類
templaterank vector insert t const e,rank r 注意 元素搬遷的順序不能顛倒,否則會因元素被覆蓋而造成資料丟失。向量結構的插入較之列表結構,複雜度就集中在元素搬遷上,線性正比於字尾的長度。考慮最壞情況,依次從首部插入,元素移動個數成幾何級數由n遞減至1。故總體...