2011-02-18 71 views
1

结构可以和一个类的名称相同吗?有关C++中结构的问题

我可以在结构传递到周围的功能呢?

结构是一个轻量级的类?基本上没有这些功能。这是一个容器,容纳变量。我只是想知道如果我做了一个函数,我可以传递一个结构像通常传递任何其他对象吗?

回答

5

在C++中,structclass是有效相同。唯一的区别是默认情况下struct的成员为publicclass的成员默认为private

你使用类可以使用它们完全相同的方式。它们确实需要唯一的名称(在相同的名称空间内),因此不能让该结构使用与类相同的名称。

1

是的,你可以通过周围结构像任何其他变量。据我所知,我相信你不能将它们命名为一个班级,但即使可以,你也不应该这样做。

1

类和结构本质上是C++中的同义词;它们可以具有函数,构造函数,析构函数,运算符重载,继承,朋友等。唯一的区别是默认访问(分别为privatepublic)以及默认的继承类型。

所以不,他们不能有相同的名字!

是的,可以通过值,指针或引用一个结构/类对象成一个函数。

1

基本上struct和class是一样的。不同的是,结构默认成员公开访问

0

编号名称是唯一的标识符。你不能用与char相同的名字命名一个int,你能吗? (答案是否)

是的。

的Structs可以具备的功能,你可以将它们传递给函数,就像任何其他变量。