C++ cli 直接在泛型列表中查找max 我有一个通用的C++ CLI列表,它是用整数填充的。我想找到最大值。通常,列表按升序排序。这样我就可以拿最后一件了。或者我可以对列表进行排序,然后选择最后一项,但有没有办法避免这种情况,只需执行->Max()之类的操作 System::Collections::Generic::List^Testlist=gcnew System::Collections::Generic::List(); 测试列表->添加(1); 测试列表->添加(2); 测试列表->添加(3); 测试列表->添加(4); int max=Testlist[Testlist->Count-1]//太不确定了…不用排序,我能找到max吗?

C++ cli 直接在泛型列表中查找max 我有一个通用的C++ CLI列表,它是用整数填充的。我想找到最大值。通常,列表按升序排序。这样我就可以拿最后一件了。或者我可以对列表进行排序,然后选择最后一项,但有没有办法避免这种情况,只需执行->Max()之类的操作 System::Collections::Generic::List^Testlist=gcnew System::Collections::Generic::List(); 测试列表->添加(1); 测试列表->添加(2); 测试列表->添加(3); 测试列表->添加(4); int max=Testlist[Testlist->Count-1]//太不确定了…不用排序,我能找到max吗?,c++-cli,C++ Cli,调用Linq方法以查找IEnumerable的值 using namespace System::Linq; List<Int32>^ list = ...; Int32 max = Enumerable::Max(list); 使用名称空间系统::Linq; 列表^List=。。。; Int32 max=可枚举::max(列表); C++/CLI不支持奇特的Linq查询语法,也不支持扩展方法,但所有扩展方法都只是静态方法,您可以直接调用它。(在C#中,我们可以使用扩展方法编写

调用Linq方法以查找
IEnumerable
的值

using namespace System::Linq;

List<Int32>^ list = ...;
Int32 max = Enumerable::Max(list);
使用名称空间系统::Linq;
列表^List=。。。;
Int32 max=可枚举::max(列表);

C++/CLI不支持奇特的Linq查询语法,也不支持扩展方法,但所有扩展方法都只是静态方法,您可以直接调用它。(在C#中,我们可以使用扩展方法编写
list.Max()

这是缺少的链接。2注释:此方法要求列表至少包含一个项目。另外:这是否存在性能问题?我可能在想象,但应用程序启动速度慢了10分之几秒。System.Linq命名空间位于System.Core程序集中。我怀疑这是导致加载该程序集的第一件事情。
using namespace System::Linq;

List<Int32>^ list = ...;
Int32 max = Enumerable::Max(list);