【问题标题】:more than one instance of overloaded function "DISPLAY" matches the argument list?多个重载函数“DISPLAY”实例与参数列表匹配?
【发布时间】:2021-10-11 18:21:22
【问题描述】:
void DISPLAY(user u[],int Tuser);

struct user
{
    queue<float> time ;
    queue<string> purpse;
}users[5];

int main()
{
//codes
    DISPLAY(users,Tuser);//here is the problem
    return 0;
}

void DISPLAY(user u[], int Tuser)
{
    for (int i = 0; i < Tuser; i++)
    {
        while (!(u[i].purpse.empty()))
        {
            cout << u[i].purpse.front()<<"\n";
            u[i].purpse.pop();
        }
        cout << "\n";
        
        while (!(u[i].time.empty()))
        {
            cout << u[i].time.front()<<"\n";
            u[i].time.pop();
        }
        cout << "\n";
    }   
}

它说这一行有错误:

DISPLAY(users,Tuser);

解决办法是什么?

Error (active) E0308 多个重载函数“DISPLAY”实例与参数列表匹配:

【问题讨论】:

  • 点击带有“重新定义”的错误行。去看看之前的定义。应该解释问题。
  • 请创建一个minimal reproducible example 并将错误(或者更好的是编译器输出)作为文本而不是图像发布。
  • 我会更关心非法使用类型 void 错误。我认为您将代码最小化太多而忽略了实际错误。您还应该查看“输出”选项卡中的错误。请记住,按文件顺序查看错误很重要,因为 1 个错误可能会导致许多其他错误。
  • 这是一个 IntelliSense “提示”,是您的问题中最不重要的。一旦你解决了其他实际问题,它就会消失。 (我建议您关闭 IntelliSense,直到您有足够的经验以合理的准确度从真实错误中分辨出误报。)
  • 不就是不能定义两次DISPLAY函数吗?

标签: c++ visual-c++ c++17


【解决方案1】:

试试这个

    #include<bits/stdc++.h>
using namespace std;
//void DISPLAY(user u[],int Tuser);

struct user
{
    queue<float> time ;
    queue<string> purpse;
}users[5];


void DISPLAY(user u[], int Tuser)
{
    for (int i = 0; i < Tuser; i++)
    {
        while (!(u[i].purpse.empty()))
        {
            cout << u[i].purpse.front()<<"\n";
            u[i].purpse.pop();
        }
        cout << "\n";

        while (!(u[i].time.empty()))
        {
            cout << u[i].time.front()<<"\n";
            u[i].time.pop();
        }
        cout << "\n";
    }

}


int main()
{
//codes
    int Tuser=0;
    DISPLAY(users,Tuser);//here is the problem
    return 0;
}

【讨论】:

  • 您可能需要解释您所做的更改以及更改的原因。此外,msvc / visual-c++ 仅适用于 gcc 第一行。
  • 你没有在主函数中定义'Tuser'......你的代码应该有正确的结构......你在结构声明之前声明了使用结构参数的函数......按照顺序....1.struct 2. Function 3. Main 函数
猜你喜欢
  • 2012-10-12
  • 1970-01-01
  • 1970-01-01
  • 2012-05-26
  • 1970-01-01
  • 2012-03-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多