国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

c++初始化vector的幾種方法

這篇具有很好參考價(jià)值的文章主要介紹了c++初始化vector的幾種方法。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

在C++中,vector是一種動(dòng)態(tài)數(shù)組,可以在運(yùn)行時(shí)自由添加、刪除元素。初始化vector是創(chuàng)建一個(gè)vector對(duì)象并為其分配內(nèi)存空間的過程。以下是C++中初始化vector的幾種方法:

  • 默認(rèn)構(gòu)造函數(shù)

使用默認(rèn)構(gòu)造函數(shù)創(chuàng)建一個(gè)空的vector,如下所示:

std::vector<int> vec; // 創(chuàng)建空vector

這種方式可用于創(chuàng)建一個(gè)需要稍后填充的vector。

  • 帶有初始元素?cái)?shù)量和值的構(gòu)造函數(shù)

使用帶有初始元素?cái)?shù)量和值的構(gòu)造函數(shù)創(chuàng)建vector,如下所示:

std::vector<int> vec(5, 0); // 創(chuàng)建一個(gè)包含5個(gè)int元素,每個(gè)元素都是0的vector

此方式將會(huì)創(chuàng)建包含5個(gè)值為0的int類型元素的vector。

  • 帶有初始元素?cái)?shù)量的構(gòu)造函數(shù)

使用帶有初始元素?cái)?shù)量的構(gòu)造函數(shù)創(chuàng)建vector,如下所示:

std::vector<int> vec(8); // 創(chuàng)建一個(gè)包含8個(gè)未初始化int元素的vector

此方式將會(huì)創(chuàng)建一個(gè)包含8個(gè)未初始化int類型元素的vector。

  • 帶有初始元素列表的構(gòu)造函數(shù)

使用帶有初始元素列表的構(gòu)造函數(shù)創(chuàng)建vector ( 在C++中,使用{}來初始化vector是一種方便的方法,也稱為列表初始化。),如下所示:

std::vector<int> vec = {1, 2, 3}; // 創(chuàng)建一個(gè)包含3個(gè)int元素,值分別為1、2、3的vector

此方式將會(huì)創(chuàng)建一個(gè)包含3個(gè)int類型元素,值分別為1、2、3的vector。

  • 復(fù)制或移動(dòng)構(gòu)造函數(shù)

使用復(fù)制或移動(dòng)構(gòu)造函數(shù)可以從一個(gè)已存在的vector創(chuàng)建新的vector。如下所示:

std::vector<int> vec1 = {1, 2, 3};
std::vector<int> vec2(vec1); // 創(chuàng)建一個(gè)與vec1的內(nèi)容相同的vector
std::vector<int> vec3(std::move(vec2)); // 使用移動(dòng)構(gòu)造函數(shù)將vec2的所有資源轉(zhuǎn)移給vec3

這種方式使用較少,但是在某些情況下可以使用它們來優(yōu)化代碼性能。

需要注意的是,在初始化vector時(shí)提供的初始值,需要與vector模板參數(shù)類型匹配或者能夠隱式轉(zhuǎn)換為vector模板參數(shù)類型。如果提供的初始值數(shù)量超過了vector預(yù)留的存儲(chǔ)空間,則vector會(huì)自動(dòng)分配更大的存儲(chǔ)空間以容納所有元素。文章來源地址http://www.zghlxwxcb.cn/news/detail-567100.html

