您的位置:首页 > 编程语言 > C语言/C++

关于C++默认形参定义的小问题

2015-03-14 09:34 369 查看
之前在些C++代码的时候没有注意,这两天在编程的时候经常有个小地方出错了,就是有关默认形参的语法。

下面先给出一个正确定义默认形参的代码:

/*test.h*/
void Print(int a = 10);
/*test.cpp*/
void Print(int a)
{
cout<<"测试代码"<<a<<endl;
}


想要使用默认形参必须是在声明函数的时候,在定义的时候如果声明默认形参系统会报错,以下给出错误的两种定义格式:

//错误代码
/*test.h*/
void Print(int a);
/*test.cpp*/
void Print(int a = 0) //这里在定义的时候定义默认形参,会出错
{
cout<<"测试代码2"<<a<<endl;
}


//错误代码
/*test.h*/
void Print(int a = 0);
/*test.cpp*/
void Printf(int a = 0)//上面声明的时候定义了默认形参,这里不能继续定义
{
cout<<"测试代码3"<<a<<endl;
}


本人自学C++没多久,哪里说错了希望大家能够提出来。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  编程 默认形参 C++