?? vector.h
字號:
#include<iostream.h>
template <class T> class vector
{
public:
vector(unsigned);
vector(unsigned,T);
vector(const vector<T> &);
virtual ~vector();
T & operator[](unsigned);
friend ostream& operator<<(ostream & out,vector<T>&);
unsigned length()const;
unsigned setSize(unsigned);
unsigned setSize(unsigned,T);
private:
unsigned size;
T* data;
};
template <class T> vector<T>::vector(unsigned num):size(num)
{
data=new T[size];
}
template <class T> vector<T>::vector(unsigned num,T v):size(num)
{
data=new T[size];
for(unsigned i=0;i<size;i++)
data[i]=v;
}
template <class T> vector<T>::vector(const vector<T> &v)
{
size=v.size;
data=new double[size];
for(int i=0;i<size;i++)
data[i]=v.data[i];
}
template <class T> T& vector<T>::operator[](unsigned u)
{
return data[u];
}
template <class T> vector<T>::~vector()
{
delete[] data;
}
template <class T> vector<T> & vector<T>::operator=(const vector<T> &v)
{
if(this==&v)
return *this;
delete[] data;
size=v.size;
data=new double[size];
for(int i=0;i<size;i++)
data[i]=v.data[i];
return *this;
}
template <class T> ostream & operator<<(ostream & out,vector <T> &v)
{
for(unsigned i=0;i<v.size;i++)
out<<"["<<i<<"]="<<v.data[i]<<";";
cout<<endl;
return out;
}
template <class T> unsigned vector<T>::length()const
{
return size;
}
template <class T> unsigned vector<T>::setSize(unsigned u)
{
if(u!=size)
{
T*np=new T[u];
unsigned n=u<=size?u:size;
}
return size;
}
template <class T> unsigned vector<T>::setSize(unsigned u,T t)
{
if(u!=size)
{
size=u;
delete[] data;
data=new T[size];
}
for(int i=0;i<n;i++)
data[i]=t;
return size;
}
template<class T>vector<T>operator*(const vector<T> &a,const vector<T> &b)
{
T c;
c=a*b;
return c;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -