3.9 类可以包含什么
C++面向对象高效编程(第2版)
在C++中,类可以包含:
基本类型的数据成员(如int
和char
)
另一个类的对象
指向另一个类(或相同类)对象的指针和对另一个类(或相同类)对象的引用
指向基本类型的指针和对基本类型的引用
静态数据成员
成员函数(静态和非静态)
指向另一个类的成员函数的指针
友元类和(或)友元函数声明
另一个类的声明(嵌套类,极少使用的特性)
在接下来的内容中,我们将介绍以上所有的声明(以及它们的优缺点)示例。下面的TPerson类中包含了所列的各种声明。然而,这些声明都不完整——仅是代码片段。读者可以先对比它们之间的不同。
// TPerson类
class TPerson {
public:
TPerson(const char theName[], const char theAddress[] = 0);
const char* GetName() const;
private:
char* _name; // 指向字符的指针
char* _address;
};
class TListNode; // 前置声明 – 稍后再补充完整
class TListIterator;
class TList {
public:
TList(); // 创建一个简单的链表
unsigned HowMany() const;
private:
TListNode* _head; // 链表的首节点
TListNode* _tail; // 链表的末节点
friend class TListIterator;
}
class TListNode {
// 其他声明
private:
TListNode* _next; // 指向下一节点的指针
TListNode* _previous; // 指向前一节点的指针
};
class TStopWatch {
public:
TStopWatch();
private:
static long& _systemClock; // 对系统指针的引用
};```
本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。
时间: 2024-09-20 20:53:55