首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

C++ vector 全域動態陣列宣告與使用正確姿勢

     編輯:程式設計綜合問答

常見錯誤

// 錯誤:缺少命名空間與模板參數
vector array; 
// 錯誤:全域變數未正確初始化

正確寫法

#include <vector>
std::vector<int> globalVec; // 全域宣告,指定元素類型

int main() {
    globalVec.resize(5); // 運行時調整大小
    globalVec[0] = 10;   // 賦值
    return 0;
}

關鍵點解析

  • std::vector<T> 必須指定模板類型參數 T
  • 全域物件在 main 前構造,預設為空向量
  • resize(n) 改變大小並預設初始化元素(int 為 0)
  • reserve(n) 僅預留容量,不改變 size

進階用法

// 靜態初始化 (C++11)
std::vector<int> vec = {1, 2, 3, 4, 5};

// 多維動態陣列
std::vector<std::vector<int>> matrix(10, std::vector<int>(20)); // 10x20

避免在頭文件定義全域非 const 物件(單一定義規則),建議單例模式或命名空間封裝。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved