亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

c++中vector<int>和vector<int*>的用法及區(qū)別

 更新時(shí)間:2022年07月18日 11:16:30   作者:軍說網(wǎng)事  
這篇文章主要介紹了c++中vector<int>和vector<int*>的用法及區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

在使用STL容器(比如map、list、vector等)的時(shí)候,是用放一個(gè)對(duì)象還是放一個(gè)對(duì)象指針,即是用vector<int>還是vector<int*>,這里的vector可以換成其他的容器,int可以換成其他基本類型,也可以自定義的數(shù)據(jù)結(jié)構(gòu)或類。

首先,要說明的是,這兩種方式,怎么用都可以實(shí)現(xiàn)功能,把一組整型數(shù)放到容器里。先看看兩種方式在使用的時(shí)候的區(qū)別。

1.vector<int>

vector<int> vecTemp;
for (int i=0; i< 10; i++)
{
?? ?vecTemp.push_back(i);
}

這種方式不需要?jiǎng)討B(tài)new內(nèi)存,當(dāng)然也不用delete。

2.vector<int*>

vector<int*> vecTemp;
for (int i=0; i< 10; i++)
{
?? ?int* nTemp = new int;
?? ?nTemp = &i;
?? ?vecTemp.push_back(i);
}

這種方式采用new,當(dāng)然也要用delete:

std::vector<int*>::iterator Iter;
for(Iter=vecTemp.begin(); Iter!=vecTemp.end(); Iter++)
{
?? ?int* temp = *Iter;
?? ?
?? ?delete temp;
?? ?temp = NULL;
}

3.兩種用法的區(qū)別

1)vector<int>不需要?jiǎng)討B(tài)操作內(nèi)存,不用擔(dān)心內(nèi)存泄露等問題;vector<int*>要注意new和delete成對(duì)使用。

2)當(dāng)int改變成其他類型或結(jié)構(gòu)或類的時(shí)候,用vector<int*>這種方式比較方便,容器里放的內(nèi)容占用的內(nèi)存也相對(duì)要少一些,指針在用的時(shí)候,去申請(qǐng)空間,不用,那就是個(gè)占用4個(gè)字節(jié)的地址。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Qt?關(guān)于容器的遍歷迭代器的使用問題小結(jié)

    Qt?關(guān)于容器的遍歷迭代器的使用問題小結(jié)

    Qt是一個(gè)跨平臺(tái)的 C++ 開發(fā)庫(kù),主要用來開發(fā)圖形用戶界面程序,當(dāng)然也可以開發(fā)不帶界面的命令行程序,本文重點(diǎn)給大家介紹Qt?關(guān)于容器的遍歷迭代器的使用問題小結(jié),感興趣的朋友一起看看吧
    2022-03-03
  • 詳解如何使用VSCode和CMake構(gòu)建跨平臺(tái)的C/C++開發(fā)環(huán)境

    詳解如何使用VSCode和CMake構(gòu)建跨平臺(tái)的C/C++開發(fā)環(huán)境

    本文主要介紹了如何使用VSCode和CMake構(gòu)建跨平臺(tái)的C/C++開發(fā)環(huán)境,想進(jìn)行跨平臺(tái)開發(fā)的同學(xué)們,一定要看一下
    2021-06-06
  • 貪心算法的C語言實(shí)現(xiàn)與運(yùn)用詳解

    貪心算法的C語言實(shí)現(xiàn)與運(yùn)用詳解

    這篇文章主要介紹了貪心算法的C語言實(shí)現(xiàn)與運(yùn)用詳解,運(yùn)用么,就是文中所附的ACM練習(xí)題,哈哈:D需要的朋友可以參考下
    2015-08-08
  • 深入理解c++實(shí)現(xiàn)Qt信號(hào)和槽機(jī)制

    深入理解c++實(shí)現(xiàn)Qt信號(hào)和槽機(jī)制

    信號(hào)和槽機(jī)制是 Qt 的核心機(jī)制,可以讓編程人員將互不相關(guān)的對(duì)象綁定在一起,實(shí)現(xiàn)對(duì)象之間的通信,本文就來深入理解c++實(shí)現(xiàn)Qt信號(hào)和槽機(jī)制,感興趣的可以了解一下
    2023-08-08
  • C++鏈接器工作原理詳解

    C++鏈接器工作原理詳解

    當(dāng)文件見過編譯后就需要進(jìn)行一個(gè)鏈接的操作接下來我們就說說什么是鏈接,本文給大家介紹了C++鏈接器是如何工作的,文章通過代碼示例和圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2024-02-02
  • 深入解析最長(zhǎng)公共子串

    深入解析最長(zhǎng)公共子串

    本篇文章是對(duì)最長(zhǎng)公共子串進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C語言長(zhǎng)字符串的換行方法詳解

    C語言長(zhǎng)字符串的換行方法詳解

    在編寫C程序時(shí),如果想要打印某個(gè)字符串,而字符串的內(nèi)容比較多,這就涉及到對(duì)這個(gè)長(zhǎng)字符串進(jìn)行書寫換行,本片文章就帶你了解一下
    2021-09-09
  • C/C++中提高查找速度的小技巧

    C/C++中提高查找速度的小技巧

    這篇文章主要給大家介紹了C/C++中提高數(shù)組中查找某個(gè)元素或者字符串中查找某個(gè)字符效率的小技巧,提高速度對(duì)我們?nèi)粘i_發(fā)來說還是很有用的,文中給出了詳細(xì)的示例代碼,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-01-01
  • 全局變量與局部變量在內(nèi)存中的區(qū)別詳細(xì)解析

    全局變量與局部變量在內(nèi)存中的區(qū)別詳細(xì)解析

    以下是對(duì)全局變量與局部變量在內(nèi)存中的區(qū)別進(jìn)行了詳細(xì)的總結(jié)介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助
    2013-10-10
  • C語言lidar_align雷達(dá)里程計(jì)校準(zhǔn)功能詳解

    C語言lidar_align雷達(dá)里程計(jì)校準(zhǔn)功能詳解

    這篇文章主要為大家介紹了C語言lidar_align雷達(dá)里程計(jì)校準(zhǔn)功能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03

最新評(píng)論