GubE 2019-10-23 20:04 采纳率: 91.7%
浏览 601
已采纳

大一新生,构造函数里的形参赋值0是什么作用?

class Point {

public:

Point(int xx=0 , int yy=0) {   //这里的int xx=0和int yy=0替换为int xx,int yy是不是也没有影响。
    x = xx;
    y = yy;
}

private:

int x, y;

};

  • 写回答

2条回答 默认 最新

  • J4cks0n 2019-10-23 21:37
    关注

    就是代表默认参数,这样子的话 当你用时比如
    直接Point a;
    这样可以编译通过,a.x就是0,a.y就是0

    如果不赋默认参数,你直接Point a;
    是报错的

    需要Point a(1,2);这样构造

    也可以改成Point(int xx=0, int yy)
    这样Point a(3)也行,代表a.x=0,a.y=3

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?