警告:形式参数中的 `auto`

Warning: `auto` in formal parameter

我执行了以下程序-

#include <iostream>
#include <vector>
using namespace std;

void display(const vector<auto> &arr) {
    for (auto const &val: arr) 
        cout<<val<<" ";
    cout<<endl;
}

int main() {
    vector<int> a (6);
    display(a);

    vector<double> b (3);
    display(b);
    return 0;
}

它给出以下警告(没有任何错误)-

warning: use of ‘auto’ in parameter declaration only available with ‘-fconcepts’
5 | void display(const vector<auto> &arr) {                                                                                                                          
  |                           ^~~~          

为什么我会收到此警告以及此警告是关于什么的?

我应该在这里使用 auto 作为形式参数吗??

如果方法不对,有什么替代方法??

您真的想要一个模板:

template<typename T>
void display(const vector<T>& arr)
{
    for (auto const &val: arr) 
        cout<<val<<" ";
    cout<<endl;
}