vector實現(只能裝入string)

2022-08-30 17:45:11 字數 1520 閱讀 8004

1 #include2 #include

3 #include4 #include5

using

namespace

std;67

class

strvec //

預設建構函式

10 strvec(const strvec&); //

拷貝建構函式

11 strvec &operator=(const strvec&); //

賦值拷貝運算子

12 ~strvec();

1314

void push_back(const

string&);

1516 size_t size() const

19 size_t capacity()const

22string *begin() const

25string *end()const

2829

private:30

static allocatoralloc;

3132

void

chk_n_alloc()

36 pair alloc_n_copy(const

string*, const

string*); //

用於被copy控制成員呼叫

3738

void

free

();39

void reallocate(); //

獲得另一塊更大的記憶體(釋放原有記憶體)並拷貝已有元素 (實現的是標準庫vector的記憶體分配機制)

40string *element; //

陣列首位址

41string *first_free;

42string *cap;

4344

};45

4647

void strvec::push_back(const

string&s)

4852

53 pair strvec::alloc_n_copy(const

string *b, const

string *e)54;

57}5859

60void strvec::free

()6167}

6869

70 strvec::strvec(const strvec&s)

7177

78 strvec::~strvec()

7982

83 strvec& strvec::operator=(const strvec&rhs)

8491

92//

在乙個新的,更大的string陣列分配記憶體

93//

在記憶體空間的前一部分構造物件,儲存現有元素

94//

銷毀原記憶體中的元素,並釋放這塊記憶體

95void

strvec::reallocate()

96

str功能的實現

1.strcat 功能 把src所指字串新增到dest結尾處 覆蓋dest結尾處的 0 並新增 0 程式 char strcat char dest,const char src while src j 0 dest i 0 return addr int main 2.strchr 功能 查詢字串...

模擬實現str函式

字串是乙個重要的資料型別,但是c語言並沒有顯式的字串資料型別,因為字串以字元常量的形式儲存在字元陣列之中。接下來我將要模擬實現處理字串的庫函式 strlen,syrcpy,strcat,strstr,strcmp,memcpy。1 strlen返回乙個int型的資料,是乙個測試字串長度的函式。這是自...

str函式 只能把看到的記下來啦!

一.strtok 原型 char strtok char s,const char delim 功能 分解字串為一組字串。s為要分解的字串,delim為分隔符字串。說明 strtok 用來將字串分割成乙個個片段。引數s指向欲分割的字串,引數delim則為分割字串,當strtok 在引數s的字串中發現...