在C编程中,这个冒号在struct中做了什么?
struct ABC:XYZ {int num;}
其中XYZ也是一个结构。这似乎不是一个位域。 “:”在这里意味着什么?
答案 0 :(得分:2)
代码:
struct ABC:XYZ {int num;}
表示“定义一个结构ABC
,它继承自XYZ
并且num
成员的类型为int
。具体来说,:
表示”继承自“
该代码相当于:
struct ABC : public XYZ {int num;}
对于struct
,默认继承可见性为public
,class
为private
。
答案 1 :(得分:2)
继承你通常写:
class Child : public Parent { ... };
你也可以写
class Child : Parent { ... };
但是对于私有继承的类,所以通常会在那里看到关键字public
。 struct
也是如此,除非未明确指定,否则它已经是public
。