
为什么含有参数的默认构造函数和,构造函数参数表不能一起写在类定义中
#include<iostream.h>classStudent{public:Student(intn=0,floats=0);Student::Student(int...
#include<iostream.h>
class Student
{
public:
Student(int n=0,float s=0);
Student::Student(int n,float s):num(n),score(s){} //**********A
void change (int n,float s)
{num=n;score=s;}
void display()
{cout<<num<<" "<<score<<endl;
}
void fun(Student &);
public:
mutable int num;
mutable float score;
};
void Student::fun(Student &a)
{
a.display();
a.change(101,80.5);
a.display();
}
int main()
{
Student stud(101,78.5);
Student sss;
sss.fun(stud);
return 0;
}
为什么A处不能写在哪里,但是在类外定义却可以? 展开
class Student
{
public:
Student(int n=0,float s=0);
Student::Student(int n,float s):num(n),score(s){} //**********A
void change (int n,float s)
{num=n;score=s;}
void display()
{cout<<num<<" "<<score<<endl;
}
void fun(Student &);
public:
mutable int num;
mutable float score;
};
void Student::fun(Student &a)
{
a.display();
a.change(101,80.5);
a.display();
}
int main()
{
Student stud(101,78.5);
Student sss;
sss.fun(stud);
return 0;
}
为什么A处不能写在哪里,但是在类外定义却可以? 展开
1个回答
展开全部
这是语法规则,这没有什么为什么,记住即可。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询