如何在托管 C++/CLI 中对数组进行排序

How to order an array in managed C++/CLI

这是我的数组:

cli::array<String^>^ ar = gcnew cli::array<String^>{ "3", "1", "4", "5", "2" };

如何按降序排列 这个数组?

您可以通过传递一个比较函数来使用Array.Sort

using namespace System;

int Compare(String^ a, String^ b)
{
    return String::Compare(a, b, StringComparison::OrdinalIgnoreCase) * -1;
}

auto ar = gcnew cli::array<String^>{ "3", "1", "4", "5", "2" };
Array::Sort(ar, gcnew Comparison<String^>(Compare));

或者,您可以按升序排序 reverse 数组。

Array::Sort(ar, StringComparer::OrdinalIgnoreCase);
Array::Reverse(ar);