定义类时需要注意以下几点。
① 类的定义必须以分号“;”结束,因为在类定义之后可以接一个对象定义列表。
② 在类中说明的任何成员不能使用extern、auto和register关键字进行修饰。
请看以下类的定义:
class YourClass
{
int id; // 正确。
} // 错误。
class MyClass
{
extern int id; // 错误。
} myObj; // 正确。
11.1.2 考点2:类成员的访问权限
本章节内容来自全国计算机等级考试用书《计算机等级考试考点分析、题解与模拟——二级C++语言》。从访问权限上来分,类的成员分为:公有的(public)、私有的(private)和保护的(protected)三类。公有的成员用public来说明,公有部分往往是一些操作(即成员函数),它提供了该类的接口功能,这部分成员可以在程序中直接访问。私有的成员用private来说明,私有部分通常是一些数据成员,这些成员是用来描述该类中的对象的属性,用户无法直接访问它们,只有本类的成员函数或经特殊说明的函数才可以访问它们。保护类型(protected)与私有类型相类似,其差别在于继承过程中对产生的新类的影响不同。
关键字public、private和protected统称为访问权限修饰符或访问控制修饰符。它们在类体内出现的先后顺序无关,并且允许多次出现。作为一种良好的编码风格,通常是把公有成员放在私有成员之前,以突出该类所提供的服务。此外,如果一个类成员没有访问权限修饰符修饰,该成员默认为私有成员。
例11.1.1 有如下类声明:[2005年9月 选择第22题]
class Foo { int bar; };
则Foo类的成员bar是( )。
A.公有数据成员 B.公有成员函数
C.私有数据成员 D.私有成员函数
答案:C
警钟长鸣:在默认情况下,类中的成员是私有的。
本章节内容来自希赛全国计算机等级考试用书《计算机等级考试考点分析、题解与模拟——二级C++语言》。(购书请见 :http://shop.csai.cn/itbook/itbookinfo.asp?lbbh=10032460)