欢迎使用CSDN-markdown编辑器

来源:互联网 发布:常见的网络攻击类型有 编辑:程序博客网 时间:2024/06/05 15:18

关于vs2015下c++  C2572错误说明
错误提示
错误 C2572 “Cstu::Cstu”: 重定义默认参数 : 参数 1 test01 d:\c_projects\test01\test01\cstu.cpp 7
//函数原型
Cstu::Cstu(float englishScore, float dataScore, char *resume,
char *birthday = "19950125", char *name = "donghang", char *sex = "male")

//函数定义
Cstu::Cstu(float englishScore, float dataScore, char *resume,
char *birthday = "19950125", char *name = "donghang", char *sex = "male")
{
printf("Cstu constructor(2) is running\n");
strcpy(Name, name);
strcpy(Sex, sex);
strcpy(Birthday, birthday);
EnglishScore = englishScore;
DataScore = dataScore;
if (resume == NULL)
Resume = NULL;
else
{
Resume = new char[strlen(resume) + 1];
strcpy(Resume, resume);
}
}

出现此错误的原因是函数定义和函数声明都是用了默认参数,删除函数声明或函数定义任意一个默认参数即可
默认参数只能出现一次

0 0