c stl儲存物件還是指標

2021-09-18 07:28:08 字數 602 閱讀 3976

1,在stl的容器中既可以儲存物件,也可以儲存指標,該怎麼選擇。

元素如果是內建資料型別,那麼就存放資料本身。

元素如果是複雜型別,並且在使用容器的過程中需要容器的元素進行大量的拷貝操作的時候,就要考慮在容器中放入指標。

2,stl容器作為函式引數時,應該傳值還是傳引用

盡量傳引用。

3,定義stl 容器類的指標

需要記住的是stl中的容器都是模板類,也就說指定要儲存的型別之後,它其實是乙個自定義的型別,既然是乙個自定義的型別,當前可以定義該型別的指標了,一般使用new來生成自定義指標所指向的物件,最後記得delete即可。

如下:#include

#include

using namespace std;

int main()

}for (int i = 0; i<5; i++)

delete k;

vector*pvec;

pvec = new vector;

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

for (vector::iterator it = pvec->begin(); it != pvec->end(); it++)

C STL內建函式物件

4.3.1內建函式物件意義 概念 stl內建了一些函式物件 算術仿函式 關係仿函式 邏輯仿函式 這些仿函式所產生的物件,用法和一般函式完全相同 使用內建函式物件,需要引入標頭檔案 include 功能描述 實現四則運算 其中negate是一元運算,其他都是二元運算 template class t ...

C STL 之 內建函式物件

stl 內建了一些函式物件。分為 算數類函式物件,關係運算類函式物件,邏輯運算類仿函式。這些仿函式所產生的物件,用法和一般函式完全相同,當然我們還可以產生無名的臨時物件來履行函式功能。使用內建函式物件,需要引入標頭檔案 include。6 個算數類函式物件,除了 negate 是一元運算,其他都是二...

物件指標為NULL,為什麼還是可以呼叫成員函式

b要理解這個的話。成員函式其實可以認為是乙個普通的函式,比如 1 2 3 4 class a 在編譯器看來,大概就長這個樣子吧 1 void a func a this,int x 注意此時y是成員變數,編譯器會自動給它加上this 也就是 1 void a func a this,int x 此時...