vector第二步修煉之道

2021-08-13 13:09:57 字數 2362 閱讀 4820

定義vector.h檔案

#pragma once

#include

using

namespace

std;

template

class

vector

else

_end *= 2;

delete_first;

_first = _newfirst;}}

e *_first; //儲存放入容器的元素

int _end; //_element陣列的總容量

int _last; //_element有效元素的個數

};//預設建構函式,所有成員都給預設的零值

template

vector

::vector(int initialsize=0)

:_last(0), _end(initialsize)

else

}//num:初始元素的個數,value表示初始元素的值

template

vector

::vector(int num,e value)

:_end(num),_last(num)

}//用[first, last)區間的元素初始化當前容器

template

vector

::vector(e *first, e *last)

}//析構函式

template

vector

::~vector()

}//拷貝建構函式

template

vector

::vector(const

vector &src)

}//賦值運算子的過載函式

template

void

vector

::operator=(const

vector &src)

delete_first;

_end = src._end;

_first = new e[_end];

_last = src._last;

for (int i = 0; i < _last; i++)

}//向容器的末尾新增新元素value,若增長記憶體,呼叫resize函式

template

void

vector

::push_back(const e &value)

_first[_last++] = value;

}//刪除容器末尾的元素

template

void

vector

::pop_back()

}// vector 元素的位置

template

e* vector

::getpos(int val)

}return null;

}//向指定位置pos插入新元素value,若增長記憶體,呼叫resize函式

template

void

vector

::insert(e *pos, const e &value)

if (full())

if (index < _last)

}_first[index] = value;

_last++;

}//刪除指定位置的元素

template

void

vector

::erase(e *pos)

if (!empty())

_first[_last] = e();

_last--;

}

}//列印容器有效元素值的函式

template

void

vector

::show()const

cout

<< endl;

}}//判斷容器是否空

template

bool

vector

::empty()const

else

}//判斷容器是否滿

template

bool

vector

::full()const

else

}

測試函式
#include

#include "vector.h"

using

namespace

std;

int main()

vec5.erase(vec5.getpos(7));

vec5.show();

return

0;}

diango專案第二步

django 模板 使用 django.http.httpresponse 來輸出 hello world!該方式將資料與檢視混合在一起,不符合 django 的 mvc 思想。django 的模板是乙個文字,用於分離文件的表現形式和內容。模板應用例項,在 helloworld 目錄底下建立 tem...

python學習第二步

函式的呼叫 以絕對值函式abs 為例,可以直接從python的官方 檢視文件,也可以從互動介面利用help abs 檢視。常用或不好記函式 持續更新 hex 函式 將乙個整數轉換為十六進製制表示的字串。函式的定義 定義乙個函式要使用def語句,函式返回值用return語句返回。ep def my a...

成為ITer的第二步

斷斷續續的補習,對於網管 系統管理的知識算是有了個大概認識。今天小結幾個要點,算是對以前的失誤及現在的更新認識吧。1 選擇乙個主攻方向,太重要了!it行業往細處做真的技術多,而且更新快,說實在的跟不上時代的節奏。不是我不行,而是沒入行,閉門造車 的惡果就是習得一些過時的技術,沒用。得專注,專注在乙個...