[英]Structs and Classes in C++
在c ++中,如果您创建这样的结构或类
struct foo {
}
您必须像在c中一样使用struct或class限定符来创建另一个限定符,如果不是,那是为什么呢? 什么时候适合在C ++中使用它
例
struct foo a;
谢谢 :-)
不,在C ++中实例化时不需要struct
关键字。 顺便说一句,结构定义应以;
结尾;
该struct
不是必需的。 在C ++中, struct
和class
之间的唯一区别是,在struct
,成员默认情况下是public
的,而在class
,成员默认情况下是private
的。
您可以,但不必。 而且最好不要,如果您不打算将代码与纯C混合使用,则这是正确的C ++样式。原因是C ++的设计人员认为C的标记概念不必要地复杂。 我倾向于同意。
在C语言中,可以通过使用typedef来避免这种情况。 在C ++中,该类型是自动创建的,因此无需明确声明它。
使其相似的C
语法:
typedef struct {
....
} foo;
然后,您可以通过说foo x;
来使用它foo x;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.