返回值类型和函数名贴一起了
你的类里面根本没有定义或者声明 showstudent这个函数啊
#include<iostream>
#include<string>
using namespace std;
void showstudent(string ,int );
class student
{
public:
string m_name;
int m_id;
}; student s1;
void showstudent(string ,int )
{
cout<<s1.m_name<<" "<<s1.m_id<<endl;
}
int main()
{
s1.m_name="张三";
s1.m_id=1;
showstudent(s1.m_name,s1.m_id);
}
程序里的三个报错(要养成自己看简单报错的习惯)
C++ requires a type specifier for all declarations // C++ 需要为所有的声明指定类型 => void 与showstudent()函数名之前缺少分隔符
Use of undeclared identifier 's1' // 使用了未声明的s1 => showstudent() 不是student类的友元函数,也不是该类的成员函数,类内或形参也未定义s1变量
No member named 'showstudent' in student // student类内没有showstudent这样的成员 => student类内没有定义这样的成员函数或者成员变量