这个冒号在结构中做了什么?它不是一个位域

时间:2015-08-12 21:03:35

标签: c++ struct

在C编程中,这个冒号在struct中做了什么?

struct ABC:XYZ {int num;}

其中XYZ也是一个结构。这似乎不是一个位域。 “:”在这里意味着什么?

2 个答案:

答案 0 :(得分:2)

代码:

struct ABC:XYZ {int num;}

表示“定义一个结构ABC,它继承自XYZ并且num成员的类型为int。具体来说,:表示”继承自“

该代码相当于:

struct ABC : public XYZ {int num;}

对于struct,默认继承可见性为publicclassprivate

答案 1 :(得分:2)

继承你通常写:

class Child : public Parent { ... };

你也可以写

class Child : Parent { ... };

但是对于私有继承的类,所以通常会在那里看到关键字publicstruct也是如此,除非未明确指定,否则它已经是public