武汉大学C++讲义:类与对象深入解析

需积分: 5 1 下载量 50 浏览量 更新于2024-07-16 收藏 663KB PDF 举报
本篇讲义是武汉大学计算机学院为C++课程准备的UNIT 06 类与对象(二),由常军主讲。主要内容涵盖以下几个知识点: 1. **自引用指针this**: - `this` 是C++编译器为每个类成员函数自动创建的一个隐含指针,它在函数内部指向调用该函数的对象。 - 在对象调用成员函数时,`this` 指针被赋予对象的地址,允许成员函数通过隐含的方式访问和修改数据成员,通常不需要显式引用。 - 示例程序展示了如何在`A`类中定义指针函数`sp()`和通过对象指针`s`访问私有数据成员`i`。 2. **对象数组和对象指针**: - 讲义介绍了如何使用对象指针数组,如`A*p[2]`,其中`p[0]`存储对象`a1`的地址,`p[1]`存储动态创建的对象`a2`的地址。 - 通过对象指针可以调用对象的公共成员函数,如`p[0]->add()`和`a2->add()`。 3. **向函数传递对象**: - 成员函数可以通过`this`指针接收和处理传递的对象,例如`Is()`函数通过`->`操作符访问私有数据成员。 4. **静态成员**: - 静态成员不属于特定的对象实例,因此不能访问`this`指针。静态成员函数通常用于类的共享功能,而非对象操作。 5. **友元**: - 虽然没有详细提及,但友元是C++中的一个特性,允许某些非成员函数或类访问类的私有成员。这部分可能在后续章节中讨论。 6. **对象成员**: - 包括公有成员(如数据成员和成员函数)、私有成员(只能通过类的方法访问)以及保护成员(介于两者之间,仅在基类中可见)。 7. **前向引用声明和范例**: - 这部分可能涉及在头文件中对类进行声明但不提供完整实现的技术,以便在其他源文件中引用,这是一种代码组织策略。 总结起来,本讲义深入浅出地讲解了C++中的类与对象概念,重点放在了类成员函数中的`this`指针及其应用,对象数组的使用,以及静态成员和友元的概念。通过实际编程示例,帮助学生理解和掌握这些核心知识点。对于希望进一步学习C++编程和面向对象编程的学生来说,这是一个不可或缺的学习资料。