point类中函数point (int a=0,int b=0) {x=a;y=b;} 是point类中函数point (int a=0,int b=0) {x=a;y=b;} 是缺省参数构造函数 1、它的意思是不是后面定义point p1;时,p1的参数省略了? 2、为什么会和函数point(){x=0;

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/12 06:40:26
point类中函数point (int a=0,int b=0) {x=a;y=b;} 是point类中函数point (int a=0,int b=0) {x=a;y=b;}     是缺省参数构造函数 1、它的意思是不是后面定义point p1;时,p1的参数省略了?   2、为什么会和函数point(){x=0;

point类中函数point (int a=0,int b=0) {x=a;y=b;} 是point类中函数point (int a=0,int b=0) {x=a;y=b;} 是缺省参数构造函数 1、它的意思是不是后面定义point p1;时,p1的参数省略了? 2、为什么会和函数point(){x=0;
point类中函数point (int a=0,int b=0) {x=a;y=b;} 是
point类中函数point (int a=0,int b=0) {x=a;y=b;} 是缺省参数构造函数 1、它的意思是不是后面定义point p1;时,p1的参数省略了? 2、为什么会和函数point(){x=0;y=0;}产生二义性? 3、 point p1(1,1)又是怎么回事呢?会替换原来的0么? 4、point (int a=0,int b) 和point (int a,int b=0) 是不是都是缺省参数构造函数? 5、point (int a,int b) 就不是了吧? 问题有点多,求指导.谢谢!

point类中函数point (int a=0,int b=0) {x=a;y=b;} 是point类中函数point (int a=0,int b=0) {x=a;y=b;} 是缺省参数构造函数 1、它的意思是不是后面定义point p1;时,p1的参数省略了? 2、为什么会和函数point(){x=0;
》1、它的意思是不是后面定义point p1;时,p1的参数省略了?
写了int a=0,int b=0;表示,创建point类的时候,如果不写对应的参数,就把0作为默认参数.例如:point p1就是point p1(0,0)
》2、为什么会和函数point(){x=0;y=0;}产生二义性?
一个是有参数,一个是无参数.C++认为是两个函数.
》3、 point p1(1,1)又是怎么回事呢?会替换原来的0么?
你指定了参数,就采用你的参数.如果没有指定参数,就采用函数声明时的默认参数(你这里是0)
》 4、point (int a=0,int b) 和point (int a,int b=0) 是不是都是缺省参数构造函数?
第二个是.第一个不是.设置缺省参数,必须保证此参数后面的参数都有默认参数.
你见过point p1(,5);这样的写法吗?:)
》5、point (int a,int b) 就不是了吧?
没有默认参数.(可以看成普通的构造函数)