C++ 陣列::size() 函式



C++ 的std::array::size()函式用於返回陣列容器中元素的數量。大小在編譯時已知,使陣列更有效率。此函式對於在無需手動跟蹤大小的情況下檢索陣列中元素的確切數量很有用。

語法

以下是 std::array::size() 函式的語法。

constexpr size_type size() noexcept;

引數

它不接受任何引數。

返回值

它返回陣列中元素的數量。

異常

此函式從不丟擲異常。

時間複雜度

常數,即 O(1)

示例 1

在以下示例中,我們將考慮 size() 函式的基本用法。

#include <iostream>
#include <array>
int main() {
   std::array < int, 5 > arr = {1,3,5,7,9};
   std::cout << "Size of array : " << arr.size() << std::endl;
   return 0;
}

輸出

以上程式碼的輸出如下:

Size of array : 5

示例 2

考慮以下示例,我們將根據索引修改陣列。

#include <iostream>
#include <array>
int main() {
   std::array < int, 4 > array = {0};
   for (size_t a = 0; a < array.size(); ++a) {
      array[a] = a * 2;
   }
   for (size_t x = 0; x < array.size(); ++x) {
      std::cout << "array[" << x << "] = " << array[x] << std::endl;
   }
   return 0;
}

輸出

以上程式碼的輸出如下:

array[0] = 0
array[1] = 2
array[2] = 4
array[3] = 6

示例 3

讓我們看下面的例子,我們將比較兩個陣列。

#include <iostream>
#include <array>
int main() {
   std::array < int, 4 > x = {1,2,3,4};
   std::array < int, 2 > y = {2,4};
   if (x.size() < y.size()) {
      std::cout << "x is smaller than y" << std::endl;
   } else {
      std::cout << "x is greater than y" << std::endl;
   }
   return 0;
}

輸出

如果我們執行以上程式碼,它將生成以下輸出:

x is greater than y
array.htm
廣告