C++ Array::fill() 函式



C++ 的std::array::fill()函式用於為陣列的所有元素賦值特定值。此函式接受單個引數,即您想要填充陣列的值,並將其應用於整個陣列。

此函式對於將陣列的所有元素初始化或重置為相同的值特別有用。

語法

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

void fill (const value_type& val);

引數

  • val − 指示要填充陣列的值。

返回值

此函式不返回任何值。

異常

時間複雜度

線性,即 O(n)

示例 1

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

#include <iostream>
#include <array>
using namespace std;
int main(void) {
   int i;
   array < int, 5 > arr;
   for (i = 0; i < 5; ++i)
      arr[i] = i + 1;
   cout << "Original array\n";
   for (i = 0; i < 5; ++i)
      cout << arr[i] << " ";
   cout << endl;
   arr.fill(10);
   cout << "Modified array\n";
   for (i = 0; i < 5; ++i)
      cout << arr[i] << " ";
   cout << endl;
   return 0;
}

輸出

以上程式碼的輸出如下:

Original array
1 2 3 4 5 
Modified array
10 10 10 10 10 

示例 2

考慮以下示例,我們將對字元陣列使用 fill()。

#include <iostream>
#include <array>
using namespace std;
int main() {
   array < char, 4 > MyArray {'p','r','a','s'};
   cout << "MyArray contains = ";
   for (int i = 0; i < MyArray.size(); i++)
      cout << MyArray[i] << " ";
   MyArray.fill('N');
   cout << "\nAfter fill() Myarray = ";
   for (int i = 0; i < MyArray.size(); i++)
      cout << MyArray[i] << " ";
   return 0;
}

輸出

以下是以上程式碼的輸出:

MyArray contains = p r a s 
After fill() Myarray = N N N N 

示例 3

讓我們來看下面的示例,我們將考慮字串陣列並應用 fill() 函式。

#include <iostream>
#include <array>
using namespace std;
int main() {
   array < string, 2 > MyArray {"Tutorials","point"};
   cout << "MyArray contains = ";
   for (int i = 0; i < MyArray.size(); i++)
      cout << MyArray[i] << " ";
   MyArray.fill("LearningPlatform");
   cout << "\nAfter fill() Myarray = ";
   for (int i = 0; i < MyArray.size(); i++)
      cout << MyArray[i] << " ";
   return 0;
}

輸出

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

MyArray contains = Tutorials point 
After fill() Myarray = LearningPlatform LearningPlatform 
array.htm
廣告