新微赢技术网
标题:
这里是什么用法,叫做什么术语啊?
[打印本页]
作者:
最ヅ后愛上你
时间:
2009-11-4 01:57
标题:
这里是什么用法,叫做什么术语啊?
#include<iostream.h>
class location {int x,y;
public:void init(int=0,int=0);
void value(int val){x=val;}
int value(){return x;}
};
void location::init(int a,int b){x=a;y=b;}
void main(){location A;
A.init();
A.value(6);
cout<<A.value()<<endl;
}
这个程序里出现了一个public:void init(int=0,int=0); (第三行)
这里的int=0,是属于什么用法啊,我怎么没有见过啊?谢谢回答!
作者:
︶ㄣ帅々︷`
时间:
2009-11-4 01:57
这不是C++中类中成员函数的定义吗,函数名为init,返回类型为 void
作者:
平淡♀芳
时间:
2009-11-4 01:57
int=0是给出了参数的默认值,这里省略了参数名
作者:
玉儿
时间:
2009-11-4 01:57
书上没有看见这么写的,看来得换一本书了
作者:
神①→沙加
时间:
2009-11-4 01:57
这是带默认实参的函数啊...
void init(int a,int b);//这个你认识吧...
void init(int a=0,int b=0);//这个带默认实参,你也应该见过吧...
void init(int,int);//这个省略参数名
void init(int=0,int=0);//这个带默认实参,,省略了参数名...
作者:
忘记∽所有
时间:
2009-11-4 01:57
真是奇怪!!这样也行!
我试验了一下,如果改成void init(int a=0, int b=0);也是行的
你改成别的,比如:
void init(int , int=0);
void init(int a, int b);
都不行!!所以,结论只有一个.
结论是,,如果你的函数形参全部有默认值的话,,调用的时候,可以省略.
可以 象A.init();这样调用.
作者:
缘分天空
时间:
2009-11-4 01:57
看看谭浩强老师写的那本c++,里面有讲到,这本书写的浅显 易懂
欢迎光临 新微赢技术网 (http://bbs.weiying.cn/)
Powered by Discuz! X3.2