91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

如何初始化c++的vector

c++
小樊
102
2024-09-16 16:27:47
欄目: 編程語言

在C++中,可以通過多種方式初始化std::vector

  1. 默認初始化:創建一個空的std::vector
#include<iostream>
#include<vector>

int main() {
    std::vector<int> vec;
    return 0;
}
  1. 指定大小:創建一個具有指定大小的std::vector,其元素將被默認初始化(對于整數類型為0,對于其他類型可能需要顯式初始化)。
#include<iostream>
#include<vector>

int main() {
    std::vector<int> vec(5); // 創建一個包含5個元素的vector,所有元素都初始化為0
    return 0;
}
  1. 指定大小和初始值:創建一個具有指定大小的std::vector,并用特定值初始化所有元素。
#include<iostream>
#include<vector>

int main() {
    std::vector<int> vec(5, 42); // 創建一個包含5個元素的vector,所有元素都初始化為42
    return 0;
}
  1. 從數組或其他容器初始化:使用已存在的數組或其他容器來初始化std::vector
#include<iostream>
#include<vector>
#include<array>

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    std::vector<int> vec(arr, arr + sizeof(arr) / sizeof(int));
    
    // 或者使用C++11的列表初始化
    std::vector<int> vec2 = {1, 2, 3, 4, 5};
    
    // 從其他容器(如std::array)初始化
    std::array<int, 5> arr2 = {1, 2, 3, 4, 5};
    std::vector<int> vec3(arr2.begin(), arr2.end());
    
    return 0;
}
  1. 使用C++11的emplace-based析構函數:這種方法允許你直接在std::vector中構造元素,而不是先創建臨時對象再拷貝到std::vector中。
#include<iostream>
#include<vector>

class MyClass {
public:
    MyClass(int x, int y) : x_(x), y_(y) {}
private:
    int x_;
    int y_;
};

int main() {
    std::vector<MyClass> vec;
    vec.emplace_back(1, 2);
    vec.emplace_back(3, 4);
    vec.emplace_back(5, 6);
    return 0;
}

以上就是在C++中初始化std::vector的幾種方法。

0
当涂县| 遂川县| 长春市| 饶平县| 阜新市| 淳化县| 中阳县| 礼泉县| 青神县| 浦东新区| 冀州市| 彭水| 古蔺县| 常德市| 稻城县| 来凤县| 吉木萨尔县| 神木县| 盐津县| 本溪| 密山市| 宁化县| 六枝特区| 凤阳县| 南京市| 周宁县| 辽宁省| 水城县| 正宁县| 和龙市| 桃园县| 阳城县| 渝中区| 思茅市| 济源市| 克山县| 凤台县| 行唐县| 汉中市| 普兰县| 建水县|