本节书摘来自异步社区出版社《C++面向对象高效编程(第2版)》一书中的第3章,第3.9节,作者: 【美】Kayshav Dattatri,更多章节内容可以访问云栖社区“异步社区”公众号查看。
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; // 对系统指针的引用 };``` 本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。 相关资源:写给大家看的面向对象编程书(第3版).[美]Matt Weisfeld(带详细书签).pdf