C++ 陣列::operator!=() 函式



C++ 的atd::array::operator!=() 函式用於比較兩個陣列物件是否不相等。此比較逐元素進行,如果兩個陣列中的任何元素不同,則該函式得出它們不相等的結論。如果陣列的大小或任何對應元素不同,則返回 true,否則返回 false。

語法

以下是 std::array::operator!=() 函式的語法。

bool operator!= ( const array<T,N>& lhs, const array<T,N>& rhs );

引數

  • lhs, rhs − 指示陣列容器。

返回值

如果陣列容器不相同,則返回 true,否則返回 false。

異常

此函式從不丟擲異常。

時間複雜度

線性,即 O(n)

示例 1

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

#include <iostream>
#include <array>
int main() {
   std::array < int, 3 > x = {11,22,3};
   std::array < int, 3 > y = {11,4,33};
   if (x != y) {
      std::cout << "Arrays are not equal." << std::endl;
   } else {
      std::cout << "Arrays are equal." << std::endl;
   }
   return 0;
}

輸出

以上程式碼的輸出如下:

Arrays are not equal.

示例 2

讓我們看下面的例子,我們將考慮兩個相同的陣列並使用 operator!=()。

#include <iostream>
#include <array>
int main() {
   std::array < char, 2 > a = {'x','y'};
   std::array < char, 2 > b = {'x','y'};
   if (a != b) {
      std::cout << "Arrays are not equal." << std::endl;
   } else {
      std::cout << "Arrays are equal." << std::endl;
   }
   return 0;
}

輸出

以上程式碼的輸出如下:

Arrays are equal.

示例 3

考慮以下示例,我們將對兩個不同大小的陣列應用 operator!=() 並觀察輸出。

#include <iostream>
#include <array>
int main() {
   std::array < int, 2 > x = {1,2};
   std::array < int, 3 > y = {2,3,4};
   if (x! == y) {
      std::cout << "Arrays are not equal." << std::endl;
   } else {
      std::cout << "Arrays are equal." << std::endl;
   }
   return 0;
}

輸出

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

main.cpp: In function 'int main()':
main.cpp:6:9: error: expected ')' before '!' token
    6 |    if (x! == y) {
      |       ~ ^
array.htm
廣告