繁体   English   中英

C ++中的结构和类

[英]Structs and Classes in C++

在c ++中,如果您创建这样的结构或类

struct foo {

}

您必须像在c中一样使用struct或class限定符来创建另一个限定符,如果不是,那是为什么呢? 什么时候适合在C ++中使用它

struct foo a;

谢谢 :-)

不,在C ++中实例化时不需要struct关键字。 顺便说一句,结构定义应以;结尾;

struct不是必需的。 在C ++中, structclass之间的唯一区别是,在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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM