“:”在结构的声明中意味着什么

时间:2013-12-15 14:09:31

标签: c++

我无法理解代码的一部分“Point():x(0),y(0){},Point(int a,int b):x(a),y(b) {}” 即可。

特别是关于这个问题,“:”用于什么?

提前感谢!

 Definition for a point.
      struct Point {
          int x;
          int y;
          Point() : x(0), y(0) {}
          Point(int a, int b) : x(a), y(b) {}
      };

3 个答案:

答案 0 :(得分:1)

它用于开始初始化列表

在这个例子中,

将使用a和y与b进行初始化。

类或结构的 const 成员必须使用通过初始化列表初始化它

答案 1 :(得分:1)

Point() : x(0), y(0) {}< - 这是一个在(0,0)坐标处创建点的构造函数。 Point(int a, int b) : x(a), y(b) {}这是一个在(a,b)坐标处创建点的构造函数。其中ab由用户输入。

答案 2 :(得分:0)

它是类/结构成员的初始化列表的开始。你可以使用它来调用类成员的构造函数,就像你在那里一样。