阅读量:0
在 C++ 中,要比较两个常量数组是否相等,你可以使用 std::equal
函数
#include<iostream> #include<algorithm> // for std::equal template<typename T, size_t N> bool compareArrays(const T (&arr1)[N], const T (&arr2)[N]) { return std::equal(arr1, arr1 + N, arr2); } int main() { const int arr1[] = {1, 2, 3, 4, 5}; const int arr2[] = {1, 2, 3, 4, 5}; const int arr3[] = {1, 2, 3, 7, 5}; if (compareArrays(arr1, arr2)) { std::cout << "arr1 and arr2 are equal."<< std::endl; } else { std::cout << "arr1 and arr2 are not equal."<< std::endl; } if (compareArrays(arr1, arr3)) { std::cout << "arr1 and arr3 are equal."<< std::endl; } else { std::cout << "arr1 and arr3 are not equal."<< std::endl; } return 0; }
这个示例中的 compareArrays
函数接受两个大小相同的常量数组,并使用 std::equal
来比较它们。std::equal
会逐个元素地比较两个数组,如果所有元素都相等,则返回 true
,否则返回 false
。
注意:在使用此方法时,请确保两个数组的大小相同。如果数组大小不同,编译器将无法推断出数组的大小,从而导致编译错误。