到了這里,關(guān)于c++初始化vector的幾種方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • C語言中結(jié)構(gòu)體初始化并清零的方法有幾種?

    結(jié)構(gòu)體初始化清零方法 在C語言中,結(jié)構(gòu)體初始化并清零的方法有以下幾種: 手動(dòng)賦值為0:結(jié)構(gòu)體定義后在函數(shù)內(nèi)手動(dòng)將每個(gè)成員都賦值為0。例如: 使用memset()函數(shù):可以使用? memset() ?函數(shù)將結(jié)構(gòu)體的所有成員都設(shè)置為0。例如: C99標(biāo)準(zhǔn)的方式:C99標(biāo)準(zhǔn)新增了一個(gè)特性,可

    2024年02月17日
    瀏覽(27)
  • C++結(jié)構(gòu)體初始化方法

    在 C++ 里可以將結(jié)構(gòu)體看作沒有任何成員函數(shù)的對(duì)象,下面對(duì) C++ 結(jié)構(gòu)體的幾種初始化方法進(jìn)行總結(jié)。 如果只是想全部初始化為 0 可以按照如下方法 結(jié)構(gòu)體包含數(shù)組(數(shù)組在結(jié)構(gòu)體變量定義完就初始化為0) 直接賦值的方法雖然很直觀,但是如果需要初始化多個(gè)結(jié)構(gòu)體變量,

    2024年02月16日
    瀏覽(26)
  • C++筆記之初始化二維矩陣的方法

    C++筆記之初始化二維矩陣的方法

    —— 2023年5月20日 上海 code review!

    2024年02月04日
    瀏覽(23)
  • 分享用 vector的vector實(shí)現(xiàn)一個(gè)二維數(shù)組并初始化的逆置矩陣問題

    分享用 vector的vector實(shí)現(xiàn)一個(gè)二維數(shù)組并初始化的逆置矩陣問題

    目錄 題目名稱 867.轉(zhuǎn)置矩陣 1.題目 2.題目分析 3.題目知識(shí)點(diǎn) 3.1vector的構(gòu)造函數(shù) 3.2vector構(gòu)造二維數(shù)組 最后?? 推薦閱讀順序: 1.題目-2.題目分析-3.題目知識(shí)點(diǎn) 如果矩陣 matrix為 m 行 n列,則轉(zhuǎn)置后的矩陣 matrixT為 n行 m列,且對(duì)任意 0≤im和 0≤jn,都有 matrixT[j][i]=matrix[i][j] 創(chuàng)建一個(gè)

    2024年01月17日
    瀏覽(25)
  • 【SpringBoot系列】初始化機(jī)制幾種實(shí)現(xiàn)策略模式

    【SpringBoot系列】初始化機(jī)制幾種實(shí)現(xiàn)策略模式

    前言 Spring Boot是一個(gè)用于快速構(gòu)建基于Spring框架的應(yīng)用程序的開發(fā)框架。 它提供了許多便捷的功能和特性,使得開發(fā)者可以更加高效地開發(fā)和部署應(yīng)用程序。 其中,初始化策略是Spring Boot中一個(gè)重要的概念,它決定了應(yīng)用程序在啟動(dòng)時(shí)如何進(jìn)行初始化和配置。 本文將介紹S

    2024年02月07日
    瀏覽(33)
  • C++之初始化列表詳細(xì)剖析

    C++之初始化列表詳細(xì)剖析

    初始化列表:以一個(gè) 冒號(hào)開始 ,接著是一個(gè)以 逗號(hào)分隔的數(shù)據(jù)成員列表 ,每個(gè) \\\"成員變量\\\" 后面跟一個(gè) 放在括號(hào)中的初始值或表達(dá)式。 不知道大家有沒有想過這樣一個(gè)問題,成員函數(shù)明明可以在函數(shù)內(nèi)部對(duì)成員變量進(jìn)行賦值,那為什么還要搞出初始化列表這個(gè)東西呢?這個(gè)

    2024年02月06日
    瀏覽(28)
  • C++ | 談?wù)剺?gòu)造函數(shù)的初始化列表

    C++ | 談?wù)剺?gòu)造函數(shù)的初始化列表

    我們知道,對(duì)于下面這個(gè)類A的成員變量 _a1 和 _a2 屬于【聲明】,還沒有在內(nèi)存中為其開辟出一塊空間以供存放,真正開出空間則是在【定義】的時(shí)候,那何時(shí)定義呢?也就是使用這個(gè)類A去實(shí)例化出對(duì)象的時(shí)候 這個(gè)對(duì)象的空間被開出來了,難道里面的成員變量就一定開出空間

    2023年04月11日
    瀏覽(29)
  • 【C++奇遇記】構(gòu)造函數(shù) | 初始化列表

    【C++奇遇記】構(gòu)造函數(shù) | 初始化列表

    ?? 博客主頁:博主鏈接 ?? 本文由 M malloc 原創(chuàng),首發(fā)于 CSDN?? ?? 學(xué)習(xí)專欄推薦:LeetCode刷題集 數(shù)據(jù)庫專欄 初階數(shù)據(jù)結(jié)構(gòu) ?? 歡迎點(diǎn)贊 ?? 收藏 ?留言 ?? 如有錯(cuò)誤敬請(qǐng)指正! ?? 未來很長(zhǎng),值得我們?nèi)Ρ几案篮玫纳? ??本篇文章將講授C++的初始化列表相關(guān)的知識(shí)

    2024年02月12日
    瀏覽(22)
  • C++二維數(shù)組的初始化賦值及示例

    C++二維數(shù)組的初始化賦值及示例

    C++二維數(shù)組可以看作一個(gè)表格,橫向?yàn)楸砀竦男?,縱向?yàn)楸砀竦牧?,?shù)組定義時(shí)行號(hào)在前,列號(hào)在后。二維數(shù)組的定義格式為: 數(shù)據(jù)類型? 數(shù)組名[常量行表達(dá)式][常量列表達(dá)式] 。 二維數(shù)組的元素是按先行后列的順序存放的,例如,定義一個(gè)int a[3][2]的數(shù)組,其形式為: a[

    2024年02月12日
    瀏覽(17)
  • C++中包含初始化列表的構(gòu)造函數(shù)

    構(gòu)造函數(shù)對(duì)初始化成員變化很有用。另一種初始化成員的方式是使用初始化列表。對(duì)于程序中接受兩個(gè)參數(shù)的構(gòu)造函數(shù),其包含初始化列表的變種類似于下面這樣: 格式為: :成員變量1(參數(shù)1),成員變量2(參數(shù)2) 編譯器會(huì)將初始化列表一一轉(zhuǎn)換成代碼,并將這些代碼放

    2024年02月05日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包