类和结构 (仅限 C + +)
C++ 类是 C 语言结构的扩展。 由于结构与类之间的唯一区别在于,缺省情况下,结构成员具有公共访问权,而缺省情况下,类成员具有专用访问权,因此您可以使用关键字 class 或 struct 来定义等效类。
例如,在以下代码片段中,类 X 等同于结构 Y:
class X {
// private by default
int a;
public:
// public member function
int f() { return a = 5; };
};
struct Y {
// public by default
int f() { return a = 5; };
private:
// private data member
int a;
};
如果定义结构,然后使用关键字 class声明该结构的对象,那么缺省情况下该对象的成员仍为公共成员。 在以下示例中,即使已使用使用类键 class的详细类型说明符声明了 obj_X , main() 也可以访问 obj_X 的成员:
#include <iostream>
using namespace std;
struct X {
int a;
int b;
};
class X obj_X;
int main() {
obj_X.a = 0;
obj_X.b = 1;
cout << "Here are a and b: " << obj_X.a << " " << obj_X.b << endl;
}
以下是以上示例的输出:
Here are a and b: 0 1相关信息