C++ 为什么';nt此输出向量的最大元素? #包括 使用名称空间std; int main() { int b; 向量={32,3,4,34,3254656543} b=d[*max_元素(d.begin(),d.end())]; cout

C++ 为什么';nt此输出向量的最大元素? #包括 使用名称空间std; int main() { int b; 向量={32,3,4,34,3254656543} b=d[*max_元素(d.begin(),d.end())]; cout,c++,c++11,C++,C++11,因为std::max_element()返回的是一个迭代器。要访问元素,可以通过*取消对它的引用,这是您要做的,但不是打印该最大值,而是使用它对向量进行索引 只需输出它:std::cout代码有可诊断的错误,所以不会编译,更不用说输出任何东西了。你是说vectord{32,3,4,34,3254656543}?。 #include <bits/stdc++.h> using namespace std; int main() { int b; vector<int>={3

因为
std::max_element()
返回的是一个迭代器。要访问元素,可以通过
*
取消对它的引用,这是您要做的,但不是打印该最大值,而是使用它对向量进行索引


只需输出它:
std::cout代码有可诊断的错误,所以不会编译,更不用说输出任何东西了。你是说
vectord{32,3,4,34,3254656543}
?。
#include <bits/stdc++.h>
using namespace std;
int main()
{
int b;
vector<int>={32,3,4,34,32,5465,6543}
b=d[*max_element(d.begin(),d.end())];

cout << b;
}